Skip to content

Commit 07fcfc2

Browse files
committed
⬆️ 👷 Update workflows to ubuntu-24.04
1 parent 776e6b7 commit 07fcfc2

File tree

5 files changed

+120
-61
lines changed

5 files changed

+120
-61
lines changed

.github/workflows/asciidoctor-ghpages.yml

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ env:
1212
jobs:
1313
configure:
1414
name: Configure Github Pages Publishing
15-
runs-on: ${{ github.repository_owner == 'intel' && 'intel-' || '' }}ubuntu-22.04
15+
runs-on: ${{ github.repository_owner == 'intel' && 'intel-' || '' }}ubuntu-24.04
1616
outputs:
1717
enable_publish: ${{ steps.check.outputs.isfork == 'NO' }}
1818
steps:
@@ -30,18 +30,17 @@ jobs:
3030
build:
3131
needs: configure
3232
name: Build Documentation
33-
runs-on: ${{ github.repository_owner == 'intel' && 'intel-' || '' }}ubuntu-22.04
33+
runs-on: ${{ github.repository_owner == 'intel' && 'intel-' || '' }}ubuntu-24.04
3434
steps:
3535
- name: Checkout source
3636
uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 # v4.2.0
3737
- name: Setup Node.js
3838
uses: actions/setup-node@0a44ba7841725637a19e28fa30b79a866c81b0a6 # v4.0.4
3939
with:
40-
node-version: 18
40+
node-version: 20
4141
- name: Install Mermaid
4242
run: |
43-
sudo npm install -g @mermaid-js/[email protected]
44-
node /usr/local/lib/node_modules/@mermaid-js/mermaid-cli/node_modules/puppeteer/install.js
43+
sudo npm install -g @mermaid-js/[email protected]
4544
- name: Install asciidoctor
4645
run: |
4746
sudo apt update
@@ -73,7 +72,7 @@ jobs:
7372
environment:
7473
name: github-pages
7574
url: ${{ steps.deployment.outputs.page_url }}
76-
runs-on: ${{ github.repository_owner == 'intel' && 'intel-' || '' }}ubuntu-22.04
75+
runs-on: ${{ github.repository_owner == 'intel' && 'intel-' || '' }}ubuntu-24.04
7776
steps:
7877
- name: Deploy to github pages
7978
id: deployment

.github/workflows/performance_test.yml

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,21 +8,28 @@ on:
88
branches: [ main ]
99

1010
env:
11+
DEBIAN_FRONTEND: noninteractive
12+
CMAKE_GENERATOR: Ninja
1113
BUILD_TYPE: Release
14+
LLVM_VERSION: 18
1215

1316
jobs:
1417
performance_test:
15-
runs-on: ${{ github.repository_owner == 'intel' && 'intel-' || '' }}ubuntu-latest
18+
runs-on: ${{ github.repository_owner == 'intel' && 'intel-' || '' }}ubuntu-24.04
1619
steps:
1720
- uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 # v4.2.0
1821

1922
- name: Install compiler
20-
run: sudo apt update && sudo apt-get install -y clang-14
23+
run: sudo apt update && sudo apt install -y clang-${{env.LLVM_VERSION}}
24+
25+
- name: Install build tools
26+
run: |
27+
sudo apt install -y ninja-build
2128
2229
- name: Configure CMake
2330
env:
24-
CC: "/usr/lib/llvm-14/bin/clang"
25-
CXX: "/usr/lib/llvm-14/bin/clang++"
31+
CC: "/usr/lib/llvm-${{env.LLVM_VERSION}}/bin/clang"
32+
CXX: "/usr/lib/llvm-${{env.LLVM_VERSION}}/bin/clang++"
2633
CXX_STANDARD: 20
2734
run: cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}}
2835

.github/workflows/release.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ env:
1111

1212
jobs:
1313
release:
14-
runs-on: ${{ github.repository_owner == 'intel' && 'intel-' || '' }}ubuntu-latest
14+
runs-on: ${{ github.repository_owner == 'intel' && 'intel-' || '' }}ubuntu-24.04
1515
steps:
1616
- uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 # v4.2.0
1717
with:

.github/workflows/single_header.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ concurrency:
1717

1818
jobs:
1919
build_single_header:
20-
runs-on: ${{ github.repository_owner == 'intel' && 'intel-' || '' }}ubuntu-latest
20+
runs-on: ${{ github.repository_owner == 'intel' && 'intel-' || '' }}ubuntu-24.04
2121
steps:
2222
- uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 # v4.2.0
2323

