SECOORA / skill_score

Prototypes for the SECOORA skill score
MIT License
7 stars 1 forks source link

`conda-requrement.txt` file for wakari #97

Closed ocefpaf closed 9 years ago

ocefpaf commented 10 years ago

@rsignell-usgs as promised here is the conda-requrement.txt that runs all of system-test using my binstar channel:

https://binstar.org/ocefpaf/

The channel was created from a https://github.com/ioos/conda-recipes fork, all the modifications are already in a PR to the main repository.

# Comment this if installing on Wakari.
# ipython-notebook

# Just until I figure out how to solve the circular dependency.  (rdflib <-> SPARQLWrapper)
# pip rdflib

iris
pyoos
folium
oceans
geojson
cfchecker  # Optional.

# echo '#!/usr/bin/env sh' > cfchecker
# echo "cfchecks -s `pwd`/etc/cf-standard-name-table.xml -a \
# `pwd`/etc/area-type-table.xml -u $PREFIX/share/udunits/udunits2.xml \
# -v auto \$1" >> cfchecker
# cp cfchecker $PREFIX/bin/cfchecker
# chmod a+x $PREFIX/bin/cfchecker

# It is used in just one notebook (and more important, it is not necessary!).
# http://blog.olgabotvinnik.com/blog/2014/10/06/no-longer-actively-developing-prettyplotlib
# prettyplotlib
ocefpaf commented 10 years ago

Just for the record in case someone needs the a list that installs all the packages present at conda-recipes.

airsea
boost
cfchecker
compliance-checker
flopy
folium
gensim
geojson
ipython
iris
jsanimation
liblas
mplleaflet
mysql-python
oceans
octant
prettyplotlib
pymc
pyoos
rasterio
sparqlwrapper
tappy
thredds_crawler
ulmo
ocefpaf commented 10 years ago

And finally, to close the issue, these are the packages that will be installed with the conda-requirements.txt.

conda create -n env_name --file conda-requirements.txt
source activate env_name
conda list -e
# This file may be used to create an environment using:
# $ conda create --name <env> --file <this file>
# platform: linux-64
beautifulsoup4=4.3.2=py27_0
biggus=0.7.0=np18py27_0
cairo=1.12.2=2
cartopy=0.11.1=np18py27_0
cdat-lite=5.2.1=np18py27_1
cfchecker=2.0.5=np18py27_1
ctd=0.2.1=np18py27_0
curl=7.30.0=0
dateutil=2.1=py27_2
fiona=1.1.4=np18py27_0
folium=0.1.2_dev_5417cc9=np18py27_0
freetype=2.4.10=0
gdal=1.10.1=np18py27_2
geojson=1.0.7=py27_0
geos=3.3.3=0
gsw=3.0.3=np18py27_0
hdf5=1.8.9=1
iris=1.7.2=np18py27_0
jinja2=2.7.3=py27_1
jpeg=8d=0
lcms=1.19=0
libnetcdf=4.2.1.1=1
libpng=1.5.13=1
libxml2=2.9.0=0
libxslt=1.1.28=0
lxml=3.4.0=py27_0
markupsafe=0.23=py27_0
matplotlib=1.4.0=np18py27_0
mock=1.0.1=py27_0
netcdf4=1.1.1=np18py27_0
nose=1.3.4=py27_0
numpy=1.8.2=py27_0
oceans=0.2.1=np18py27_0
openpyxl=1.8.5=py27_0
openssl=1.0.1h=1
owslib=0.8.7=py27_0
paegan=1.1.1=np18py27_0
pandas=0.14.1=np18py27_0
pil=1.1.7=py27_1
pixman=0.26.2=0
proj4=4.8.0=0
py=1.4.25=py27_0
py2cairo=1.10.0=py27_1
pyepsg=0.2.0=py27_0
pyke=1.1.1=py27_0
pyoos=0.6.2=np18py27_2
pyparsing=2.0.1=py27_0
pyqt=4.10.4=py27_0
pyshp=1.2.1=py27_0
pytest=2.6.3=py27_0
python=2.7.8=1
python-dateutil=2.2=py27_0
pytz=2014.7=py27_0
qt=4.8.5=0
readline=6.2=2
requests=2.4.3=py27_0
scipy=0.14.0=np18py27_0
seawater=3.3.2=np18py27_0
setuptools=5.8=py27_0
shapely=1.4.1=py27_0
sip=4.15.5=py27_0
six=1.8.0=py27_0
sqlite=3.8.4.1=0
system=5.8=1
tk=8.5.15=0
udunits=2.2.17=0
vincent=0.4.4=py27_0
zlib=1.2.7=0
rsignell-usgs commented 10 years ago

@ocefpaf , I'm a bit confused. The first simple requirements.txt with just iris, pyoos, oceans and geojson. What was that the environment for?

rsignell-usgs commented 10 years ago

When I tried to install from your channel into my existing environment on Wakari Enterprise, I got a glib error. I then tried to create a new environment, and when I tried to run a notebook in that environment, I got a "ipython not installed" error.

ocefpaf commented 10 years ago

My bad for mixing e-mails messages and github issues. But here are some extra information that should be together with this issue:

  1. Do not install packages from my channel in wakari! My Linux distro has a modern GLIB that will cause the incompatibility you experienced*.
  2. My package list does not install ipython and we should never overwrite ipython on wakari. I had bad experiences with the notebook interface when changing the default ipython. One must use conda create -n $ENV_NAME --clone=/opt/wakari/anaconda to get the "system" ipython into the environment. (I did not add that into the file because of 1. That file is a working in progress until we solve 3.)
  3. To use --clone=/opt/wakari/anaconda together with a custom binstar channel we must make the binaries on the channel compatible with wakari. The best way to achieve that, in my opinion, is to build the packages inside wakari.

Sadly 3 is not possible! We cannot install conda-build inside an environment, nor we have access to root. I believe that the easiest way to get everything working is to build the binaries inside conda. Conda official packages are built on centos 6 distro, we could try to use a virtual machine with a similar configuration, but I think that is too much. It is probably easier to ask them to install conda-build by default and let us build our packages there.

@ocefpaf , I'm a bit confused. The first simple requirements.txt with just iris, pyoos, oceans and geojson. What was that the environment for?

Glad you asked! Last night I went down the networkx rabbit hole to create a file with the minimum requirements that would install all the dependencies we need:

http://nbviewer.ipython.org/gist/ocefpaf/1b20846a5b066b0a0ab1

(I if figure out how to create directions in the Graph I can get the answer in one plot.)

The second "requirements " is the list of the installed packages using the simple one thanks to the dependency chain.

*PS: IMHO the binstar packaging naming is wrong:

linux-64/ctd-0.2.1-np18py27_0.tar.bz2

should be:

linux-64-GLIBCXX_3.4.19/ctd-0.2.1-build0-np1.8.2py2.7.8_0.tar.bz2

and we should get meaningful error messages when trying to installed it on a different configuration.

ocefpaf commented 9 years ago

Option 3 is now available and I am slowly build all conda packages using binstar build.