Hi Kenneth, Thanks for your help!
1. is solved now with your suggestion of EASYBUILD_DISABLE_ENFORCE_CHECKSUMS=1 Now that the bootstrap.py ran correctly it can also find the easybuild files in the location that I have configured, so this solves 1 and 2 as well. Thanks, Niek On Mon, Nov 18, 2019 at 3:01 PM Kenneth Hoste <[email protected]> wrote: > Dear Niek, > > Sorry that you're hitting these issues, let's try and get them sorted... > > On 18/11/2019 20:00, Niek de Klein wrote: > > Hi all, > > > > I am trying to have my own installation of EasyBuild, but I have 3 > problems: > > > > 1. When I try to run bootstrap.py it gives an error that md5sums are > > missing, but I'm not sure where to add them as I thought that should > > then have been included in the EasyBuild-4.0.1.eb file: > > > > easybuild.tools.build_log.EasyBuildError: "Build of > > /tmp/tmpfcUSAH/EasyBuild-4.0.1.eb failed (err: 'build failed (first 300 > > chars): Missing checksum for easybuild-framework-4.0.1.tar.gz')" > > Sorry for not responding to the GitHub issue [1] you opened on this > (will do so now with the answer below). > > We still need to clean up the bootstrap script a bit after the EasyBuild > v4.0 release, it's still doing a bunch of stuff it shouldn't anymore, > and it's not compatible yet with Python 3 (see also > https://github.com/easybuilders/easybuild-framework/pull/3028). > > > Your active EasyBuild configuration has --enforce-checksums enabled (via > $EASYBUILD_ENFORCE_CHECKSUMS), which explains the problem you're seeing. > > The bootstrap script auto-generates an easyconfig file, but it doesn't > include checksums (it could I guess, with a bit more work). > > You can dance around this though, by temporarily disabling the checksums > requirement, only for the bootstrap: > > EASYBUILD_DISABLE_ENFORCE_CHECKSUMS=1 python bootstrap <path> > > > If you want to, you can bootstrap EasyBuild to a temporary location (for > example /tmp/$USER), and then use that installation to pull in an > easyconfig file for EasyBuild v4.0.1 that does have checksums, using "eb > --from-pr 9149 --installpath <final_path>" (which pulls in the > easyconfig from > https://github.com/easybuilders/easybuild-easyconfigs/pull/9149/files) > for the actual installation you intend to use. > > > > > > > 2. I changed the robo and installation path to be different, but I keep > > getting "Failed to determine minimal toolchain for dep ..." errors. The > > eb --show-config output is at the end of this e-mail, and shows that my > > robot-paths is > > > /groups/umcg-biogen/tmp01/apps/easybuild-easyconfigs/easybuild/easyconfigs/, > > > which is where I cloned the easyconfigs repository. > > What happens if you use "eb --search" with this setup, can 'eb' find > easyconfig files? > > Try something like "eb --search tensorflow-1.14" for example. > > > > > > 3. Even if the robo path wasn't working, tools that are already in my > > module avail are not being picked up. For example, EasyBuild that is not > > working uses "toolchain = {'name': 'foss', 'version': '2018b'}" and has > > as one of the dependencies "('ncurses', '6.0'),". When I try to install > > it I get > > > > ERROR: Failed to process easyconfig > > > /groups/umcg-biogen/tmp01/tools/brain_eQTL/EasyBuild/easyconfigs/SAMtools-1.5-foss-2018b.eb: > > > Failed to determine minimal toolchain for dep ncurses 6.0 > > > > but when I do ml avail ncur I get: > > > > ------------------------------------------------------ > > /groups/umcg-biogen/tmp01/apps/modules/devel > > ------------------------------------------------------- > > ncurses/6.0-foss-2018b > > > > ------------------------------------------------------------------- > > /apps/modules/devel > > ------------------------------------------------------------------- > > ncurses/6.0 ncurses/6.1-foss-2018b ncurses/6.1-GCCcore-7.3.0 > (D) > > > > So the ncurses module is already available > > > > > > Am I missing something in my configuration? > > This is a consequence of having --minimal-toolchains enabled, which > requires that EasyBuild is able to find the easyconfig file for the > toolchain (foss-2018b.eb in this case). > > It needs to figure out what the (versions of) the subtoolchains are for > foss/2018b, so it can check for ncurses installed with GCCcore first, > before gompi, before foss. > > So this is basically the same issue as with problem 2, I bet "eb > --search ^foss-2018b.eb" doesn't give you any result? > > > Are you 100% sure the path you specified for --robot-paths is correct? > > Note that you can also prepend or append to the robot search path > (rather than override the default), see > > https://easybuild.readthedocs.io/en/latest/Using_the_EasyBuild_command_line.html#controlling-robot-search-path > . > > I hope this helps... > > > regards, > > Kenneth > > > [1] https://github.com/easybuilders/easybuild-framework/issues/3079 > > > > > Thanks for your help! > > Niek de Klein > > > > > > # > > # Current EasyBuild configuration > > # (C: command line argument, D: default value, E: environment variable, > > F: configuration file) > > # > > buildpath (E) = > > /groups/umcg-biogen/tmp01/apps//.tmp/easybuild/builds/ > > containerpath (D) = > > /home/umcg-ndeklein/.local/easybuild/containers > > enforce-checksums (E) = True > > installpath (E) = /groups/umcg-biogen/tmp01/apps/ > > minimal-toolchains (E) = True > > repositorypath (D) = > > /home/umcg-ndeklein/.local/easybuild/ebfiles_repo > > robot-paths (E) = > > > /groups/umcg-biogen/tmp01/apps/easybuild-easyconfigs/easybuild/easyconfigs/ > > set-gid-bit (E) = True > > sourcepath (E) = > /groups/umcg-biogen/tmp01/apps//sources/ > > umask (E) = 002 > > verify-easyconfig-filenames (E) = True > > > > >