.github/workflows/unit_tests.yml

Lines changed: 102 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -21,13 +21,13 @@ concurrency:
2121
cancel-in-progress: true
2222

2323
jobs:
24-
build_and_test:
25-
runs-on: ${{ github.repository_owner == 'intel' && 'intel-' || '' }}ubuntu-22.04
24+
build_and_test_24:
25+
runs-on: ${{ github.repository_owner == 'intel' && 'intel-' || '' }}ubuntu-24.04
2626
strategy:
2727
fail-fast: false
2828
matrix:
2929
compiler: [clang, gcc]
30-
version: [12, 13, 14, 15, 16, 17, 18]
30+
version: [12, 13, 16, 17, 18]
3131
cxx_standard: [20]
3232
stdlib: [libstdc++, libc++]
3333
build_type: [Debug]
@@ -38,60 +38,42 @@ jobs:
3838
cxx_flags: "-stdlib=libstdc++"
3939
- version: 18
4040
compiler: clang
41-
install: wget https://apt.llvm.org/llvm.sh && chmod +x llvm.sh && sudo ./llvm.sh 18
41+
install: sudo apt update && sudo apt install -y clang-18
4242
toolchain_root: "/usr/lib/llvm-18"
4343
- version: 18
4444
compiler: clang
4545
stdlib: libc++
46-
install: wget https://apt.llvm.org/llvm.sh && chmod +x llvm.sh && sudo ./llvm.sh 18 && sudo apt install -y libc++-18-dev libc++abi-18-dev
46+
install: sudo apt update && sudo apt install -y clang-18 libc++-18-dev libc++abi-18-dev
4747
cxx_flags: "-stdlib=libc++"
4848
- version: 17
4949
compiler: clang
50-
install: wget https://apt.llvm.org/llvm.sh && chmod +x llvm.sh && sudo ./llvm.sh 17
50+
install: sudo apt update && sudo apt install -y clang-17
5151
toolchain_root: "/usr/lib/llvm-17"
5252
- version: 17
5353
compiler: clang
5454
stdlib: libc++
55-
install: wget https://apt.llvm.org/llvm.sh && chmod +x llvm.sh && sudo ./llvm.sh 17 && sudo apt install -y libc++-17-dev libc++abi-17-dev
55+
install: sudo apt update && sudo apt install -y clang-17 libc++-17-dev libc++abi-17-dev
5656
cxx_flags: "-stdlib=libc++"
5757
- version: 16
5858
compiler: clang
59-
install: wget https://apt.llvm.org/llvm.sh && chmod +x llvm.sh && sudo ./llvm.sh 16
59+
install: sudo apt update && sudo apt install -y clang-16
6060
toolchain_root: "/usr/lib/llvm-16"
6161
- version: 16
6262
compiler: clang
6363
stdlib: libc++
64-
install: wget https://apt.llvm.org/llvm.sh && chmod +x llvm.sh && sudo ./llvm.sh 16 && sudo apt install -y libc++-16-dev libc++abi-16-dev
65-
cxx_flags: "-stdlib=libc++"
66-
- version: 15
67-
compiler: clang
68-
install: sudo apt update && sudo apt install -y clang-15
69-
toolchain_root: "/usr/lib/llvm-15"
70-
- version: 15
71-
compiler: clang
72-
stdlib: libc++
73-
install: sudo apt update && sudo apt install -y clang-15 libc++-15-dev libc++abi-15-dev
74-
cxx_flags: "-stdlib=libc++"
75-
- version: 14
76-
compiler: clang
77-
install: sudo apt update && sudo apt install -y clang-14
78-
toolchain_root: "/usr/lib/llvm-14"
79-
- version: 14
80-
compiler: clang
81-
stdlib: libc++
82-
install: sudo apt update && sudo apt install -y clang-14 libc++-14-dev libc++abi-14-dev
64+
install: sudo apt update && sudo apt install -y clang-16 libc++-16-dev libc++abi-16-dev
8365
cxx_flags: "-stdlib=libc++"
8466
- compiler: gcc
8567
toolchain_root: "/usr"
8668
cxx_flags: ""
8769
- version: 13
8870
compiler: gcc
89-
install: sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test && sudo apt update && sudo apt install -y gcc-13 g++-13
71+
install: sudo apt update && sudo apt install -y gcc-13 g++-13
9072
cc: "gcc-13"
9173
cxx: "g++-13"
9274
- version: 12
9375
compiler: gcc
94-
install: sudo apt update && sudo apt install -y gcc-12
76+
install: sudo apt update && sudo apt install -y gcc-12 g++-12
9577
cc: "gcc-12"
9678
cxx: "g++-12"
9779
cxx_flags: ""
@@ -102,13 +84,6 @@ jobs:
10284
version: 17
10385
- compiler: gcc
10486
version: 16
105-
- compiler: gcc
106-
version: 15
107-
- compiler: gcc
108-
version: 14
109-
- compiler: clang
110-
version: 14
111-
stdlib: libstdc++
11287
- compiler: clang
11388
version: 13
11489
- compiler: clang
@@ -157,8 +132,87 @@ jobs:
157132
working-directory: ${{github.workspace}}/build
158133
run: ctest --output-on-failure -j $(nproc) -C ${{matrix.build_type}}
159134

