44 - cron : ' 0 0 * * 0'
55 push :
66 branches :
7- - main
7+ - main
8+ - ' apl-fy[0-9][0-9]'
89 pull_request : {} # any target
910
1011jobs :
1112 unit-test :
12- runs-on : ubuntu-22.04
13+ strategy :
14+ fail-fast : false
15+ matrix :
16+ os : ['ubuntu-24.04', 'centos-9']
17+ name : Unit Test (os=${{matrix.os}})
18+ runs-on : ${{ matrix.os == 'centos-9' && 'ubuntu-24.04' || matrix.os }}
19+ container : ${{ matrix.os == 'centos-9' && 'quay.io/centos/centos:stream9' || null }}
1320 steps :
21+ - name : Set up OS
22+ if : startsWith(matrix.os, 'ubuntu')
23+ run : |
24+ sudo apt-get update && \
25+ sudo apt-get install -y \
26+ cmake ninja-build ruby build-essential \
27+ libssl-dev \
28+ valgrind gcovr xmlstarlet
29+ - name : Set up OS
30+ if : startsWith(matrix.os, 'centos')
31+ run : |
32+ dnf config-manager --set-enabled crb
33+ dnf install -y epel-release
34+ dnf install -y \
35+ git rsync \
36+ cmake ninja-build \
37+ ruby pkg-config gcc gcc-c++ ccache patch \
38+ openssl-devel \
39+ valgrind xmlstarlet python3-pip
40+ pip3 install gcovr
1441 - name : Checkout repository
1542 uses : actions/checkout@v4
1643 with :
44+ fetch-depth : 0
1745 submodules : recursive
18- - name : Set up OS
19- run : >
20- sudo apt-get update && sudo apt-get install -y
21- cmake ninja-build ruby build-essential
22- libssl-dev
23- valgrind gcovr xmlstarlet
2446 - name : ccache
2547 uses : hendrikmuhs/ccache-action@v1.2
2648 with :
2749 create-symlink : true
50+ - name : Dependencies
51+ run : ./deps.sh
2852 - name : Prep
29- run : ./deps.sh && ./ prep.sh -DBUILD_DOCS=OFF
53+ run : ./prep.sh -DBUILD_DOCS=OFF -DBUILD_TESTING=ON
3054 - name : Build
3155 run : ./build.sh
3256 - name : Test
@@ -36,36 +60,40 @@ jobs:
3660 - name : Archive coverage
3761 uses : actions/upload-artifact@v4
3862 with :
39- name : unit-test -coverage
63+ name : ${{github.job}}-${{matrix.os}} -coverage
4064 path : build/default/coverage*
4165 - name : Report coverage
4266 run : |
4367 SRC_COV_PERC=$(xmlstarlet sel -t -v 'floor(/coverage/packages/package[@name="src"]/@line-rate * 100)' -n build/default/coverage-xml.xml)
4468 echo "Source coverage: ${SRC_COV_PERC}%" >> $GITHUB_STEP_SUMMARY
4569
4670 mock-bpa-test :
47- runs-on : ubuntu-22 .04
71+ runs-on : ubuntu-24 .04
4872 steps :
49- - name : Checkout repository
50- uses : actions/checkout@v4
51- with :
52- submodules : recursive
5373 - name : Set up OS
5474 run : >
5575 sudo apt-get update && sudo apt-get install -y
5676 cmake ninja-build ruby build-essential
5777 libssl-dev
5878 valgrind gcovr xmlstarlet
79+ - name : Checkout repository
80+ uses : actions/checkout@v4
81+ with :
82+ submodules : recursive
5983 - name : ccache
6084 uses : hendrikmuhs/ccache-action@v1.2
6185 with :
6286 create-symlink : true
87+ - name : Dependencies
88+ run : ./deps.sh
6389 - name : Prep
64- run : ./deps.sh && ./ prep.sh -DBUILD_DOCS=OFF
90+ run : ./prep.sh -DBUILD_DOCS=OFF -DBUILD_TESTING =OFF
6591 - name : Build
6692 run : ./build.sh
6793 - name : Install
6894 run : ./build.sh install
95+ - name : Check symbols
96+ run : echo ./check_symbols.py bsl # FIXME replace
6997 - name : Test Prep
7098 run : |
7199 sudo apt-get update && sudo apt-get install -y \
0 commit comments