Skip to content

Commit f97749b

Browse files
authored
👷 Update CI Pipeline (#7)
1 parent 2edb9b9 commit f97749b

5 files changed

Lines changed: 40 additions & 41 deletions

File tree

.github/actions/process-linting-results/action.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ runs:
1111
shell: bash
1212
- id: stage
1313
#continue-on-error: true
14-
uses: dtinth/patch-generator-action@v1
14+
uses: Thalhammer/patch-generator-action@v3
1515

1616
# Unfortunately the previous action reports a failure so nothing else can run
1717
# partially a limitation on composite actions since `continue-on-error` is not

.github/workflows/compiler-support.yml

Lines changed: 15 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -11,31 +11,35 @@ jobs:
1111
fail-fast: false
1212
matrix:
1313
compiler:
14+
- { tag: "ubuntu-2404_clang-16", name: "Ubuntu 24.04 Clang 16", cxx: "/usr/bin/clang++-16", cc: "/usr/bin/clang-16", runs-on: "ubuntu-24.04" }
15+
- { tag: "ubuntu-2404_clang-17", name: "Ubuntu 24.04 Clang 17", cxx: "/usr/bin/clang++-17", cc: "/usr/bin/clang-17", runs-on: "ubuntu-24.04" }
16+
- { tag: "ubuntu-2404_clang-18", name: "Ubuntu 24.04 Clang 18", cxx: "/usr/bin/clang++-18", cc: "/usr/bin/clang-18", runs-on: "ubuntu-24.04" }
17+
- { tag: "ubuntu-2404_gcc-12", name: "Ubuntu 24.04 G++ 12", cxx: "/usr/bin/g++-12", cc: "/usr/bin/gcc-12", runs-on: "ubuntu-24.04" }
18+
- { tag: "ubuntu-2404_gcc-13", name: "Ubuntu 24.04 G++ 13", cxx: "/usr/bin/g++-13", cc: "/usr/bin/gcc-13", runs-on: "ubuntu-24.04" }
19+
- { tag: "ubuntu-2404_gcc-14", name: "Ubuntu 24.04 G++ 14", cxx: "/usr/bin/g++-14", cc: "/usr/bin/gcc-14", runs-on: "ubuntu-24.04" }
1420
- { tag: "ubuntu-2204_clang-13", name: "Ubuntu 22.04 Clang 13", cxx: "/usr/bin/clang++-13", cc: "/usr/bin/clang-13", runs-on: "ubuntu-22.04" }
1521
- { tag: "ubuntu-2204_clang-14", name: "Ubuntu 22.04 Clang 14", cxx: "/usr/bin/clang++-14", cc: "/usr/bin/clang-14", runs-on: "ubuntu-22.04" }
1622
- { tag: "ubuntu-2204_clang-15", name: "Ubuntu 22.04 Clang 15", cxx: "/usr/bin/clang++-15", cc: "/usr/bin/clang-15", runs-on: "ubuntu-22.04" }
1723
- { tag: "ubuntu-2204_gcc-10", name: "Ubuntu 22.04 G++ 10", cxx: "/usr/bin/g++-10", cc: "/usr/bin/gcc-10", runs-on: "ubuntu-22.04" }
1824
- { tag: "ubuntu-2204_gcc-11", name: "Ubuntu 22.04 G++ 11", cxx: "/usr/bin/g++-11", cc: "/usr/bin/gcc-11", runs-on: "ubuntu-22.04" }
19-
- { tag: "ubuntu-2004_clang-12", name: "Ubuntu 20.04 Clang 12", cxx: "/usr/bin/clang++-12", cc: "/usr/bin/clang-12", runs-on: "ubuntu-20.04" }
20-
- { tag: "ubuntu-2004_clang-11", name: "Ubuntu 20.04 Clang 11", cxx: "/usr/bin/clang++-11", cc: "/usr/bin/clang-11", runs-on: "ubuntu-20.04" }
21-
- { tag: "ubuntu-2004_clang-10", name: "Ubuntu 20.04 Clang 10", cxx: "/usr/bin/clang++-10", cc: "/usr/bin/clang-10", runs-on: "ubuntu-20.04" }
22-
- { tag: "ubuntu-2004_gcc-10", name: "Ubuntu 20.04 G++ 10", cxx: "/usr/bin/g++-10", cc: "/usr/bin/gcc-10", runs-on: "ubuntu-20.04" }
2325
runs-on: ${{ matrix.compiler.runs-on }}
2426
name: Compiler ${{ matrix.compiler.name }}
2527
env:
2628
CXX: ${{ matrix.compiler.cxx }}
2729
CC: ${{ matrix.compiler.cc }}
2830
outputs:
2931
# Because github wants us to suffer we need to list out every output instead of using a matrix statement or some kind of dynamic setting
32+
ubuntu-2404_clang-16: ${{ steps.status.outputs.ubuntu-2404_clang-16 }}
33+
ubuntu-2404_clang-17: ${{ steps.status.outputs.ubuntu-2404_clang-17 }}
34+
ubuntu-2404_clang-18: ${{ steps.status.outputs.ubuntu-2404_clang-18 }}
35+
ubuntu-2404_gcc-12: ${{ steps.status.outputs.ubuntu-2404_gcc-12 }}
36+
ubuntu-2404_gcc-13: ${{ steps.status.outputs.ubuntu-2404_gcc-13 }}
37+
ubuntu-2404_gcc-14: ${{ steps.status.outputs.ubuntu-2404_gcc-14 }}
3038
ubuntu-2204_clang-13: ${{ steps.status.outputs.ubuntu-2204_clang-13 }}
3139
ubuntu-2204_clang-14: ${{ steps.status.outputs.ubuntu-2204_clang-14 }}
3240
ubuntu-2204_clang-15: ${{ steps.status.outputs.ubuntu-2204_clang-15 }}
3341
ubuntu-2204_gcc-10: ${{ steps.status.outputs.ubuntu-2204_gcc-10 }}
3442
ubuntu-2204_gcc-11: ${{ steps.status.outputs.ubuntu-2204_gcc-11 }}
35-
ubuntu-2004_clang-12: ${{ steps.status.outputs.ubuntu-2004_clang-12 }}
36-
ubuntu-2004_clang-11: ${{ steps.status.outputs.ubuntu-2004_clang-11 }}
37-
ubuntu-2004_clang-10: ${{ steps.status.outputs.ubuntu-2004_clang-10 }}
38-
ubuntu-2004_gcc-10: ${{ steps.status.outputs.ubuntu-2004_gcc-10 }}
3943
defaults:
4044
run:
4145
shell: bash -l {0}
@@ -49,26 +53,15 @@ jobs:
4953
sudo apt autoremove libstdc++-13-dev gcc-13 libgcc-13-dev
5054
sudo apt install -y --no-install-recommends libstdc++-12-dev gcc-12 libgcc-12-dev
5155
- name: Install dependencies
52-
if: startsWith(matrix.compiler.tag,'ubuntu-2204')
53-
run: |
54-
sudo apt install -y --no-install-recommends liburing-dev
55-
- name: Install dependencies
56-
if: startsWith(matrix.compiler.tag,'ubuntu-2004')
57-
run: |
58-
sudo apt install -y --no-install-recommends libc6-dev wget
59-
wget http://de.archive.ubuntu.com/ubuntu/pool/main/libu/liburing/liburing2_2.1-2build1_amd64.deb
60-
wget http://de.archive.ubuntu.com/ubuntu/pool/main/libu/liburing/liburing-dev_2.1-2build1_amd64.deb
61-
sudo dpkg -i liburing*.deb
62-
rm liburing*.deb
56+
run: sudo apt install -y --no-install-recommends liburing-dev
6357
- name: Install gtest
6458
uses: ./.github/actions/install/gtest
6559
- name: Configure
6660
run: cmake -S. -Bbuild -DASYNCPP_BUILD_TEST=ON -DASYNCPP_WITH_ASAN=ON -DASYNCPP_WITH_TSAN=OFF
6761
- name: Build
6862
run: cmake --build build --config Debug
6963
- name: Test
70-
working-directory: ${{ github.workspace }}/build
71-
run: ./asyncpp_uring-test
64+
run: ctest --test-dir build --output-on-failure --no-tests=error
7265
- name: Update Result
7366
id: status
7467
if: ${{ always() }}
@@ -77,7 +70,7 @@ jobs:
7770
badge-upload:
7871
if: ${{ github.event_name == 'push' && github.ref == 'refs/heads/master' && always() }}
7972
needs: [build]
80-
runs-on: ubuntu-20.04
73+
runs-on: ubuntu-24.04
8174
name: Publish badges
8275
steps:
8376
- name: Checkout repository
@@ -87,4 +80,3 @@ jobs:
8780
with:
8881
category: compiler
8982
badges: ${{ toJson(needs.build.outputs) }}
90-

.github/workflows/lint.yml

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,17 +10,20 @@ jobs:
1010
runs-on: ubuntu-22.04
1111
steps:
1212
- run: |
13-
sudo apt update && sudo apt-get install clang-format-15
13+
echo "deb http://apt.llvm.org/jammy/ llvm-toolchain-jammy-21 main" | sudo tee /etc/apt/sources.list.d/llvm.list
14+
echo "deb-src http://apt.llvm.org/jammy/ llvm-toolchain-jammy-21 main" | sudo tee -a /etc/apt/sources.list.d/llvm.list
15+
wget -qO- https://apt.llvm.org/llvm-snapshot.gpg.key | sudo tee /etc/apt/trusted.gpg.d/apt.llvm.org.asc
16+
sudo apt update && sudo apt-get install clang-format-21
1417
shopt -s globstar
1518
- uses: actions/checkout@v3
16-
- run: find \( -name "*.h" -or -name "*.cpp" \) -exec clang-format-15 -i {} \;
19+
- run: find \( -name "*.h" -or -name "*.cpp" \) -exec clang-format-21 -i {} \;
1720
- run: find \( -name "*.h" -or -name "*.cpp" \) -exec ./.github/scripts/add-newline-if-missing.sh {} \;
1821
- uses: ./.github/actions/process-linting-results
1922
with:
2023
linter_name: clang-format
2124

2225
cmake-format:
23-
runs-on: ubuntu-20.04
26+
runs-on: ubuntu-24.04
2427
steps:
2528
- uses: actions/setup-python@v4.3.0
2629
with:
@@ -35,7 +38,7 @@ jobs:
3538
linter_name: cmake-format
3639

3740
line-ending:
38-
runs-on: ubuntu-20.04
41+
runs-on: ubuntu-24.04
3942
steps:
4043
- uses: actions/checkout@v3
4144
- run: git add --renormalize .

CMakeLists.txt

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ if(ASYNCPP_BUILD_TEST)
7777
if(ASYNCPP_WITH_ASAN)
7878
message(STATUS "Building with asan enabled")
7979
target_compile_options(asyncpp_uring-test PRIVATE -fsanitize=address)
80-
target_link_libraries(asyncpp_uring-test PRIVATE asan)
80+
target_link_libraries(asyncpp_uring-test PRIVATE -fsanitize=address)
8181
endif()
8282
target_compile_options(asyncpp_uring-test PRIVATE -Werror)
8383

@@ -101,10 +101,10 @@ if(ASYNCPP_BUILD_EXAMPLES)
101101

102102
if(ASYNCPP_WITH_ASAN)
103103
target_compile_options(uring-info PRIVATE -fsanitize=address)
104-
target_link_libraries(uring-info PRIVATE asan)
104+
target_link_libraries(uring-info PRIVATE -fsanitize=address)
105105
target_compile_options(echo-server PRIVATE -fsanitize=address)
106-
target_link_libraries(echo-server PRIVATE asan)
106+
target_link_libraries(echo-server PRIVATE -fsanitize=address)
107107
target_compile_options(echo-client PRIVATE -fsanitize=address)
108-
target_link_libraries(echo-client PRIVATE asan)
108+
target_link_libraries(echo-client PRIVATE -fsanitize=address)
109109
endif()
110110
endif()

README.md

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3,21 +3,25 @@ This library provides a c++20 coroutine wrapper around the modern linux io_uring
33
It is an addition to [async++](https://github.com/asyncpp/asyncpp) which provides general coroutine tasks and support classes.
44

55
Tested and supported compilers:
6-
[![ubuntu-2004_clang-10][img_ubuntu-2004_clang-10]][Compiler-Support]
7-
[![ubuntu-2004_clang-11][img_ubuntu-2004_clang-11]][Compiler-Support]
8-
[![ubuntu-2004_clang-12][img_ubuntu-2004_clang-12]][Compiler-Support]
9-
[![ubuntu-2004_gcc-10][img_ubuntu-2004_gcc-10]][Compiler-Support]
6+
[![ubuntu-2404_clang-16][img_ubuntu-2404_clang-16]][Compiler-Support]
7+
[![ubuntu-2404_clang-17][img_ubuntu-2404_clang-17]][Compiler-Support]
8+
[![ubuntu-2404_clang-18][img_ubuntu-2404_clang-18]][Compiler-Support]
9+
[![ubuntu-2404_gcc-12][img_ubuntu-2404_gcc-12]][Compiler-Support]
10+
[![ubuntu-2404_gcc-13][img_ubuntu-2404_gcc-13]][Compiler-Support]
11+
[![ubuntu-2404_gcc-14][img_ubuntu-2404_gcc-14]][Compiler-Support]
1012
[![ubuntu-2204_clang-13][img_ubuntu-2204_clang-13]][Compiler-Support]
1113
[![ubuntu-2204_clang-14][img_ubuntu-2204_clang-14]][Compiler-Support]
1214
[![ubuntu-2204_clang-15][img_ubuntu-2204_clang-15]][Compiler-Support]
13-
[![ubuntu-2204_gcc-11][img_ubuntu-2204_gcc-11]][Compiler-Support]
1415
[![ubuntu-2204_gcc-10][img_ubuntu-2204_gcc-10]][Compiler-Support]
16+
[![ubuntu-2204_gcc-11][img_ubuntu-2204_gcc-11]][Compiler-Support]
1517

1618

17-
[img_ubuntu-2004_clang-10]: https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/asyncpp/asyncpp-uring/badges/compiler/ubuntu-2004_clang-10/shields.json
18-
[img_ubuntu-2004_clang-11]: https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/asyncpp/asyncpp-uring/badges/compiler/ubuntu-2004_clang-11/shields.json
19-
[img_ubuntu-2004_clang-12]: https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/asyncpp/asyncpp-uring/badges/compiler/ubuntu-2004_clang-12/shields.json
20-
[img_ubuntu-2004_gcc-10]: https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/asyncpp/asyncpp-uring/badges/compiler/ubuntu-2004_gcc-10/shields.json
19+
[img_ubuntu-2404_clang-16]: https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/asyncpp/asyncpp-uring/badges/compiler/ubuntu-2404_clang-16/shields.json
20+
[img_ubuntu-2404_clang-17]: https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/asyncpp/asyncpp-uring/badges/compiler/ubuntu-2404_clang-17/shields.json
21+
[img_ubuntu-2404_clang-18]: https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/asyncpp/asyncpp-uring/badges/compiler/ubuntu-2404_clang-18/shields.json
22+
[img_ubuntu-2404_gcc-12]: https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/asyncpp/asyncpp-uring/badges/compiler/ubuntu-2404_gcc-12/shields.json
23+
[img_ubuntu-2404_gcc-13]: https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/asyncpp/asyncpp-uring/badges/compiler/ubuntu-2404_gcc-13/shields.json
24+
[img_ubuntu-2404_gcc-14]: https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/asyncpp/asyncpp-uring/badges/compiler/ubuntu-2404_gcc-14/shields.json
2125
[img_ubuntu-2204_clang-13]: https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/asyncpp/asyncpp-uring/badges/compiler/ubuntu-2204_clang-13/shields.json
2226
[img_ubuntu-2204_clang-14]: https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/asyncpp/asyncpp-uring/badges/compiler/ubuntu-2204_clang-14/shields.json
2327
[img_ubuntu-2204_clang-15]: https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/asyncpp/asyncpp-uring/badges/compiler/ubuntu-2204_clang-15/shields.json

0 commit comments

Comments
 (0)