160-
quality_checks_pass:
135+
build_and_test_22:
161136
runs-on: ${{ github.repository_owner == 'intel' && 'intel-' || '' }}ubuntu-22.04
137+
strategy:
138+
fail-fast: false
139+
matrix:
140+
compiler: [clang]
141+
version: [14, 15]
142+
cxx_standard: [20]
143+
stdlib: [libstdc++, libc++]
144+
build_type: [Debug]
145+
include:
146+
- compiler: clang
147+
cc: "clang"
148+
cxx: "clang++"
149+
cxx_flags: "-stdlib=libstdc++"
150+
- version: 15
151+
compiler: clang
152+
install: sudo apt update && sudo apt install -y clang-15
153+
toolchain_root: "/usr/lib/llvm-15"
154+
- version: 15
155+
compiler: clang
156+
stdlib: libc++
157+
install: sudo apt update && sudo apt install -y clang-15 libc++-15-dev libc++abi-15-dev
158+
cxx_flags: "-stdlib=libc++"
159+
- version: 14
160+
compiler: clang
161+
install: sudo apt update && sudo apt install -y clang-14
162+
toolchain_root: "/usr/lib/llvm-14"
163+
- version: 14
164+
compiler: clang
165+
stdlib: libc++
166+
install: sudo apt update && sudo apt install -y clang-14 libc++-14-dev libc++abi-14-dev
167+
cxx_flags: "-stdlib=libc++"
168+
exclude:
169+
- compiler: clang
170+
version: 14
171+
stdlib: libstdc++
172+
173+
steps:
174+
- uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 # v4.2.0
175+
176+
- name: Install build tools
177+
run: |
178+
${{ matrix.install }}
179+
sudo apt install -y ninja-build
180+
181+
- name: Restore CPM cache
182+
env:
183+
cache-name: cpm-cache-0
184+
id: cpm-cache-restore
185+
uses: actions/cache/restore@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
186+
with:
187+
path: ~/cpm-cache
188+
key: ${{runner.os}}-${{env.cache-name}}-${{ hashFiles('**/CMakeLists.txt', 'cmake/**') }}
189+
restore-keys: |
190+
${{runner.os}}-${{env.cache-name}}-
191+
192+
- name: Configure CMake
193+
env:
194+
CC: ${{matrix.toolchain_root}}/bin/${{matrix.cc}}
195+
CXX: ${{matrix.toolchain_root}}/bin/${{matrix.cxx}}
196+
run: cmake -B ${{github.workspace}}/build -DCMAKE_CXX_STANDARD=${{matrix.cxx_standard}} -DCMAKE_CXX_FLAGS_INIT=${{matrix.cxx_flags}} -DCMAKE_BUILD_TYPE=${{matrix.build_type}} -DCPM_SOURCE_CACHE=~/cpm-cache
197+
198+
- name: Save CPM cache
199+
env:
200+
cache-name: cpm-cache-0
201+
if: steps.cpm-cache-restore.outputs.cache-hit != 'true'
202+
uses: actions/cache/save@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
203+
with:
204+
path: ~/cpm-cache
205+
key: ${{runner.os}}-${{env.cache-name}}-${{ hashFiles('**/CMakeLists.txt', 'cmake/**') }}
206+
207+
- name: Build Unit Tests
208+
run: cmake --build ${{github.workspace}}/build --config ${{matrix.build_type}} -v -t build_unit_tests
209+
210+
- name: Test
211+
working-directory: ${{github.workspace}}/build
212+
run: ctest --output-on-failure -j $(nproc) -C ${{matrix.build_type}}
213+
214+
quality_checks_pass:
215+
runs-on: ${{ github.repository_owner == 'intel' && 'intel-' || '' }}ubuntu-24.04
162216
steps:
163217
- name: Checkout target branch
164218
uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 # v4.2.0
@@ -174,17 +228,17 @@ jobs:
174228

