Open eylenth opened 5 years ago
@eylenth Can you try without setting $EASYBUILD_BOOTSTRAP_SOURCEPATH
(so the bootstrap script will download the source tarballs from PyPI)?
You're definitely hitting a bug in the bootstrap script, the logic is a bit funky, it shouldn't be trying to install vsc-install
or vsc-base
at all anymore, since they are no longer required for EasyBuild v4.0.0.
Any reason you're not using eb --install-latest-eb-release
with an existing EasyBuild installation instead?
It seems to work now...
$ /usr/bin/python2 src/bootstrap_eb.py /tools/eb
[[INFO]] EasyBuild bootstrap script (version 20190922.01, MD5: 039b743a44cde1549cfc0f15796d4dcd)
[[INFO]] Found Python 2.7.5 (default, May 31 2018, 09:41:32) ; [GCC 4.8.5 20150623 (Red Hat 4.8.5-28)]
[[INFO]] Installation prefix /tools/eb
[[INFO]] Found module command '/usr/share/lmod/lmod/libexec/lmod' via $LMOD_CMD (Lmod), so using it.
[[INFO]] Suitable setuptools installation already found, skipping stage 0...
[[INFO]] +++ STAGE 1: installing EasyBuild in temporary dir with easy_install...
[[INFO]] running pre-install command 'easy_install --quiet --upgrade --prefix=/tmp/tmpqhDolz/eb_stage1 vsc-install<0.11.4'
[[INFO]] running pre-install command 'easy_install --quiet --upgrade --prefix=/tmp/tmpqhDolz/eb_stage1 vsc-base<2.9.0'
[[INFO]] installing EasyBuild with 'easy_install --quiet --upgrade --prefix=/tmp/tmpqhDolz/eb_stage1 easybuild'
[[INFO]] Note: a 'SyntaxError' may be reported for the easybuild/tools/py2vs3/py3.py module.
You can safely ignore this message, it will not affect the functionality of the EasyBuild installation.
File "build/bdist.linux-x86_64/egg/easybuild/tools/py2vs3/py3.py", line 82
class WrapperBase(object, metaclass=metaclass):
^
SyntaxError: invalid syntax
[[INFO]] running post install command 'easy_install --upgrade --prefix=/tmp/tmpqhDolz/eb_stage1 vsc-base<2.9.0'
[[INFO]] +++ STAGE 2: installing EasyBuild in /tools/eb with EasyBuild from stage 1...
== temporary log file in case of crash /tmp/eb-U36rxa/easybuild-8QHYI9.log
WARNING: Deprecated functionality, will no longer work in v5.0: Use of 'dummy' toolchain is deprecated, use 'system' toolchain instead; see http://easybuild.readthedocs.org/en/latest/Deprecated-functionality.html for more information
== processing EasyBuild easyconfig /tmp/tmpqhDolz/EasyBuild-4.0.0.eb
== building and installing Core/EasyBuild/4.0.0...
== fetching files...
== creating build dir, resetting environment...
== unpacking...
== patching...
== preparing...
== configuring...
== building...
== testing...
== installing...
== taking care of extensions...
== restore after iterating...
== postprocessing...
== sanity checking...
== cleaning up...
== creating module...
== permissions...
== packaging...
== COMPLETED: Installation ended successfully (took 46 sec)
== Results of the build can be found in the log file(s) /tools/eb/software/EasyBuild/4.0.0/easybuild/easybuild-EasyBuild-4.0.0-20190930.112809.log
== Build succeeded for 1 out of 1
== Temporary log file(s) /tmp/eb-U36rxa/easybuild-8QHYI9.log* have been removed.
== Temporary directory /tmp/eb-U36rxa has been removed.
[[INFO]] EasyBuild module installed: /tools/eb/modules/all/Core/EasyBuild/4.0.0.lua
[[INFO]] Bootstrapping EasyBuild completed!
[[INFO]] EasyBuild v4.0.0 was installed to /tools/eb, so make sure your $MODULEPATH includes /tools/eb/modules/all
[[INFO]] Run 'module load EasyBuild', and run 'eb --help' to get help on using EasyBuild.
[[INFO]] Set $EASYBUILD_MODULES_TOOL to 'Lmod' to use the same modules tool as was used now.
[[INFO]] By default, EasyBuild will install software to $HOME/.local/easybuild.
[[INFO]] To install software with EasyBuild to /tools/eb, set $EASYBUILD_INSTALLPATH accordingly.
[[INFO]] See http://easybuild.readthedocs.org/en/latest/Configuration.html for details on configuring EasyBuild
But I still see the warning message about py3.py
The reason, why I am upgrading easybuild by rebootstrap, is because our installation/upgrade procedure is managed by the configuration management tool(puppet). It will be difficult to implement eb --install-latest-eb-release
in the puppet code.
And I am also injecting a customized module naming scheme into the tarball of easybuild-framework-4.0.0.tar.gz
@eylenth Good to hear you got it installed.
For the module naming scheme, you should park that somewhere and configure EasyBuild using --include-module-naming-schemes
to pick up on it, rather than adding it to the framework installation...
I would like to park it in a location configured with include-module-naming-schemes. But when I am rebootstrapping easybuild, it is not aware of $HOME/.config/easybuild/config.cfg (I think ?), so easybuild itself cannot be installed in the installation directory that is being configured with the customized module naming scheme.
So that's the reason why I am injecting that one customized module naming scheme in tarball of easyblock-framework instead of using --include-module-naming-schemes. But I don't mind to inject this. If the location of the module naming schemes will ever change, then I will adapt my build-pipeline.
Hi
I want to upgrade EasyBuild to version 4.0.0 with the re-bootstrap procedure But I am getting the following error when I try to upgrade with Python2
for some reason it is trying to use easybuild/tools/py2vs3/py3.py instead of easybuild/tools/py2vs3/py2.py in STAGE 1 .