aaronspring / pymistral

🚀 effective use of python with xarray and dask on mistral
2 stars 0 forks source link

reproduce xskillscore #13

Closed aaronspring closed 5 years ago

aaronspring commented 5 years ago

Da ist irgendwie ein Problem mit cdo, cdo-python bei continuous integration. @seb-1 Kann man cdo in einem conda env installieren? cdo-python ja, aber ich glaub das Problem liegt an der basis cdo.

seb-1 commented 5 years ago

Kann man in conda installieren, funktioniert aber nicht besonders gut habe ich heute gemerkt. Zum Beispiel ist die conda-Version nicht mit netcdf support kompiliert. Ich habe lokal auch schon auf eine andere cdo-Installation verlinkt. cdo können wir also aus der Liste nehmen.

Worauf wird bei continuous integration getestet? Irgendeine Idee, was genau das Problem ist?

aaronspring commented 5 years ago

Die .travis.yml Datei die ich erstellt habe erstellt ne conda env mit ci/req.yml und dann guckt sie nochmal via pip ob packages installiert sind. Hab auf trial and error versucht rauszufinden was genau failt. Irgendwie cdo. Aber Lokal funktioniert’s weil ich da ja cdo in der base habe.

Kannst du mir conda cdo hier rein Posten bitte?

aaronspring commented 5 years ago

https://travis-ci.com/aaronspring/pymistral/builds/100922153

aaronspring commented 5 years ago

Das hier meinst du oder? @seb-1 https://code.mpimet.mpg.de/projects/cdo/wiki/Anaconda

aaronspring commented 5 years ago

py.test
============================= test session starts ==============================
platform linux -- Python 3.6.3, pytest-3.3.0, py-1.5.2, pluggy-0.6.0
rootdir: /home/travis/build/aaronspring/pymistral, inifile: setup.cfg
collected 0 items / 1 errors                                                   
==================================== ERRORS ====================================
________________ ERROR collecting pymistral/tests/test_setup.py ________________
ImportError while importing test module '/home/travis/build/aaronspring/pymistral/pymistral/tests/test_setup.py'.
Hint: make sure your test modules/packages have valid Python names.
Traceback:
pymistral/__init__.py:13: in <module>
    from . import setup
pymistral/setup.py:3: in <module>
    import cdo
E   ModuleNotFoundError: No module named 'cdo'
!!!!!!!!!!!!!!!!!!! Interrupted: 1 errors during collection !!!!!!!!!!!!!!!!!!!!
=========================== 1 error in 0.13 seconds ============================
The command "py.test" exited with 2.
seb-1 commented 5 years ago

Was genau meinst Du mit conda cdo posten? Das package kommt von hier: https://anaconda.org/conda-forge/cdo

Wenn travis bei import cdo den Fehler hat, liegt es dann nicht eher am python-cdo modul? Könntest Du in travis ein 'conda list' einbauen, damit man sieht was alles installiert wurde? Vielleicht ist python-cdo nicht da, vielleicht kann python cdo nicht das cdo binary finden, ... Außerdem könntest Du vielleicht ein 'which -a cdo' einbauen um zu sehen ob cdo binaries vorhanden sind. Das ist leider alles schwer nachvollziehbar da ich sowohl lokal als auch auf mistral immer ein cdo binary verfügbar habe und nicht testen kann, ob import cdo auch nur mit python-cdo funktioniert.

aaronspring commented 5 years ago

Cdo scheint installiert. Kannst du die builds sehen? https://travis-ci.com/aaronspring/pymistral/builds/100966791

aaronspring commented 5 years ago

Hier können wir abgucken https://github.com/Try2Code/cdo-bindings/blob/master/.travis-py3.6.yml

seb-1 commented 5 years ago

Sieht in build #83 (und #88) ja eigentlich richtig aus: cdo und python-cdo sind da.

seb-1 commented 5 years ago

Hier können wir abgucken https://github.com/Try2Code/cdo-bindings/blob/master/.travis-py3.6.yml

Das entspricht doch im Prinzip unserer .yml Datei.

aaronspring commented 5 years ago

problem gefunden:

$ python --version
Python 3.6.6 :: Anaconda, Inc.

$ pip list | grep cdo
cdo               1.5.1  
$ py.test
============================= test session starts ==============================
platform linux -- Python 3.6.3, pytest-3.3.0, py-1.5.2, pluggy-0.6.0
aaronspring commented 5 years ago

pytest ueber conda installieren loest das problem