easybuilders / easybuild-easyblocks

Collection of easyblocks that implement support for building and installing software with EasyBuild.
https://easybuild.io
GNU General Public License v2.0
105 stars 284 forks source link

EasyBuildMeta easyblock doesn't take possible zipped .egg's into account in sanity check #710

Open boegel opened 9 years ago

boegel commented 9 years ago

This is reflected in the EasyBuild bootstrap script failing like:

+++ STAGE 2: installing EasyBuild in /tmp/jenkins-easybuild-framework_unit-test_hpcugent_develop-tcl-env-mod-451 with EasyBuild from stage 1...

== temporary log file in case of crash /var/tmp/eb-OJuqD0/easybuild-ETP4pj.log
== processing EasyBuild easyconfig /var/tmp/tmpx0kYBL/EasyBuild-2.3.0.eb
== building and installing EasyBuild/2.3.0...
== fetching files...
== creating build dir, resetting environment...
== unpacking...
== patching...
== preparing...
== configuring...
== building...
== testing...
== installing...
== taking care of extensions...
== postprocessing...
== sanity checking...
== FAILED: Installation ended unsuccessfully (build directory: /var/tmp/tmpx0kYBL/EasyBuild/2.3.0/dummy-dummy): build failed (first 300 chars): Sanity check failed: no dir of ('lib/python2.6/site-packages/vsc_base-2.4.1-py2.6.egg/vsc/utils',) in /tmp/jenkins-easybuild-framework_unit-test_hpcugent_develop-tcl-env-mod-451/software/EasyBuild/2.3.0
== Results of the build can be found in the log file /var/tmp/eb-OJuqD0/easybuild-EasyBuild-2.3.0-20151010.134229.fbqBq.log
Traceback (most recent call last):
  File "easybuild/scripts//bootstrap_eb.py", line 658, in <module>
    main()
  File "easybuild/scripts//bootstrap_eb.py", line 492, in main
    stage2(tmpdir, templates, install_path, distribute_egg_dir, sourcepath)
  File "easybuild/scripts//bootstrap_eb.py", line 430, in stage2
    easybuild_main()
  File "/var/tmp/tmpx0kYBL/eb_stage1/lib/python2.6/site-packages/easybuild_framework-2.3.0-py2.6.egg/easybuild/main.py", line 323, in main
    ecs_with_res = build_and_install_software(ordered_ecs, init_session_state, exit_on_failure=exit_on_failure)
  File "/var/tmp/tmpx0kYBL/eb_stage1/lib/python2.6/site-packages/easybuild_framework-2.3.0-py2.6.egg/easybuild/main.py", line 147, in build_and_install_software
    raise EasyBuildError(test_msg)
easybuild.tools.build_log.EasyBuildError: 'Build of /var/tmp/tmpx0kYBL/EasyBuild-2.3.0.eb failed (err: "build failed (first 300 chars): Sanity check failed: no dir of (\'lib/python2.6/site-packages/vsc_base-2.4.1-py2.6.egg/vsc/utils\',) in /tmp/jenkins-easybuild-framework_unit-test_hpcugent_develop-tcl-env-mod-451/software/EasyBuild/2.3.0")'
boegel commented 9 years ago

A (temporary) fix for the bootstrap script is available in https://github.com/hpcugent/easybuild-framework/pull/1422

boegel commented 9 years ago

Less urgent now, since vsc-base is not really zip-safe anyway (cfr. https://github.com/hpcugent/vsc-base/pull/210), and the EasyBuild framework itself isn't yet (cfr. https://github.com/hpcugent/easybuild-framework/pull/1399).