Removing legacy style to run an analysis (#327) #158
This file contains 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: benchmark | |
on: [push] | |
jobs: | |
bench: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- SETUP: '/cvmfs/sw.hsf.org/key4hep/setup.sh' | |
NAME: prod | |
- SETUP: '/cvmfs/sw-nightlies.hsf.org/key4hep/setup.sh' | |
NAME: nightly | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: cvmfs-contrib/github-action-cvmfs@v3 | |
- name: Start container | |
run: | | |
docker run -it --name CI_container -v ${GITHUB_WORKSPACE}:/Package -v /cvmfs:/cvmfs:shared -d ghcr.io/aidasoft/centos7:latest /bin/bash | |
- name: CMake Configure | |
run: | | |
docker exec CI_container /bin/bash -c 'cd Package;\ | |
mkdir -p build install;\ | |
source ${{ matrix.SETUP }};\ | |
cd build;\ | |
cmake -DCMAKE_INSTALL_PREFIX=../install -DCMAKE_CXX_STANDARD=17 -DCMAKE_CXX_FLAGS=" -fdiagnostics-color=always " -G Ninja ..;' | |
- name: Compile | |
run: | | |
docker exec CI_container /bin/bash -c 'cd ./Package;\ | |
source ${{ matrix.SETUP }};\ | |
cd build;\ | |
ninja -k0;' | |
- name: Install | |
run: | | |
docker exec CI_container /bin/bash -c 'cd ./Package;\ | |
source ${{ matrix.SETUP }};\ | |
cd build;\ | |
ninja -k0 install;' | |
- name: Test | |
run: | | |
docker exec CI_container /bin/bash -c 'cd ./Package;\ | |
source ${{ matrix.SETUP }};\ | |
cd build;\ | |
ninja -k0 && ctest --output-on-failure;' | |
- name: Prepare benchmark outputs | |
run: | | |
docker exec CI_container /bin/bash -c 'yum install -y jq | |
cd ./Package | |
jq ".[].name |= \"${{ matrix.NAME }} | \" + ." benchmarks_smaller_better.json > tmp.json | |
mv tmp.json benchmarks_smaller_better.json | |
jq ".[].name |= \"${{ matrix.NAME }} | \" + ." benchmarks_bigger_better.json > tmp.json | |
mv tmp.json benchmarks_bigger_better.json | |
' | |
- name: Store benchmark result --- smaller better | |
uses: benchmark-action/github-action-benchmark@v1 | |
with: | |
tool: 'customSmallerIsBetter' | |
output-file-path: benchmarks_smaller_better.json | |
github-token: ${{ secrets.GITHUB_TOKEN }} | |
auto-push: true | |
- name: Store benchmark result --- bigger better | |
uses: benchmark-action/github-action-benchmark@v1 | |
with: | |
tool: 'customBiggerIsBetter' | |
output-file-path: benchmarks_bigger_better.json | |
github-token: ${{ secrets.GITHUB_TOKEN }} | |
auto-push: true |