easybuilders / easybuild-framework

EasyBuild is a software installation framework in Python that allows you to install software in a structured and robust way.
https://easybuild.io
GNU General Public License v2.0
150 stars 202 forks source link

download_filename ignored in package in exts_lists #2990

Open omula opened 5 years ago

omula commented 5 years ago

I'm using easybuild version 3.9.2 I have added the following snippet in my Python recipe to be able to install latest batchspawner version.

('batchspawner', '0.9.0dev', {
        'source_urls': ['https://github.com/jupyterhub/batchspawner/archive/'],
        'sources': [{'download_filename': 'c0da1f3.tar.gz', 'filename': SOURCE_TAR_GZ}],
    }),

eb seems to be ignore the setting as you can see in the log below.

== 2019-08-29 19:28:03,942 templates.py:160 DEBUG config: {'version': '0.9.0dev', 'name': 'batchspawner', 'options': {'sources': [{'download_filename': 'c0da1f3.tar.gz', 'filename': '%(name)s-%(version)s.tar.gz'}], 'source_urls': ['https://github.com/jupyterhub/batchspawner/archive/']}}
== 2019-08-29 19:28:03,942 templates.py:187 DEBUG version found in easyconfig is 0.9.0dev
== 2019-08-29 19:28:03,942 templates.py:241 DEBUG name: name, config: batchspawner
== 2019-08-29 19:28:03,942 templates.py:241 DEBUG name: version, config: 0.9.0dev
== 2019-08-29 19:28:03,943 filetools.py:396 INFO Command eb found at /beegfs/easybuild/common/software/EasyBuild/3.9.2/bin/eb
== 2019-08-29 19:28:03,944 tools.py:265 DEBUG Also considering installation prefix /beegfs/easybuild/common/software/EasyBuild/3.9.2...
== 2019-08-29 19:28:03,944 tools.py:270 DEBUG Checking for easybuild/easyconfigs at /beegfs/easybuild/common/software/EasyBuild/3.9.2/lib/python2.7/site-packages/easybuild_easyconfigs-3.9.2-py2.7.egg/easybuild/easyconfigs/easybuild/easyconfigs
== 2019-08-29 19:28:03,944 tools.py:270 DEBUG Checking for easybuild/easyconfigs at easybuild/easyconfigs
== 2019-08-29 19:28:03,945 tools.py:270 DEBUG Checking for easybuild/easyconfigs at /beegfs/easybuild/common/software/EasyBuild/3.9.2/lib/python2.7/site-packages/vsc_install-0.11.3-py2.7.egg/easybuild/easyconfigs
== 2019-08-29 19:28:03,945 tools.py:270 DEBUG Checking for easybuild/easyconfigs at /beegfs/easybuild/common/software/EasyBuild/3.9.2/lib/python2.7/site-packages/vsc_base-2.8.4-py2.7.egg/easybuild/easyconfigs
== 2019-08-29 19:28:03,945 tools.py:270 DEBUG Checking for easybuild/easyconfigs at /beegfs/easybuild/common/software/EasyBuild/3.9.2/lib/python2.7/site-packages/easybuild_framework-3.9.2-py2.7.egg/easybuild/easyconfigs
== 2019-08-29 19:28:03,946 tools.py:270 DEBUG Checking for easybuild/easyconfigs at /beegfs/easybuild/common/software/EasyBuild/3.9.2/lib/python2.7/site-packages/easybuild_easyblocks-3.9.2-py2.7.egg/easybuild/easyconfigs
== 2019-08-29 19:28:03,946 tools.py:270 DEBUG Checking for easybuild/easyconfigs at /beegfs/easybuild/common/software/EasyBuild/3.9.2/lib/python2.7/site-packages/easybuild_easyconfigs-3.9.2-py2.7.egg/easybuild/easyconfigs
== 2019-08-29 19:28:03,946 tools.py:274 DEBUG Added /beegfs/easybuild/common/software/EasyBuild/3.9.2/lib/python2.7/site-packages/easybuild_easyconfigs-3.9.2-py2.7.egg/easybuild/easyconfigs to list of paths for easybuild/easyconfigs
== 2019-08-29 19:28:03,946 tools.py:270 DEBUG Checking for easybuild/easyconfigs at /beegfs/easybuild/common/software/EasyBuild/3.9.2/lib/python2.7/site-packages/easybuild/easyconfigs
== 2019-08-29 19:28:03,947 tools.py:270 DEBUG Checking for easybuild/easyconfigs at /usr/lib64/python27.zip/easybuild/easyconfigs
== 2019-08-29 19:28:03,947 tools.py:270 DEBUG Checking for easybuild/easyconfigs at /usr/lib64/python2.7/easybuild/easyconfigs
== 2019-08-29 19:28:03,947 tools.py:270 DEBUG Checking for easybuild/easyconfigs at /usr/lib64/python2.7/plat-linux2/easybuild/easyconfigs
== 2019-08-29 19:28:03,947 tools.py:270 DEBUG Checking for easybuild/easyconfigs at /usr/lib64/python2.7/lib-tk/easybuild/easyconfigs
== 2019-08-29 19:28:03,947 tools.py:270 DEBUG Checking for easybuild/easyconfigs at /usr/lib64/python2.7/lib-old/easybuild/easyconfigs
== 2019-08-29 19:28:03,948 tools.py:270 DEBUG Checking for easybuild/easyconfigs at /usr/lib64/python2.7/lib-dynload/easybuild/easyconfigs
== 2019-08-29 19:28:03,948 tools.py:270 DEBUG Checking for easybuild/easyconfigs at /beegfs/easybuild/.local/lib/python2.7/site-packages/easybuild/easyconfigs
== 2019-08-29 19:28:03,948 tools.py:270 DEBUG Checking for easybuild/easyconfigs at /usr/lib64/python2.7/site-packages/easybuild/easyconfigs
== 2019-08-29 19:28:03,949 tools.py:270 DEBUG Checking for easybuild/easyconfigs at /usr/lib/python2.7/site-packages/easybuild/easyconfigs
== 2019-08-29 19:28:03,949 tools.py:270 DEBUG Checking for easybuild/easyconfigs at /beegfs/easybuild/common/software/EasyBuild/3.9.2/easybuild/easyconfigs
== 2019-08-29 19:28:03,951 filetools.py:1245 DEBUG Not creating existing path /beegfs/easybuild/sources/p/Python
== 2019-08-29 19:28:03,952 easyblock.py:739 DEBUG Trying to download file batchspawner-0.9.0dev.tar.gz from https://github.com/jupyterhub/batchspawner/archive/batchspawner-0.9.0dev.tar.gz to /beegfs/easybuild/sources/p/Python/extensions/batchspawner-0.9.0dev.tar.gz ...
== 2019-08-29 19:28:03,952 filetools.py:501 DEBUG Trying to download batchspawner-0.9.0dev.tar.gz from https://github.com/jupyterhub/batchspawner/archive/batchspawner-0.9.0dev.tar.gz to /beegfs/easybuild/sources/p/Python/extensions/batchspawner-0.9.0dev.tar.gz
== 2019-08-29 19:28:03,952 filetools.py:508 DEBUG Using timeout of 10 seconds for initiating download
== 2019-08-29 19:28:03,952 filetools.py:1245 DEBUG Not creating existing path /beegfs/easybuild/sources/p/Python/extensions
== 2019-08-29 19:28:05,465 filetools.py:546 WARNING URL https://github.com/jupyterhub/batchspawner/archive/batchspawner-0.9.0dev.tar.gz was not found (HTTP response code 404), not trying again
boegel commented 5 years ago

@omula Indeed, for extensions only source_tmpl is supported (and you can only have a single source file per extension currently).

Thanks for reporting this, hopefully we'll get around to fixing this soon...

For now, you can pre-download the source tarball manually, and be create with the version you specify.