|
63 | 63 | - EESSI_VERSION: '2023.06' |
64 | 64 | COMPATIBLE_EASYCONFIG: 'M4-1.4.19-GCCcore-13.2.0.eb' |
65 | 65 | INCOMPATIBLE_EASYCONFIG: 'M4-1.4.19-GCCcore-14.2.0.eb' |
| 66 | + # Pick a site toolchain that will allow the incompatible easyconfig |
| 67 | + EESSI_SITE_TOP_LEVEL_TOOLCHAINS: '[{"GCCcore": "14.2.0"}]' |
66 | 68 | - EESSI_VERSION: '2025.06' |
67 | 69 | COMPATIBLE_EASYCONFIG: 'M4-1.4.19-GCCcore-14.2.0.eb' |
68 | 70 | INCOMPATIBLE_EASYCONFIG: 'M4-1.4.19-GCCcore-13.2.0.eb' |
| 71 | + # Pick a site toolchain that will allow the incompatible easyconfig |
| 72 | + EESSI_SITE_TOP_LEVEL_TOOLCHAINS: '[{"GCCcore": "13.2.0"}]' |
69 | 73 |
|
70 | 74 | steps: |
71 | 75 | - name: Check out software-layer repository |
|
89 | 93 |
|
90 | 94 | # Test an easyconfig that should work |
91 | 95 | eb --hooks=$PWD/eb_hooks.py "$COMPATIBLE_EASYCONFIG" --stop fetch |
| 96 | + echo "Success for hook with easyconfig $COMPATIBLE_EASYCONFIG with EESSI/${{matrix.EESSI_VERSION}}" |
92 | 97 |
|
93 | 98 | # Pick an outdated toolchain for the negative test |
94 | 99 | eb --hooks=$PWD/eb_hooks.py "$INCOMPATIBLE_EASYCONFIG" --stop fetch 2>&1 1>/dev/null | grep -q "not supported in EESSI" |
| 100 | + echo "Found expected failure for hook with easyconfig $INCOMPATIBLE_EASYCONFIG and EESSI/${{matrix.EESSI_VERSION}}" |
95 | 101 |
|
96 | 102 | # Check the override works |
97 | 103 | EESSI_OVERRIDE_TOOLCHAIN_CHECK=1 eb --hooks=$PWD/eb_hooks.py "$INCOMPATIBLE_EASYCONFIG" --stop fetch |
| 104 | + echo "Hook ignored via EESSI_OVERRIDE_TOOLCHAIN_CHECK with easyconfig $INCOMPATIBLE_EASYCONFIG and EESSI/${{matrix.EESSI_VERSION}}" |
| 105 | +
|
| 106 | + # Now check if we can set a site list of supported toolchains |
| 107 | + export EESSI_SITE_TOP_LEVEL_TOOLCHAINS=${{matrix.EESSI_SITE_TOP_LEVEL_TOOLCHAINS}} |
| 108 | + eb --hooks=$PWD/eb_hooks.py "$INCOMPATIBLE_EASYCONFIG" --stop fetch |
| 109 | + echo "Site supported toolchain $EESSI_SITE_TOP_LEVEL_TOOLCHAINS successfully used with easyconfig $INCOMPATIBLE_EASYCONFIG and EESSI/${{matrix.EESSI_VERSION}}" |
| 110 | +
|
| 111 | + # Make sure an invalid list of dicts fails |
| 112 | + export EESSI_SITE_TOP_LEVEL_TOOLCHAINS="Not a list of dicts" |
| 113 | + eb --hooks=$PWD/eb_hooks.py "$INCOMPATIBLE_EASYCONFIG" --stop fetch 2>&1 1>/dev/null | grep -q "does not contain a valid list of dictionaries" |
| 114 | + echo "Incorrect format for EESSI_SITE_TOP_LEVEL_TOOLCHAINS caught" |
| 115 | +
|
0 commit comments