Skip to content

Adding other OSes to the test CI #1

Adding other OSes to the test CI

Adding other OSes to the test CI #1

Workflow file for this run

name: 'Build and Test'
on: [push, pull_request]
jobs:
build-and-test:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
STACK: ['/cvmfs/sw-nightlies.hsf.org/key4hep/setup.sh',
'/cvmfs/sw.hsf.org/key4hep/setup.sh'
]
OS: ['aidasoft/centos7',
'key4hep/key4hep-images/alma9',
'key4hep/key4hep-images/ubuntu22'
]
steps:
- uses: actions/checkout@v2
- uses: cvmfs-contrib/github-action-cvmfs@v2
- name: Start container
run: |
docker run -it --name CI_container -v ${GITHUB_WORKSPACE}:/Package -v /cvmfs:/cvmfs:shared -d ghcr.io/${{ matrix.OS }}:latest /bin/bash
- name: CMake Configure
run: |
docker exec CI_container /bin/bash -c 'cd Package;\
mkdir -p build install;\
source ${{ matrix.STACK }};\
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.STACK }};\
cd build;\
ninja -k0;'
- name: Install
run: |
docker exec CI_container /bin/bash -c 'cd ./Package;\
source ${{ matrix.STACK }};\
cd build;\
ninja -k0 install;'
- name: Test
run: |
docker exec CI_container /bin/bash -c 'cd ./Package;\
source ${{ matrix.STACK }};\
cd build;\
ninja -k0 && ctest --output-on-failure;'