175229
- name: Install build tools
176230
run: |
177-
wget https://apt.llvm.org/llvm.sh && chmod +x llvm.sh && sudo ./llvm.sh ${{env.DEFAULT_LLVM_VERSION}}
178-
sudo apt install -y python3-pip ninja-build clang-tidy-${{env.DEFAULT_LLVM_VERSION}} clang-format-${{env.DEFAULT_LLVM_VERSION}}
231+
sudo apt install -y pipx ninja-build clang-tidy-${{env.DEFAULT_LLVM_VERSION}} clang-format-${{env.DEFAULT_LLVM_VERSION}}
179232
180233
- name: Install cmake-format
181234
run: |
182-
sudo pip3 install --upgrade pip
183-
sudo pip3 install pyyaml cmake-format
235+
pipx install cmakelang
236+
pipx inject cmakelang pyyaml
237+
echo "/opt/pipx_bin" >> $GITHUB_PATH
184238
185239
- name: Install python quality tools
186240
run: |
187-
sudo pip3 install mypy
241+
pipx install mypy
188242
189243
- name: Restore CPM cache
190244
env:
@@ -217,7 +271,7 @@ jobs:
217271
run: cmake --build ${{github.workspace}}/build -t ci-quality
218272

219273
sanitize:
220-
runs-on: ${{ github.repository_owner == 'intel' && 'intel-' || '' }}ubuntu-22.04
274+
runs-on: ${{ github.repository_owner == 'intel' && 'intel-' || '' }}ubuntu-24.04
221275
strategy:
222276
fail-fast: false
223277
matrix:
@@ -227,12 +281,12 @@ jobs:
227281
- compiler: clang
228282
cc: "clang"
229283
cxx: "clang++"
230-
install: wget https://apt.llvm.org/llvm.sh && chmod +x llvm.sh && sudo ./llvm.sh 18
284+
install: sudo apt update && sudo apt install -y clang-18
231285
toolchain_root: "/usr/lib/llvm-18"
232286
- compiler: gcc
233287
cc: "gcc-13"
234288
cxx: "g++-13"
235-
install: sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test && sudo apt update && sudo apt install -y gcc-13 g++-13
289+
install: sudo apt update && sudo apt install -y gcc-13 gc++-13
236290
toolchain_root: "/usr"
237291

238292
steps:
@@ -281,13 +335,12 @@ jobs:
281335
run: cmake --build ${{github.workspace}}/build -t unit_tests
282336

283337
valgrind:
284-
runs-on: ${{ github.repository_owner == 'intel' && 'intel-' || '' }}ubuntu-22.04
338+
runs-on: ${{ github.repository_owner == 'intel' && 'intel-' || '' }}ubuntu-24.04
285339
steps:
286340
- uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 # v4.2.0
287341

288342
- name: Install build tools
289343
run: |
290-
sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test
291344
sudo apt update && sudo apt install -y gcc-${{env.DEFAULT_GCC_VERSION}} g++-${{env.DEFAULT_GCC_VERSION}} ninja-build valgrind
292345
293346
- name: Restore CPM cache
@@ -353,8 +406,8 @@ jobs:
353406
test $FAILSIZE = "0"
354407
355408
merge_ok:
356-
runs-on: ${{ github.repository_owner == 'intel' && 'intel-' || '' }}ubuntu-22.04
357-
needs: [build_and_test, quality_checks_pass, sanitize, valgrind]
409+
runs-on: ${{ github.repository_owner == 'intel' && 'intel-' || '' }}ubuntu-24.04
410+
needs: [build_and_test_24, build_and_test_22, quality_checks_pass, sanitize, valgrind]
358411
if: ${{ !cancelled() }}
359412
steps:
360413
- name: Enable merge

0 commit comments

Comments
 (0)