Action #2196
Feature #1490: Build binary conda packages for Gammalib and ctools
Validate GammaLib installation through conda
Status: | Closed | Start date: | 09/27/2017 | |
---|---|---|---|---|
Priority: | Normal | Due date: | 10/04/2017 | |
Assigned To: | Brau-Nogué Sylvie | % Done: | 100% | |
Category: | - | |||
Target version: | 1.5.0 | |||
Tags: | PACKAGING | |||
Duration: | 8 |
Description
à partir des recipes préparées par K. Kosack, voir https://github.com/cta-observatory/cta-conda-recipes/tree/master/extern
Recurrence
No recurrence.
History
#1 Updated by Brau-Nogué Sylvie about 7 years ago
- Status changed from New to In Progress
- % Done changed from 0 to 10
Petit test rapide à partir du dépôt https://anaconda.org/cta-observatory/gammalib
- Installation de conda sur masOS ; (package standard)
- export PATH=/Applications/anaconda2/bin:$PATH
- unset GAMMALIB
- conda install -c cta-observatory ctools
→ çà marche pas parce qu’il ne trouve pas gammalib - conda install -c cta-observatory gammalib
→ çà marche pas parce qu’il ne trouve pas cfitsio - conda install -c conda-forge cfitsio
- conda install -c cta-observatory gammalib
- python
import gammalib → çà marche pas car il manque libreadline
- conda install -c conda-forge readline
- python
import gammalib
gammalib.test() ← OK
#2 Updated by Brau-Nogué Sylvie about 7 years ago
- Tags set to PACKAGING
- % Done changed from 10 to 70
- install conda/anaconda depuis https://store.continuum.io/cshop/anaconda/
- → package : Anaconda2-5.0.0-MacOSX-x86_64.pkg
- anaconda, conda installés sur répertoire $HOME/anaconda2
- l’installation a modifié le fichier .bash_profile en rajouta $HOME/anaconda2/bin dans le PATH
- unset GAMMALIB
- unset CTOOLS
- conda install -c conda-forge cfitsio
- conda install -c conda-forge readline
- conda update conda
- conda update anaconda
- conda update --all -c conda-forge
- conda install -c cta-observatory gammalib ( → https://anaconda.org/cta-observatory/gammalib v 1.4.2)
- conda install -c cta-observatory ctools ( → https://anaconda.org/cta-observatory/ctools v 1.4.2)
$ python -c 'import gammalib; gammalib.test()' **************************** * Python interface testing * **************************** Test GLog: ....................................... ok Test GApplication: ...... ok Test GApplicationPars: .. ok Test GFits class: ...... ok Test GFitsImage class: . ok Test GFitsTable class: . ok Test GFitsTableCol classes: ....................... ok Test GVector: ......................................... ok Test GMatrix: ................ ok Test GMatrixSparse: ................ ok Test GMatrixSymmetric: .......... ok Test GModels: ... ok Test GFft: .. ok Test GEnergy class: ................. ok Test GEnergies class: .... ok Test GTime class: ............... ok Optimizer module dummy test: . ok Test sky map methods: ............... ok Test sky map operators: .......................... ok Test HEALPix map: ................................................................................................. ok Test AIT projection map: ................................................... ok Test AZP projection map: ................................................... ok Test CAR projection map: ................................................... ok Test MER projection map: ................................................... ok Test MOL projection map: ................................................... ok Test SIN projection map: ................................................... ok Test STG projection map: ................................................... ok Test TAN projection map: ................................................... ok Test FK5 to Galactic coordinate conversion: .. ok Test GNodeArray: ..................... ok Test GUrlFile: ... ok Test GUrlString: ... ok Test GFilename: ......... ok Test GCsv: ................... ok Test module dummy test: . ok XML module dummy test: . ok Test GPha: ... ok Test GArf: ... ok Test GRmf: ..... ok Test GVOClient: . ok MWL dummy test: . ok Test CTA effective area classes: ................. ok Test CTA PSF classes: ......................... ok Test CTA energy dispersion classes: ......... ok Test CTA response classes: . ok Test CTA On/Off analysis: ......... ok LAT dummy test: . ok COMPTEL dummy test: . ok
$ python -c 'import ctools; ctools.test()' Traceback (most recent call last): File "<string>", line 1, in <module> File "/Users/sbn/anaconda2/lib/python2.7/site-packages/ctools/tools.py", line 2190, in test test_python_ctools.test(installed=True) File "/Users/sbn/anaconda2/lib/python2.7/site-packages/ctools/tests/test_python_ctools.py", line 99, in test os.system('cp -r %s/syspfiles/*.par pfiles/' % (os.environ['CTOOLS'])) File "/Users/sbn/anaconda2/lib/python2.7/UserDict.py", line 40, in __getitem__ raise KeyError(key) KeyError: 'CTOOLS'
$ export CTOOLS=/Users/sbn/anaconda2
$ python -c 'import ctools; ctools.test()' *********************** * ctools unit testing * *********************** Test ctobssim on command line: .FE NOK Test ctobssim from Python: ..E NOK Test ctselect on command line: ......... ok Test ctselect from Python: ....................E NOK Test ctbin on command line: .......... ok Test ctbin from Python: .................................................... ok Test ctlike on command line: .FE NOK Test ctlike from Python: ....E NOK Test cttsmap on command line: .FE NOK Test cttsmap from Python: .....E NOK Test ctmodel on command line: .FE NOK Test ctmodel from Python: ....E NOK Test ctskymap on command line: ........ ok Test ctskymap from Python: ...................E NOK Test ctexpcube on command line: .FE NOK Test ctexpcube from Python: ..E NOK Test ctpsfcube on command line: .FE NOK Test ctpsfcube from Python: ..E NOK Test ctedispcube on command line: .FE NOK Test ctedispcube from Python: ...E NOK Test ctbkgcube on command line: .FE NOK Test ctbkgcube from Python: ...E NOK Test ctmapcube on command line: ........ ok Test ctmapcube from Python: .................... ok Test ctcubemask on command line: ....... ok Test ctcubemask from Python: ............. ok Test ctbutterfly on command line: .FE NOK Test ctbutterfly from Python: E NOK Test ctulimit on command line: .F... NOK Test ctulimit from Python: ...E NOK Test cterror on command line: .FE NOK Test cterror from Python: ....E NOK Test unbinned pipeline with FITS file saving: E NOK Test unbinned in-memory pipeline: E NOK
#3 Updated by Brau-Nogué Sylvie about 7 years ago
- Checklist changed from [ ] Installer conda sur Mac + 1 VM Centos, [ ] Installer ctools v 1.3 to [ ] Installer conda sur Mac + 1 VM Centos, [ ] Installer ctools v 1.3, [ ] Tester installation package gammalib/ctools préparée par K. Kosack
- % Done changed from 70 to 0
#4 Updated by Brau-Nogué Sylvie about 7 years ago
- Checklist changed from [ ] Tester installation package gammalib/ctools préparée par K. Kosack to [x] Tester installation package gammalib/ctools préparée par K. Kosack
#5 Updated by Brau-Nogué Sylvie about 7 years ago
- Checklist changed from [ ] Installer conda sur Mac + 1 VM Centos, [ ] Installer ctools v 1.3, [x] Tester installation package gammalib/ctools préparée par K. Kosack to [x] Installer conda sur Mac + 1 VM Centos, [x] Installer ctools v 1.4.2, [x] Tester installation package gammalib/ctools préparée par K. Kosack
- % Done changed from 30 to 100
Etape suivante : partir from scratch sur CentOS avec Python v2.7.10 avec gammalib/ctools fournis par K. Kosack (voir Feature #1490)
- même séquence que pour MacOS
Problème pour la commande conda install -c cta-observatory gammalib
$ python --version Python 2.7.11 :: Anaconda custom (64-bit) $ conda install -c cta-observatory gammalib Fetching package metadata ............. Solving package specifications: . UnsatisfiableError: The following specifications were found to be in conflict: - gammalib -> python 3.6* - python 2.7* Use "conda info <package>" to see the dependencies for each package.
En effet, à la question : $ conda search -c cta-observatory gammalib
Fetching package metadata .............
gammalib 1.3.0 py36_1 cta-observatory
Donc, installation d’une nouvelle version de Python, et activation de l’environnement py36
$conda create -n py36 python=3.6 anaconda $ source activate py36 (py36) $ python --version Python 3.6.2 :: Anaconda, Inc.
- les paquets gammalib et ctools sont installés dans $HOME/anaconda2/envs/py36/
← parce que je n’ai pas cherché comment les installer ailleurs, c’est la configuration par défaut
TESTS pour gammalib ← semble OK
(py36)$ python -c 'import gammalib; gammalib.test()' **************************** * Python interface testing * **************************** Test GLog: ....................................... ok Test GApplication: ...... ok Test GApplicationPars: .. ok Test GFits class: ...... ok Test GFitsImage class: ........................... ok Test GFitsTable class: . ok Test GFitsTableCol classes: ....................... ok Test GVector: ......................................... ok Test GMatrix: ................ ok Test GMatrixSparse: ................ ok Test GMatrixSymmetric: .......... ok Test GModels: ... ok Test GFft: .. ok Test GEnergy class: ................. ok Test GEnergies class: .... ok Test GTime class: ............... ok Optimizer module dummy test: . ok Test sky map methods: ............... ok Test sky map friend methods: ...... ok Test sky map operators: .......................... ok Test HEALPix map: ................................................................................................. ok Test AIT projection map: ................................................... ok Test AZP projection map: ................................................... ok Test CAR projection map: ................................................... ok Test GLS projection map: ................................................... ok Test MER projection map: ................................................... ok Test MOL projection map: ................................................... ok Test SFL projection map: ................................................... ok Test SIN projection map: ................................................... ok Test STG projection map: ................................................... ok Test TAN projection map: ................................................... ok Test FK5 to Galactic coordinate conversion: .. ok Test GNodeArray: ..................... ok Test GUrlFile: ... ok Test GUrlString: ... ok Test GFilename: ......... ok Test GCsv: ................... ok Test module dummy test: . ok XML module dummy test: . ok Test GPha: ... ok Test GArf: ... ok Test GRmf: ..... ok Test GVOClient: . ok MWL dummy test: . ok Test CTA effective area classes: ................. ok Test CTA PSF classes: ......................... ok Test CTA energy dispersion classes: ......... ok Test CTA response classes: . ok Test CTA On/Off analysis: ......... ok LAT dummy test: . ok COMPTEL dummy test: . ok
TESTS pour ctools ← NOK
(py36) $ python -c 'import ctools; ctools.test()' *********************** * ctools unit testing * *********************** Test ctobssim on command line: .FE NOK Test ctobssim from Python: ..E NOK Test ctselect on command line: ......... ok Test ctselect from Python: ....................E NOK Test ctphase on command line: ....... ok Test ctphase from Python: .............. ok Test ctbin on command line: .......... ok Test ctbin from Python: .................................................... ok Test ctlike on command line: .FE NOK Test ctlike from Python: ....E NOK Test cttsmap on command line: .FE NOK Test cttsmap from Python: .....E NOK Test ctmodel on command line: .FE NOK Test ctmodel from Python: ....E NOK Test ctskymap on command line: ........ ok Test ctskymap from Python: ...................E NOK terminate called after throwing an instance of 'GException::fits_open_error' what(): *** ERROR in GFits::open(GFilename&, bool&): Unable to open FITS file "ctexpcube_cmd1.fits" (status=104) Test ctexpcube on command line: .FAbandon (core dumped) (py36) $
#6 Updated by Brau-Nogué Sylvie about 7 years ago
- Description updated (diff)
- % Done changed from 100 to 80
#7 Updated by Brau-Nogué Sylvie about 7 years ago
- Checklist changed from [x] Installer conda sur Mac + 1 VM Centos, [x] Installer ctools v 1.4.2, [x] Tester installation package gammalib/ctools préparée par K. Kosack to [x] Installer conda sur Mac + 1 VM Centos, [x] Installer ctools v 1.4.2, [x] Tester installation package gammalib/ctools préparée par K. Kosack, [ ] Valider gammalib/ctools sur CentOS
- % Done changed from 80 to 70
- % Done changed from 70 to 100
La validation du package ctools disponible sur https://anaconda.org/cta-observatory/gammalib a échoué sur CentOS¶
Message d’erreur :
Test ctskymap from Python: ...................E NOK
terminate called after throwing an instance of 'GException::fits_open_error’
what(): *** ERROR in GFits::open(GFilename&, bool&): Unable to open FITS file “ctexpcube_cmd1.fits” (status=104)
Test ctexpcube on command line: .FAbandon (core dumped)
#8 Updated by Brau-Nogué Sylvie about 7 years ago
- Checklist changed from [ ] Valider gammalib/ctools sur CentOS to [x] Valider gammalib/ctools sur CentOS
#9 Updated by Brau-Nogué Sylvie about 7 years ago
Voir Action #2211 : Prepare packages with conda
La validation des packages est faite, il suffisait de ne rien oublier ....
#10 Updated by Knödlseder Jürgen about 7 years ago
- Subject changed from Valider l'installation de gammalib avec conda to Validate GammaLib installation through conda
#11 Updated by Knödlseder Jürgen about 7 years ago
- Status changed from In Progress to Closed
Conda package generation is now implemented in the release pipeline (#2278)