Gambit Mac Arm64 CI #1017
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Gambit Mac Arm64 CI | |
| on: | |
| push: | |
| branches: [ master, ci-* ] | |
| pull_request: | |
| branches: [ master ] | |
| schedule: | |
| - cron: '0 5 * * *' | |
| jobs: | |
| gambit_build: | |
| runs-on: [self-hosted, macOS, Arm64] | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| arch: [Arm64] | |
| defaults: | |
| run: | |
| shell: bash -eo pipefail {0} | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v2 | |
| - name: Set up build environment | |
| run: | | |
| echo "Set up the build environment" | |
| mkdir -p BUILD | |
| cd BUILD | |
| - name: Configure with cmake | |
| run: | | |
| echo "Configure with cmake" | |
| cd BUILD | |
| # Temporary ditch ColliderBit due to YODA/Python problem mentioned here: https://github.com/GambitBSM/gambit/pull/509#issuecomment-2413565672 | |
| # cmake -D PYTHON_EXECUTABLE=/usr/bin/python3 -D PYTHON_LIBRARY=/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/Current/Python3 -D PYTHON_INCLUDE_DIR=/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Headers -DCMAKE_CXX_FLAGS="-rdynamic" -DWITH_MPI=ON -DWITH_HEPMC=ON -DWITH_YODA=ON -DBUILD_FS_MODELS="CMSSM;MSSM;MDM" -Ditch="micromegas_DMsimpVectorMedVectorDM" .. | |
| cmake -D PYTHON_EXECUTABLE=/usr/bin/python3 -D PYTHON_LIBRARY=/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/Current/Python3 -D PYTHON_INCLUDE_DIR=/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Headers -DCMAKE_CXX_FLAGS="-rdynamic" -DWITH_MPI=ON -DWITH_HEPMC=OFF -DWITH_YODA=OFF -DBUILD_FS_MODELS="CMSSM;MSSM;MDM" -Ditch="ColliderBit;micromegas_DMsimpVectorMedVectorDM" .. | |
| - name: Build scanners | |
| run: | | |
| echo "Build scanners" | |
| cd BUILD | |
| make -j $(( $(sysctl -n hw.ncpu)/2 )) scanners | |
| cmake .. | |
| - name: Build Gambit | |
| run: | | |
| echo "Build GAMBIT." | |
| cd BUILD | |
| # Now build Gambit | |
| make -j $(( $(sysctl -n hw.ncpu)/2 )) gambit | |
| - name: CLI test | |
| run: | | |
| echo "Run the test of gambit help" | |
| ./gambit -h | |
| - name: Run spartan.yaml | |
| run: | | |
| echo "Testing spartan.yaml (with cout printer)" | |
| sed -i "" 's/ hdf5/ cout/g' yaml_files/spartan.yaml | |
| ./gambit -rf yaml_files/spartan.yaml | |
| backends_build: | |
| if: ${{ !cancelled() }} | |
| needs: [gambit_build] # Sets run order | |
| runs-on: [self-hosted, macOS, Arm64] | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| arch: [Arm64] | |
| defaults: | |
| run: | |
| shell: bash -eo pipefail {0} | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v2 | |
| - name: Set up build environment | |
| run: | | |
| echo "Set up the build environment" | |
| mkdir -p BUILD | |
| cd BUILD | |
| - name: Configure with cmake | |
| run: | | |
| echo "Configure with cmake" | |
| cd BUILD | |
| # Temporary ditch ColliderBit due to YODA/Python problem mentioned here: https://github.com/GambitBSM/gambit/pull/509#issuecomment-2413565672 | |
| # cmake -D PYTHON_EXECUTABLE=/usr/bin/python3 -D PYTHON_LIBRARY=/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/Current/Python3 -D PYTHON_INCLUDE_DIR=/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Headers -DCMAKE_CXX_FLAGS="-rdynamic" -DWITH_MPI=ON -DWITH_HEPMC=ON -DWITH_YODA=ON -DBUILD_FS_MODELS="CMSSM;MSSM;MDM" -Ditch="micromegas_DMsimpVectorMedVectorDM" .. | |
| cmake -D PYTHON_EXECUTABLE=/usr/bin/python3 -D PYTHON_LIBRARY=/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/Current/Python3 -D PYTHON_INCLUDE_DIR=/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Headers -DCMAKE_CXX_FLAGS="-rdynamic" -DWITH_MPI=ON -DWITH_HEPMC=OFF -DWITH_YODA=OFF -DBUILD_FS_MODELS="CMSSM;MSSM;MDM" -Ditch="ColliderBit;micromegas_DMsimpVectorMedVectorDM" .. | |
| - name: Build Backends | |
| run: | | |
| echo "Building all Backends" | |
| cd BUILD | |
| # Build backends, except those that are tested via other jobs. | |
| # This replaces the "make backends" command. | |
| ../cmake/scripts/build_backends.sh -f default_backends.txt -j 1 -s "nulike susyhit rivet contur pythia higgsbounds higgssignals ATLAS_FullLikes superiso heplikedata heplike" | |
| test_runs: | |
| if: ${{ !cancelled() }} | |
| needs: [gambit_build, backends_build] # Sets run order | |
| runs-on: [self-hosted, macOS, Arm64] | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| arch: [Arm64] | |
| defaults: | |
| run: | |
| shell: bash -eo pipefail {0} | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v2 | |
| - name: Set up build environment | |
| run: | | |
| echo "Set up the build environment" | |
| mkdir -p BUILD | |
| cd BUILD | |
| - name: Configure with cmake | |
| run: | | |
| echo "Configure with cmake" | |
| cd BUILD | |
| # Temporary ditch ColliderBit due to YODA/Python problem mentioned here: https://github.com/GambitBSM/gambit/pull/509#issuecomment-2413565672 | |
| # cmake -D PYTHON_EXECUTABLE=/usr/bin/python3 -D PYTHON_LIBRARY=/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/Current/Python3 -D PYTHON_INCLUDE_DIR=/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Headers -DCMAKE_CXX_FLAGS="-rdynamic" -DWITH_MPI=ON -DWITH_HEPMC=ON -DWITH_YODA=ON -DBUILD_FS_MODELS="CMSSM;MSSM;MDM" -Ditch="micromegas_DMsimpVectorMedVectorDM" .. | |
| cmake -D PYTHON_EXECUTABLE=/usr/bin/python3 -D PYTHON_LIBRARY=/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/Current/Python3 -D PYTHON_INCLUDE_DIR=/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Headers -DCMAKE_CXX_FLAGS="-rdynamic" -DWITH_MPI=ON -DWITH_HEPMC=OFF -DWITH_YODA=OFF -DBUILD_FS_MODELS="CMSSM;MSSM;MDM" -Ditch="ColliderBit;micromegas_DMsimpVectorMedVectorDM" .. | |
| - name: Build required scanners | |
| run: | | |
| echo "Build scanners required for test runs" | |
| cd BUILD | |
| make -j $(( $(sysctl -n hw.ncpu)/2 )) diver | |
| cmake .. | |
| - name: Build required backends | |
| run: | | |
| echo "Building backends required for test runs" | |
| cd BUILD | |
| make pythia | |
| make higgssignals | |
| make nulike | |
| make ATLAS_FullLikes | |
| make susyhit | |
| make heplike | |
| make superiso | |
| make rivet | |
| make contur | |
| echo "Running cmake again, since this is required for ColliderBit/pythia" | |
| cmake .. | |
| - name: Build Gambit | |
| run: | | |
| echo "Build GAMBIT." | |
| cd BUILD | |
| # Now build Gambit | |
| make -j $(( $(sysctl -n hw.ncpu)/2 )) gambit | |
| - name: Run ColliderBit_CMSSM.yaml | |
| run: | | |
| echo "Test run with ColliderBit_CMSSM.yaml" | |
| ./gambit -f yaml_files/ColliderBit_CMSSM.yaml | |
| - name: Run WC_lite.yaml | |
| run: | | |
| echo "Test run with WC_lite.yaml (no printing)" | |
| sed -i "" 's/ hdf5/ none/g' yaml_files/WC_lite.yaml | |
| ./gambit -f yaml_files/WC_lite.yaml | |
| standalones_build: | |
| if: ${{ !cancelled() }} | |
| needs: [gambit_build, backends_build, test_runs] # Sets run order | |
| runs-on: [self-hosted, macOS, Arm64] | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| arch: [Arm64] | |
| defaults: | |
| run: | |
| shell: bash -eo pipefail {0} | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v2 | |
| - name: Set up build environment | |
| run: | | |
| echo "Set up the build environment" | |
| mkdir -p BUILD | |
| cd BUILD | |
| - name: Configure with cmake | |
| run: | | |
| echo "Configure with cmake" | |
| cd BUILD | |
| # Temporary ditch ColliderBit due to YODA/Python problem mentioned here: https://github.com/GambitBSM/gambit/pull/509#issuecomment-2413565672 | |
| # cmake -D PYTHON_EXECUTABLE=/usr/bin/python3 -D PYTHON_LIBRARY=/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/Current/Python3 -D PYTHON_INCLUDE_DIR=/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Headers -DCMAKE_CXX_FLAGS="-rdynamic" -DWITH_MPI=ON -DWITH_HEPMC=ON -DWITH_YODA=ON -DBUILD_FS_MODELS="CMSSM;MSSM;MDM" -Ditch="micromegas_DMsimpVectorMedVectorDM" .. | |
| cmake -D PYTHON_EXECUTABLE=/usr/bin/python3 -D PYTHON_LIBRARY=/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/Current/Python3 -D PYTHON_INCLUDE_DIR=/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Headers -DCMAKE_CXX_FLAGS="-rdynamic" -DWITH_MPI=ON -DWITH_HEPMC=OFF -DWITH_YODA=OFF -DBUILD_FS_MODELS="CMSSM;MSSM;MDM" -Ditch="ColliderBit;micromegas_DMsimpVectorMedVectorDM" .. | |
| - name: Build standalones | |
| run: | | |
| echo "Test the building of the standalones" | |
| cd BUILD | |
| make standalones |