From b35f7f608eb9487a44342c0204db29f2c38f6cd5 Mon Sep 17 00:00:00 2001 From: Richard Top Date: Wed, 4 Oct 2023 09:07:25 +0000 Subject: [PATCH 01/27] {2023.06}[foss/2021a] Yambo V5.1.1 --- eessi-2023.06-eb-4.7.2-2021a.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/eessi-2023.06-eb-4.7.2-2021a.yml b/eessi-2023.06-eb-4.7.2-2021a.yml index b7c703369b..49214fc84a 100644 --- a/eessi-2023.06-eb-4.7.2-2021a.yml +++ b/eessi-2023.06-eb-4.7.2-2021a.yml @@ -20,3 +20,7 @@ easyconfigs: options: from-pr: 18446 - WRF-4.3-foss-2021a-dmpar.eb + - Yambo-5.1.1-foss-2021a.eb: + options: + from-pr: 18905 + From 05eba7313991b8c7bb49d2d00e4403c07ec289b8 Mon Sep 17 00:00:00 2001 From: Thomas Roeblitz Date: Thu, 5 Oct 2023 22:31:07 +0200 Subject: [PATCH 02/27] bio packages - set 1 --- eessi-2023.06-eb-4.8.1-2022a.yml | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 eessi-2023.06-eb-4.8.1-2022a.yml diff --git a/eessi-2023.06-eb-4.8.1-2022a.yml b/eessi-2023.06-eb-4.8.1-2022a.yml new file mode 100644 index 0000000000..86dcd7714a --- /dev/null +++ b/eessi-2023.06-eb-4.8.1-2022a.yml @@ -0,0 +1,7 @@ +easyconfigs: + - BAMM-2.5.0-foss-2022a.eb + - BamTools-2.5.2-GCC-11.3.0.eb + - BCFtools-1.15.1-GCC-11.3.0.eb + - Bowtie2-2.4.5-GCC-11.3.0.eb + - FastTree-2.1.11-GCCcore-11.3.0.eb + - SAMtools-1.16.1-GCC-11.3.0.eb From 2f85702467c4f6179e4fa94237657052860cc8f0 Mon Sep 17 00:00:00 2001 From: Thomas Roeblitz Date: Thu, 5 Oct 2023 23:17:43 +0200 Subject: [PATCH 03/27] add new easystack file to CI --- .github/workflows/test_eessi.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/test_eessi.yml b/.github/workflows/test_eessi.yml index 72dc642c7d..2554ed78b3 100644 --- a/.github/workflows/test_eessi.yml +++ b/.github/workflows/test_eessi.yml @@ -25,6 +25,7 @@ jobs: - eessi-2023.06-eb-4.7.2-2022b.yml - eessi-2023.06-eb-4.7.2-system.yml - eessi-2023.06-eb-4.8.0-system.yml + - eessi-2023.06-eb-4.8.1-2022a.yml steps: - name: Check out software-layer repository uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0 From 920fa096f0db6e94e6f1ee2bfcafd59e3637ebb8 Mon Sep 17 00:00:00 2001 From: Thomas Roeblitz Date: Fri, 6 Oct 2023 07:57:08 +0200 Subject: [PATCH 04/27] reverting change on _OVERRIDE + shorter test label --- .github/workflows/test_eessi.yml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test_eessi.yml b/.github/workflows/test_eessi.yml index 2554ed78b3..a6bce68cf0 100644 --- a/.github/workflows/test_eessi.yml +++ b/.github/workflows/test_eessi.yml @@ -4,7 +4,7 @@ on: [push, pull_request, workflow_dispatch] permissions: contents: read # to fetch code (actions/checkout) jobs: - eessi_pilot_repo: + pilot: runs-on: ubuntu-20.04 strategy: fail-fast: false @@ -39,13 +39,15 @@ jobs: - name: Test check_missing_installations.sh script run: | - export EESSI_SOFTWARE_SUBDIR_OVERRIDE=${{matrix.EESSI_SOFTWARE_SUBDIR_OVERRIDE}} + # export EESSI_SOFTWARE_SUBDIR_OVERRIDE=${{matrix.EESSI_SOFTWARE_SUBDIR_OVERRIDE}} source /cvmfs/pilot.nessi.no/versions/${{matrix.EESSI_VERSION}}/init/bash module load EasyBuild which eb eb --version + eb --show-config export EESSI_PREFIX=/cvmfs/pilot.nessi.no/versions/${{matrix.EESSI_VERSION}} export EESSI_OS_TYPE=linux + export EESSI_SOFTWARE_SUBDIR=${{matrix.EESSI_SOFTWARE_SUBDIR_OVERRIDE}} env | grep ^EESSI | sort echo "just run check_missing_installations.sh (should use eessi-${{matrix.EESSI_VERSION}}.yml)" ./check_missing_installations.sh ${{matrix.EASYSTACK_FILE}} From 37209de14f7583a8f04e44c4b55a9dda0ba9fe95 Mon Sep 17 00:00:00 2001 From: Thomas Roeblitz Date: Fri, 6 Oct 2023 09:38:42 +0200 Subject: [PATCH 05/27] show EasyBuild config when running script --- check_missing_installations.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/check_missing_installations.sh b/check_missing_installations.sh index 3627d1d0b5..e927f14701 100755 --- a/check_missing_installations.sh +++ b/check_missing_installations.sh @@ -22,6 +22,9 @@ source $TOPDIR/scripts/utils.sh source $TOPDIR/configure_easybuild +echo ">> Active EasyBuild configuration when checking for missing installations:" +${EB:-eb} --show-config + echo ">> Checking for missing installations in ${EASYBUILD_INSTALLPATH}..." eb_missing_out=$LOCAL_TMPDIR/eb_missing.out ${EB:-eb} --easystack ${easystack} --missing 2>&1 | tee ${eb_missing_out} From 54e511159e4abc7cbbe6bf652a56ee1363547337 Mon Sep 17 00:00:00 2001 From: Thomas Roeblitz Date: Fri, 6 Oct 2023 11:32:24 +0200 Subject: [PATCH 06/27] run check script with and without _OVERRIDE --- .github/workflows/test_eessi.yml | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/.github/workflows/test_eessi.yml b/.github/workflows/test_eessi.yml index a6bce68cf0..71332bca36 100644 --- a/.github/workflows/test_eessi.yml +++ b/.github/workflows/test_eessi.yml @@ -37,9 +37,22 @@ jobs: cvmfs_http_proxy: DIRECT cvmfs_repositories: pilot.nessi.no - - name: Test check_missing_installations.sh script + - name: Test check_missing_installations.sh script with EESSI_SOFTWARE_SUBDIR_OVERRIDE + run: | + export EESSI_SOFTWARE_SUBDIR_OVERRIDE=${{matrix.EESSI_SOFTWARE_SUBDIR_OVERRIDE}} + source /cvmfs/pilot.nessi.no/versions/${{matrix.EESSI_VERSION}}/init/bash + module load EasyBuild + which eb + eb --version + eb --show-config + export EESSI_PREFIX=/cvmfs/pilot.nessi.no/versions/${{matrix.EESSI_VERSION}} + export EESSI_OS_TYPE=linux + env | grep ^EESSI | sort + echo "just run check_missing_installations.sh (should use ${{matrix.EASYSTACK_FILE}})" + ./check_missing_installations.sh ${{matrix.EASYSTACK_FILE}} + + - name: Test check_missing_installations.sh script without EESSI_SOFTWARE_SUBDIR_OVERRIDE run: | - # export EESSI_SOFTWARE_SUBDIR_OVERRIDE=${{matrix.EESSI_SOFTWARE_SUBDIR_OVERRIDE}} source /cvmfs/pilot.nessi.no/versions/${{matrix.EESSI_VERSION}}/init/bash module load EasyBuild which eb @@ -49,7 +62,7 @@ jobs: export EESSI_OS_TYPE=linux export EESSI_SOFTWARE_SUBDIR=${{matrix.EESSI_SOFTWARE_SUBDIR_OVERRIDE}} env | grep ^EESSI | sort - echo "just run check_missing_installations.sh (should use eessi-${{matrix.EESSI_VERSION}}.yml)" + echo "just run check_missing_installations.sh (should use ${{matrix.EASYSTACK_FILE}})" ./check_missing_installations.sh ${{matrix.EASYSTACK_FILE}} - name: Test check_missing_installations.sh with missing package (GCC/8.3.0) From 0e58034e12bed5782b9a4b81b406ad09ec3c9c92 Mon Sep 17 00:00:00 2001 From: Thomas Roeblitz Date: Fri, 6 Oct 2023 11:42:43 +0200 Subject: [PATCH 07/27] run some steps if preceeding test(s) failed --- .github/workflows/test_eessi.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/test_eessi.yml b/.github/workflows/test_eessi.yml index 71332bca36..a60eba47d1 100644 --- a/.github/workflows/test_eessi.yml +++ b/.github/workflows/test_eessi.yml @@ -38,6 +38,7 @@ jobs: cvmfs_repositories: pilot.nessi.no - name: Test check_missing_installations.sh script with EESSI_SOFTWARE_SUBDIR_OVERRIDE + if: '!cancelled()' run: | export EESSI_SOFTWARE_SUBDIR_OVERRIDE=${{matrix.EESSI_SOFTWARE_SUBDIR_OVERRIDE}} source /cvmfs/pilot.nessi.no/versions/${{matrix.EESSI_VERSION}}/init/bash @@ -52,6 +53,7 @@ jobs: ./check_missing_installations.sh ${{matrix.EASYSTACK_FILE}} - name: Test check_missing_installations.sh script without EESSI_SOFTWARE_SUBDIR_OVERRIDE + if: '!cancelled()' run: | source /cvmfs/pilot.nessi.no/versions/${{matrix.EESSI_VERSION}}/init/bash module load EasyBuild @@ -66,6 +68,7 @@ jobs: ./check_missing_installations.sh ${{matrix.EASYSTACK_FILE}} - name: Test check_missing_installations.sh with missing package (GCC/8.3.0) + if: '!cancelled()' run: | export EESSI_SOFTWARE_SUBDIR_OVERRIDE=${{matrix.EESSI_SOFTWARE_SUBDIR_OVERRIDE}} source /cvmfs/pilot.nessi.no/versions/${{matrix.EESSI_VERSION}}/init/bash From 487263801c7351157404a94cb946c72475fc4069 Mon Sep 17 00:00:00 2001 From: Thomas Roeblitz Date: Fri, 6 Oct 2023 14:15:33 +0200 Subject: [PATCH 08/27] updated CI to reduce number of tests --- .github/workflows/test_eessi.yml | 47 ++++++++++++++++---------------- 1 file changed, 23 insertions(+), 24 deletions(-) diff --git a/.github/workflows/test_eessi.yml b/.github/workflows/test_eessi.yml index a60eba47d1..1a558f1cb0 100644 --- a/.github/workflows/test_eessi.yml +++ b/.github/workflows/test_eessi.yml @@ -11,21 +11,13 @@ jobs: matrix: EESSI_VERSION: - 2023.06 - EESSI_SOFTWARE_SUBDIR_OVERRIDE: + EESSI_SOFTWARE_SUBDIR: - aarch64/generic - x86_64/amd/zen2 - x86_64/intel/broadwell - x86_64/intel/cascadelake - x86_64/intel/skylake_avx512 - x86_64/generic - EASYSTACK_FILE: - - eessi-2023.06-eb-4.7.2-2021a.yml - - eessi-2023.06-eb-4.7.2-2021b.yml - - eessi-2023.06-eb-4.7.2-2022a.yml - - eessi-2023.06-eb-4.7.2-2022b.yml - - eessi-2023.06-eb-4.7.2-system.yml - - eessi-2023.06-eb-4.8.0-system.yml - - eessi-2023.06-eb-4.8.1-2022a.yml steps: - name: Check out software-layer repository uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0 @@ -40,53 +32,60 @@ jobs: - name: Test check_missing_installations.sh script with EESSI_SOFTWARE_SUBDIR_OVERRIDE if: '!cancelled()' run: | - export EESSI_SOFTWARE_SUBDIR_OVERRIDE=${{matrix.EESSI_SOFTWARE_SUBDIR_OVERRIDE}} + export EESSI_SOFTWARE_SUBDIR_OVERRIDE=${{matrix.EESSI_SOFTWARE_SUBDIR}} source /cvmfs/pilot.nessi.no/versions/${{matrix.EESSI_VERSION}}/init/bash module load EasyBuild - which eb eb --version - eb --show-config export EESSI_PREFIX=/cvmfs/pilot.nessi.no/versions/${{matrix.EESSI_VERSION}} export EESSI_OS_TYPE=linux env | grep ^EESSI | sort - echo "just run check_missing_installations.sh (should use ${{matrix.EASYSTACK_FILE}})" - ./check_missing_installations.sh ${{matrix.EASYSTACK_FILE}} + for easystack_file in $(ls eessi-${{matrix.EESSI_VERSION}}-eb-*.yml); do + echo "check missing installations for ${easystack_file}..." + ./check_missing_installations.sh ${easystack_file} + ec=$? + if [[ ${ec} -ne 0 ]]; then echo "missing installations found for ${easystack_file}!" >&2; exit ${ec}; fi + done - name: Test check_missing_installations.sh script without EESSI_SOFTWARE_SUBDIR_OVERRIDE if: '!cancelled()' run: | source /cvmfs/pilot.nessi.no/versions/${{matrix.EESSI_VERSION}}/init/bash module load EasyBuild - which eb eb --version - eb --show-config export EESSI_PREFIX=/cvmfs/pilot.nessi.no/versions/${{matrix.EESSI_VERSION}} export EESSI_OS_TYPE=linux - export EESSI_SOFTWARE_SUBDIR=${{matrix.EESSI_SOFTWARE_SUBDIR_OVERRIDE}} + export EESSI_SOFTWARE_SUBDIR=${{matrix.EESSI_SOFTWARE_SUBDIR}} env | grep ^EESSI | sort - echo "just run check_missing_installations.sh (should use ${{matrix.EASYSTACK_FILE}})" - ./check_missing_installations.sh ${{matrix.EASYSTACK_FILE}} + for easystack_file in $(ls eessi-${{matrix.EESSI_VERSION}}-eb-*.yml); do + echo "check missing installations for ${easystack_file}..." + ./check_missing_installations.sh ${easystack_file} + ec=$? + if [[ ${ec} -ne 0 ]]; then echo "missing installations found for ${easystack_file}!" >&2; exit ${ec}; fi + done - name: Test check_missing_installations.sh with missing package (GCC/8.3.0) if: '!cancelled()' run: | - export EESSI_SOFTWARE_SUBDIR_OVERRIDE=${{matrix.EESSI_SOFTWARE_SUBDIR_OVERRIDE}} source /cvmfs/pilot.nessi.no/versions/${{matrix.EESSI_VERSION}}/init/bash module load EasyBuild which eb eb --version export EESSI_PREFIX=/cvmfs/pilot.nessi.no/versions/${{matrix.EESSI_VERSION}} export EESSI_OS_TYPE=linux + export EESSI_SOFTWARE_SUBDIR=${{matrix.EESSI_SOFTWARE_SUBDIR}} env | grep ^EESSI | sort - echo "modify easystack file by adding a missing package (GCC/8.3.0)" - echo " - GCC-8.3.0:" >> ${{matrix.EASYSTACK_FILE}} - tail -n 5 ${{matrix.EASYSTACK_FILE}} + # create dummy easystack file with a single entry (something that is not installed in EESSI) + easystack_file="test.yml" + echo "easyconfigs:" > ${easystack_file} + echo " - GCC-8.3.0:" >> ${easystack_file} + echo "created easystack file '${easystack_file}' with a missing installation (GCC/8.3.0):" + cat ${easystack_file} # note, check_missing_installations.sh exits 1 if a package was # missing, which is intepreted as false (exit code based, not # boolean logic), hence when the script exits 0 if no package was # missing it is interpreted as true, thus the test did not capture # the missing package - if ./check_missing_installations.sh ${{matrix.EASYSTACK_FILE}}; then + if ./check_missing_installations.sh ${easystack_file}; then echo "did NOT capture missing package; test FAILED" exit 1 else From 5300d767d4f859a674f38ca0752c382fb97db850 Mon Sep 17 00:00:00 2001 From: Thomas Roeblitz Date: Fri, 6 Oct 2023 14:17:13 +0200 Subject: [PATCH 09/27] call 'eb --show-config' for each easystack file being processed --- EESSI-pilot-install-software.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/EESSI-pilot-install-software.sh b/EESSI-pilot-install-software.sh index c6c51e7abc..026919157f 100755 --- a/EESSI-pilot-install-software.sh +++ b/EESSI-pilot-install-software.sh @@ -172,8 +172,6 @@ if [ ! -z "${shared_fs_path}" ]; then export EASYBUILD_SOURCEPATH=${shared_eb_sourcepath}:${EASYBUILD_SOURCEPATH} fi -${EB} --show-config - echo ">> Setting up \$MODULEPATH..." # make sure no modules are loaded module --force purge @@ -200,6 +198,8 @@ for easystack_file in $(cat ${pr_diff} | grep '^+++' | cut -f2 -d' ' | sed 's@^[ # load EasyBuild module (will be installed if it's not available yet) source ${TOPDIR}/load_easybuild_module.sh ${eb_version} + ${EB} --show-config + echo_green "All set, let's start installing some software with EasyBuild v${eb_version} in ${EASYBUILD_INSTALLPATH}..." if [ -f ${easystack_file} ]; then From 7cd9277bbb73739a0e6aa465b1b044e25055502d Mon Sep 17 00:00:00 2001 From: Thomas Roeblitz Date: Fri, 6 Oct 2023 14:45:00 +0200 Subject: [PATCH 10/27] revert back to have yml-file times architecture tests --- .github/workflows/test_eessi.yml | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/.github/workflows/test_eessi.yml b/.github/workflows/test_eessi.yml index 1a558f1cb0..832d4cf74f 100644 --- a/.github/workflows/test_eessi.yml +++ b/.github/workflows/test_eessi.yml @@ -18,6 +18,14 @@ jobs: - x86_64/intel/cascadelake - x86_64/intel/skylake_avx512 - x86_64/generic + EASYSTACK_FILE: + - eessi-2023.06-eb-4.7.2-2021a.yml + - eessi-2023.06-eb-4.7.2-2021b.yml + - eessi-2023.06-eb-4.7.2-2022a.yml + - eessi-2023.06-eb-4.7.2-2022b.yml + - eessi-2023.06-eb-4.7.2-system.yml + - eessi-2023.06-eb-4.8.0-system.yml + - eessi-2023.06-eb-4.8.1-2022a.yml steps: - name: Check out software-layer repository uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0 @@ -39,12 +47,8 @@ jobs: export EESSI_PREFIX=/cvmfs/pilot.nessi.no/versions/${{matrix.EESSI_VERSION}} export EESSI_OS_TYPE=linux env | grep ^EESSI | sort - for easystack_file in $(ls eessi-${{matrix.EESSI_VERSION}}-eb-*.yml); do - echo "check missing installations for ${easystack_file}..." - ./check_missing_installations.sh ${easystack_file} - ec=$? - if [[ ${ec} -ne 0 ]]; then echo "missing installations found for ${easystack_file}!" >&2; exit ${ec}; fi - done + echo "just run check_missing_installations.sh (should use ${{matrix.EASYSTACK_FILE}})" + ./check_missing_installations.sh ${{matrix.EASYSTACK_FILE}} - name: Test check_missing_installations.sh script without EESSI_SOFTWARE_SUBDIR_OVERRIDE if: '!cancelled()' @@ -56,12 +60,8 @@ jobs: export EESSI_OS_TYPE=linux export EESSI_SOFTWARE_SUBDIR=${{matrix.EESSI_SOFTWARE_SUBDIR}} env | grep ^EESSI | sort - for easystack_file in $(ls eessi-${{matrix.EESSI_VERSION}}-eb-*.yml); do - echo "check missing installations for ${easystack_file}..." - ./check_missing_installations.sh ${easystack_file} - ec=$? - if [[ ${ec} -ne 0 ]]; then echo "missing installations found for ${easystack_file}!" >&2; exit ${ec}; fi - done + echo "just run check_missing_installations.sh (should use ${{matrix.EASYSTACK_FILE}})" + ./check_missing_installations.sh ${{matrix.EASYSTACK_FILE}} - name: Test check_missing_installations.sh with missing package (GCC/8.3.0) if: '!cancelled()' From b9f784ca8ddd2b8d9bda9d7ede03e0623c6dc992 Mon Sep 17 00:00:00 2001 From: Thomas Roeblitz Date: Fri, 6 Oct 2023 18:27:58 +0200 Subject: [PATCH 11/27] {2023.06}[foss/2022a] add common dependencies - set 1 --- eessi-2023.06-eb-4.8.1-2022a.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/eessi-2023.06-eb-4.8.1-2022a.yml b/eessi-2023.06-eb-4.8.1-2022a.yml index 86dcd7714a..b1bbe71da7 100644 --- a/eessi-2023.06-eb-4.8.1-2022a.yml +++ b/eessi-2023.06-eb-4.8.1-2022a.yml @@ -5,3 +5,6 @@ easyconfigs: - Bowtie2-2.4.5-GCC-11.3.0.eb - FastTree-2.1.11-GCCcore-11.3.0.eb - SAMtools-1.16.1-GCC-11.3.0.eb + - gzip-1.12-GCCcore-11.3.0.eb + - lz4-1.9.3-GCCcore-11.3.0.eb + - zstd-1.5.2-GCCcore-11.3.0.eb From f8265a14f57b220a38c9faf1c7b049fb401e0db3 Mon Sep 17 00:00:00 2001 From: Thomas Roeblitz Date: Fri, 6 Oct 2023 18:36:36 +0200 Subject: [PATCH 12/27] add Java to set --- eessi-2023.06-eb-4.8.1-2022a.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/eessi-2023.06-eb-4.8.1-2022a.yml b/eessi-2023.06-eb-4.8.1-2022a.yml index b1bbe71da7..f8caa95a54 100644 --- a/eessi-2023.06-eb-4.8.1-2022a.yml +++ b/eessi-2023.06-eb-4.8.1-2022a.yml @@ -5,6 +5,8 @@ easyconfigs: - Bowtie2-2.4.5-GCC-11.3.0.eb - FastTree-2.1.11-GCCcore-11.3.0.eb - SAMtools-1.16.1-GCC-11.3.0.eb + # wraps around Java/11.0.20 + - Java-11.eb - gzip-1.12-GCCcore-11.3.0.eb - lz4-1.9.3-GCCcore-11.3.0.eb - zstd-1.5.2-GCCcore-11.3.0.eb From f0b5fda7edcaaae28bb37d10546ae5112b6348ab Mon Sep 17 00:00:00 2001 From: Thomas Roeblitz Date: Fri, 6 Oct 2023 18:43:04 +0200 Subject: [PATCH 13/27] move Java to stack file for system toolchain --- .github/workflows/test_eessi.yml | 1 + eessi-2023.06-eb-4.8.1-2022a.yml | 2 -- eessi-2023.06-eb-4.8.1-system.yml | 3 +++ 3 files changed, 4 insertions(+), 2 deletions(-) create mode 100644 eessi-2023.06-eb-4.8.1-system.yml diff --git a/.github/workflows/test_eessi.yml b/.github/workflows/test_eessi.yml index 832d4cf74f..64269d2982 100644 --- a/.github/workflows/test_eessi.yml +++ b/.github/workflows/test_eessi.yml @@ -26,6 +26,7 @@ jobs: - eessi-2023.06-eb-4.7.2-system.yml - eessi-2023.06-eb-4.8.0-system.yml - eessi-2023.06-eb-4.8.1-2022a.yml + - eessi-2023.06-eb-4.8.1-system.yml steps: - name: Check out software-layer repository uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0 diff --git a/eessi-2023.06-eb-4.8.1-2022a.yml b/eessi-2023.06-eb-4.8.1-2022a.yml index f8caa95a54..b1bbe71da7 100644 --- a/eessi-2023.06-eb-4.8.1-2022a.yml +++ b/eessi-2023.06-eb-4.8.1-2022a.yml @@ -5,8 +5,6 @@ easyconfigs: - Bowtie2-2.4.5-GCC-11.3.0.eb - FastTree-2.1.11-GCCcore-11.3.0.eb - SAMtools-1.16.1-GCC-11.3.0.eb - # wraps around Java/11.0.20 - - Java-11.eb - gzip-1.12-GCCcore-11.3.0.eb - lz4-1.9.3-GCCcore-11.3.0.eb - zstd-1.5.2-GCCcore-11.3.0.eb diff --git a/eessi-2023.06-eb-4.8.1-system.yml b/eessi-2023.06-eb-4.8.1-system.yml new file mode 100644 index 0000000000..fb3f7af4cb --- /dev/null +++ b/eessi-2023.06-eb-4.8.1-system.yml @@ -0,0 +1,3 @@ +easyconfigs: + # wraps around Java/11.0.20 + - Java-11.eb From 3fc94ed6ac3889c3d0f5afe19a89bcb4ac867732 Mon Sep 17 00:00:00 2001 From: Thomas Roeblitz Date: Fri, 6 Oct 2023 19:49:04 +0200 Subject: [PATCH 14/27] filter out .modulerc.lua (for Java) in create_tarball.sh, see EESSI/software-layer PR-327 --- create_tarball.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/create_tarball.sh b/create_tarball.sh index b6c72b341d..65f6efc2dc 100755 --- a/create_tarball.sh +++ b/create_tarball.sh @@ -52,7 +52,7 @@ if [ -d ${pilot_version}/software/${os}/${cpu_arch_subdir}/modules ]; then find ${pilot_version}/software/${os}/${cpu_arch_subdir}/modules -type l | grep -v '/\.wh\.' >> ${files_list} # module files and symlinks find ${pilot_version}/software/${os}/${cpu_arch_subdir}/modules/all -type f -o -type l \ - | grep -v '/\.wh\.' | sed -e 's/.lua$//' | sed -e 's@.*/modules/all/@@g' | sort -u \ + | grep -v '/\.wh\.' | grep -v '/\.modulerc\.lua' | sed -e 's/.lua$//' | sed -e 's@.*/modules/all/@@g' | sort -u \ >> ${module_files_list} fi if [ -d ${pilot_version}/software/${os}/${cpu_arch_subdir}/software -a -r ${module_files_list} ]; then From e7a627e67bf064b8220687721673840e38a38d08 Mon Sep 17 00:00:00 2001 From: Thomas Roeblitz Date: Fri, 6 Oct 2023 21:14:32 +0200 Subject: [PATCH 15/27] {2023.06}[foss/2022a] add Boost.Python/1.79.0 --- eessi-2023.06-eb-4.8.1-2022a.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/eessi-2023.06-eb-4.8.1-2022a.yml b/eessi-2023.06-eb-4.8.1-2022a.yml index b1bbe71da7..dcbdce0935 100644 --- a/eessi-2023.06-eb-4.8.1-2022a.yml +++ b/eessi-2023.06-eb-4.8.1-2022a.yml @@ -8,3 +8,4 @@ easyconfigs: - gzip-1.12-GCCcore-11.3.0.eb - lz4-1.9.3-GCCcore-11.3.0.eb - zstd-1.5.2-GCCcore-11.3.0.eb + - Boost.Python-1.79.0-GCC-11.3.0.eb From 290e3cbcb6a64e8716e9158d0e93bc1f137d676f Mon Sep 17 00:00:00 2001 From: Thomas Roeblitz Date: Fri, 6 Oct 2023 21:26:54 +0200 Subject: [PATCH 16/27] {2023.06}[foss/2022a] add bio packages - set 2 --- eessi-2023.06-eb-4.8.1-2022a.yml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/eessi-2023.06-eb-4.8.1-2022a.yml b/eessi-2023.06-eb-4.8.1-2022a.yml index b1bbe71da7..993f9db4d5 100644 --- a/eessi-2023.06-eb-4.8.1-2022a.yml +++ b/eessi-2023.06-eb-4.8.1-2022a.yml @@ -8,3 +8,10 @@ easyconfigs: - gzip-1.12-GCCcore-11.3.0.eb - lz4-1.9.3-GCCcore-11.3.0.eb - zstd-1.5.2-GCCcore-11.3.0.eb + - AdapterRemoval-2.3.3-GCC-11.3.0.eb + - BBMap-39.01-GCC-11.3.0.eb + - Beast-2.7.3-GCC-11.3.0.eb + - BEDTools-2.30.0-GCC-11.3.0.eb + - Bio-DB-HTS-3.01-GCC-11.3.0.eb + - Bio-SearchIO-hmmer-1.7.3-GCC-11.3.0.eb + - BWA-0.7.17-GCCcore-11.3.0.eb From 3351f05dd462a70983588f4976501118465dd2e2 Mon Sep 17 00:00:00 2001 From: Thomas Roeblitz Date: Fri, 6 Oct 2023 22:22:35 +0200 Subject: [PATCH 17/27] {2023.06}[foss/2022a] add NCO/5.1.0 --- eessi-2023.06-eb-4.8.1-2022a.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/eessi-2023.06-eb-4.8.1-2022a.yml b/eessi-2023.06-eb-4.8.1-2022a.yml index b1bbe71da7..58b6864d81 100644 --- a/eessi-2023.06-eb-4.8.1-2022a.yml +++ b/eessi-2023.06-eb-4.8.1-2022a.yml @@ -8,3 +8,4 @@ easyconfigs: - gzip-1.12-GCCcore-11.3.0.eb - lz4-1.9.3-GCCcore-11.3.0.eb - zstd-1.5.2-GCCcore-11.3.0.eb + - NCO-5.1.0-foss-2022a.eb From 0a62656688dd14984fcb27f0185e86a9b1fec6e8 Mon Sep 17 00:00:00 2001 From: Thomas Roeblitz Date: Fri, 6 Oct 2023 22:46:02 +0200 Subject: [PATCH 18/27] removed BBMap because it failed to build --- eessi-2023.06-eb-4.8.1-2022a.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/eessi-2023.06-eb-4.8.1-2022a.yml b/eessi-2023.06-eb-4.8.1-2022a.yml index 993f9db4d5..679b1c8092 100644 --- a/eessi-2023.06-eb-4.8.1-2022a.yml +++ b/eessi-2023.06-eb-4.8.1-2022a.yml @@ -9,7 +9,6 @@ easyconfigs: - lz4-1.9.3-GCCcore-11.3.0.eb - zstd-1.5.2-GCCcore-11.3.0.eb - AdapterRemoval-2.3.3-GCC-11.3.0.eb - - BBMap-39.01-GCC-11.3.0.eb - Beast-2.7.3-GCC-11.3.0.eb - BEDTools-2.30.0-GCC-11.3.0.eb - Bio-DB-HTS-3.01-GCC-11.3.0.eb From 5935726294e83c8d8e5baf65b7072d1292ff6d2f Mon Sep 17 00:00:00 2001 From: Thomas Roeblitz Date: Fri, 6 Oct 2023 22:57:47 +0200 Subject: [PATCH 19/27] use updated CMakeMake easyblock for netCDF --- eessi-2023.06-eb-4.8.1-2022a.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/eessi-2023.06-eb-4.8.1-2022a.yml b/eessi-2023.06-eb-4.8.1-2022a.yml index 58b6864d81..13f0383a88 100644 --- a/eessi-2023.06-eb-4.8.1-2022a.yml +++ b/eessi-2023.06-eb-4.8.1-2022a.yml @@ -8,4 +8,9 @@ easyconfigs: - gzip-1.12-GCCcore-11.3.0.eb - lz4-1.9.3-GCCcore-11.3.0.eb - zstd-1.5.2-GCCcore-11.3.0.eb + - netCDF-4.9.0-gompi-2022b.eb: + # use updated CMakeMake easyblock to avoid that -DCMAKE_SKIP_RPATH=ON is used, which breaks the netCDF test step + # see https://github.com/easybuilders/easybuild-easyblocks/pull/3012 + options: + include-easyblocks-from-pr: 3012 - NCO-5.1.0-foss-2022a.eb From 5fcf6f2df41e48a7f4dabb7cbbe52a3fe5b4bbc2 Mon Sep 17 00:00:00 2001 From: Thomas Roeblitz Date: Sat, 7 Oct 2023 08:03:13 +0200 Subject: [PATCH 20/27] build netCDF for 2022a (was 2022b) --- eessi-2023.06-eb-4.8.1-2022a.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eessi-2023.06-eb-4.8.1-2022a.yml b/eessi-2023.06-eb-4.8.1-2022a.yml index 13f0383a88..4a7243338f 100644 --- a/eessi-2023.06-eb-4.8.1-2022a.yml +++ b/eessi-2023.06-eb-4.8.1-2022a.yml @@ -8,7 +8,7 @@ easyconfigs: - gzip-1.12-GCCcore-11.3.0.eb - lz4-1.9.3-GCCcore-11.3.0.eb - zstd-1.5.2-GCCcore-11.3.0.eb - - netCDF-4.9.0-gompi-2022b.eb: + - netCDF-4.9.0-gompi-2022a.eb: # use updated CMakeMake easyblock to avoid that -DCMAKE_SKIP_RPATH=ON is used, which breaks the netCDF test step # see https://github.com/easybuilders/easybuild-easyblocks/pull/3012 options: From 5fcd337e2ce23c73c2b0a412b0ea179c08797c98 Mon Sep 17 00:00:00 2001 From: Thomas Roeblitz Date: Sat, 7 Oct 2023 09:29:05 +0200 Subject: [PATCH 21/27] remove Beast (dependency Clang failed on aarch64) --- eessi-2023.06-eb-4.8.1-2022a.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/eessi-2023.06-eb-4.8.1-2022a.yml b/eessi-2023.06-eb-4.8.1-2022a.yml index 679b1c8092..8e31b0ce23 100644 --- a/eessi-2023.06-eb-4.8.1-2022a.yml +++ b/eessi-2023.06-eb-4.8.1-2022a.yml @@ -9,7 +9,6 @@ easyconfigs: - lz4-1.9.3-GCCcore-11.3.0.eb - zstd-1.5.2-GCCcore-11.3.0.eb - AdapterRemoval-2.3.3-GCC-11.3.0.eb - - Beast-2.7.3-GCC-11.3.0.eb - BEDTools-2.30.0-GCC-11.3.0.eb - Bio-DB-HTS-3.01-GCC-11.3.0.eb - Bio-SearchIO-hmmer-1.7.3-GCC-11.3.0.eb From b48487dea43de4a79e9e7c9d001ff537318c895c Mon Sep 17 00:00:00 2001 From: Thomas Roeblitz Date: Sat, 7 Oct 2023 20:49:32 +0200 Subject: [PATCH 22/27] removed BWA, also fails on aarch64/generic --- eessi-2023.06-eb-4.8.1-2022a.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/eessi-2023.06-eb-4.8.1-2022a.yml b/eessi-2023.06-eb-4.8.1-2022a.yml index 82a10ccba5..a76d41020d 100644 --- a/eessi-2023.06-eb-4.8.1-2022a.yml +++ b/eessi-2023.06-eb-4.8.1-2022a.yml @@ -17,4 +17,3 @@ easyconfigs: - NCO-5.1.0-foss-2022a.eb - AdapterRemoval-2.3.3-GCC-11.3.0.eb - BEDTools-2.30.0-GCC-11.3.0.eb - - BWA-0.7.17-GCCcore-11.3.0.eb From f3482bde4fc7aa07a765271372e7a44f9b02a379 Mon Sep 17 00:00:00 2001 From: Thomas Roeblitz Date: Sat, 7 Oct 2023 21:05:28 +0200 Subject: [PATCH 23/27] {2023.06}[foss/2022a] add bio paackages - set 3 --- eessi-2023.06-eb-4.8.1-2022a.yml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/eessi-2023.06-eb-4.8.1-2022a.yml b/eessi-2023.06-eb-4.8.1-2022a.yml index a09af3fe4b..677ff41958 100644 --- a/eessi-2023.06-eb-4.8.1-2022a.yml +++ b/eessi-2023.06-eb-4.8.1-2022a.yml @@ -15,3 +15,12 @@ easyconfigs: options: include-easyblocks-from-pr: 3012 - NCO-5.1.0-foss-2022a.eb + - Pysam-0.20.0-GCC-11.3.0.eb + - TransDecoder-5.5.0-GCC-11.3.0.eb + - VCFtools-0.1.16-GCC-11.3.0.eb + - VSEARCH-2.22.1-GCC-11.3.0.eb + - XML-LibXML-2.0207-GCCcore-11.3.0.eb + - CMake-3.24.3-GCCcore-11.3.0.eb + - elfutils-0.187-GCCcore-11.3.0.eb + - Ninja-1.10.2-GCCcore-11.3.0.eb + - Z3-4.10.2-GCCcore-11.3.0.eb From 28d26a6d96031d6cfd988464c97919e7649f3d8f Mon Sep 17 00:00:00 2001 From: Thomas Roeblitz Date: Sat, 7 Oct 2023 21:31:14 +0200 Subject: [PATCH 24/27] {2023.06}[foss/2022a] add oneTBB --- eessi-2023.06-eb-4.8.1-2022a.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/eessi-2023.06-eb-4.8.1-2022a.yml b/eessi-2023.06-eb-4.8.1-2022a.yml index a09af3fe4b..b483523198 100644 --- a/eessi-2023.06-eb-4.8.1-2022a.yml +++ b/eessi-2023.06-eb-4.8.1-2022a.yml @@ -15,3 +15,4 @@ easyconfigs: options: include-easyblocks-from-pr: 3012 - NCO-5.1.0-foss-2022a.eb + - tbb-2021.5.0-GCCcore-11.3.0.eb From 335b63d396b5eaf40ebb56ab33d3a8b8e96cad82 Mon Sep 17 00:00:00 2001 From: Thomas Roeblitz Date: Sat, 7 Oct 2023 21:43:23 +0200 Subject: [PATCH 25/27] removed VSEARCH, failed to build for all architectures --- eessi-2023.06-eb-4.8.1-2022a.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/eessi-2023.06-eb-4.8.1-2022a.yml b/eessi-2023.06-eb-4.8.1-2022a.yml index 677ff41958..dc2377459d 100644 --- a/eessi-2023.06-eb-4.8.1-2022a.yml +++ b/eessi-2023.06-eb-4.8.1-2022a.yml @@ -18,7 +18,6 @@ easyconfigs: - Pysam-0.20.0-GCC-11.3.0.eb - TransDecoder-5.5.0-GCC-11.3.0.eb - VCFtools-0.1.16-GCC-11.3.0.eb - - VSEARCH-2.22.1-GCC-11.3.0.eb - XML-LibXML-2.0207-GCCcore-11.3.0.eb - CMake-3.24.3-GCCcore-11.3.0.eb - elfutils-0.187-GCCcore-11.3.0.eb From f69f0be5354c068180eaebcf8e53c2182b5edd7d Mon Sep 17 00:00:00 2001 From: Thomas Roeblitz Date: Sat, 7 Oct 2023 22:18:06 +0200 Subject: [PATCH 26/27] {2023.06}[foss/2022a] add SciPy-bundle --- eb_hooks.py | 24 ++++++++++++++++++++++++ eessi-2023.06-eb-4.8.1-2022a.yml | 1 + 2 files changed, 25 insertions(+) diff --git a/eb_hooks.py b/eb_hooks.py index e66b21278d..084b78e5e0 100644 --- a/eb_hooks.py +++ b/eb_hooks.py @@ -18,6 +18,9 @@ from distutils.version import LooseVersion +CPU_TARGET_NEOVERSE_V1 = 'aarch64/neoverse_v1' + + EESSI_RPATH_OVERRIDE_ATTR = 'orig_rpath_override_dirs' @@ -248,6 +251,23 @@ def pre_configure_hook_wrf_aarch64(self, *args, **kwargs): else: raise EasyBuildError("WRF-specific hook triggered for non-WRF easyconfig?!") + +def pre_test_hook(self,*args, **kwargs): + """Main pre-test hook: trigger custom functions based on software name.""" + if self.name in PRE_TEST_HOOKS: + PRE_TEST_HOOKS[self.name](self, *args, **kwargs) + + +def pre_test_hook_ignore_failing_tests_SciPybundle(self, *args, **kwargs): + """ + Pre-test hook for SciPy-bundle: skip failing tests for SciPy-bundle 2021.10 (currently the only version that is failing). + In previous versions we were not as strict yet on the numpy/SciPy tests + """ + cpu_target = get_eessi_envvar('EESSI_SOFTWARE_SUBDIR') + if self.name == 'SciPy-bundle' and self.version == '2021.10' and cpu_target == CPU_TARGET_NEOVERSE_V1: + self.cfg['testopts'] = "|| echo ignoring failing tests" + + PARSE_HOOKS = { 'CGAL': parse_hook_cgal_toolchainopts_precise, 'fontconfig': parse_hook_fontconfig_add_fonts, @@ -265,3 +285,7 @@ def pre_configure_hook_wrf_aarch64(self, *args, **kwargs): 'OpenBLAS': pre_configure_hook_openblas_optarch_generic, 'WRF': pre_configure_hook_wrf_aarch64, } + +PRE_TEST_HOOKS = { + 'SciPy-bundle': pre_test_hook_ignore_failing_tests_SciPybundle, +} diff --git a/eessi-2023.06-eb-4.8.1-2022a.yml b/eessi-2023.06-eb-4.8.1-2022a.yml index a09af3fe4b..7bce2c416b 100644 --- a/eessi-2023.06-eb-4.8.1-2022a.yml +++ b/eessi-2023.06-eb-4.8.1-2022a.yml @@ -15,3 +15,4 @@ easyconfigs: options: include-easyblocks-from-pr: 3012 - NCO-5.1.0-foss-2022a.eb + - SciPy-bundle-2022.05-foss-2022a.eb From fb0727ca9282f008214e89bf98f7d06464d3be05 Mon Sep 17 00:00:00 2001 From: Thomas Roeblitz Date: Sat, 7 Oct 2023 22:42:49 +0200 Subject: [PATCH 27/27] {2023.06}[foss/2022a] add Xvfb --- eessi-2023.06-eb-4.8.1-2022a.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/eessi-2023.06-eb-4.8.1-2022a.yml b/eessi-2023.06-eb-4.8.1-2022a.yml index a09af3fe4b..b714fcdcae 100644 --- a/eessi-2023.06-eb-4.8.1-2022a.yml +++ b/eessi-2023.06-eb-4.8.1-2022a.yml @@ -15,3 +15,8 @@ easyconfigs: options: include-easyblocks-from-pr: 3012 - NCO-5.1.0-foss-2022a.eb + - Xvfb-21.1.3-GCCcore-11.3.0.eb: + # enable exec permissions for xvfb-run after copying; + # need to also enable user write permissions on xvfb-run to ensure that copying with preserved permissions works + options: + from-pr: 18834