diff --git a/.github/workflows/build-and-test-latest-kernel.yml b/.github/workflows/ci-latest-kernel.yml similarity index 96% rename from .github/workflows/build-and-test-latest-kernel.yml rename to .github/workflows/ci-latest-kernel.yml index 4a3ce044..bde07374 100644 --- a/.github/workflows/build-and-test-latest-kernel.yml +++ b/.github/workflows/ci-latest-kernel.yml @@ -78,7 +78,7 @@ jobs: -DTESTS_STATIC_LINK=ON - name: Build - run: cmake --build ${{github.workspace}}/build --config Release -j$(nproc) + run: cmake --build ${{github.workspace}}/build -j$(nproc) - name: Run Tests on QEMU timeout-minutes: 15 diff --git a/.github/workflows/build-and-test.yml b/.github/workflows/ci-main.yml similarity index 88% rename from .github/workflows/build-and-test.yml rename to .github/workflows/ci-main.yml index 3f8b884f..8b5e814a 100644 --- a/.github/workflows/build-and-test.yml +++ b/.github/workflows/ci-main.yml @@ -26,7 +26,6 @@ jobs: compiler: - { cc: clang, cxx: clang++ } - { cc: gcc, cxx: g++ } - build-type: [ Debug, Release ] sanitizer: [ tsan, asan ] steps: @@ -69,19 +68,17 @@ jobs: $SANITIZER_FLAG \ -DCMAKE_C_COMPILER=${{matrix.compiler.cc}} \ -DCMAKE_CXX_COMPILER=${{matrix.compiler.cxx}} \ - -DCMAKE_BUILD_TYPE=${{matrix.build-type}} + -DCMAKE_BUILD_TYPE=RelWithDebInfo - name: Build - run: cmake --build ${{github.workspace}}/build --config ${{matrix.build-type}} - -j$(nproc) + run: cmake --build ${{github.workspace}}/build -j$(nproc) - name: Run Tests timeout-minutes: 5 working-directory: ${{github.workspace}}/build - run: ctest --verbose -C ${{matrix.build-type}} + run: ctest --verbose - name: Run Benchmarks timeout-minutes: 5 - if: matrix.build-type == 'Release' working-directory: ${{github.workspace}} run: bash scripts/run-bench.sh -t 60 build/benchmarks diff --git a/.github/workflows/static-check.yml b/.github/workflows/ci-static-check.yml similarity index 79% rename from .github/workflows/static-check.yml rename to .github/workflows/ci-static-check.yml index e46ef784..6c623207 100644 --- a/.github/workflows/static-check.yml +++ b/.github/workflows/ci-static-check.yml @@ -13,7 +13,18 @@ on: - "**.md" jobs: - static-check: + formatting: + runs-on: ubuntu-26.04 + timeout-minutes: 2 + + steps: + - name: Checkout Repository + uses: actions/checkout@v4 + + - name: Formatting Check + run: bash ./scripts/format-all.sh + + static-analysis: runs-on: ubuntu-26.04 timeout-minutes: 10 @@ -23,10 +34,6 @@ jobs: with: submodules: true - - name: Formatting Check - run: | - bash ./scripts/format-all.sh - - name: Configure liburing run: | cd third_party/liburing @@ -44,5 +51,4 @@ jobs: -DCMAKE_EXPORT_COMPILE_COMMANDS=ON - name: Static Analysis - run: | - bash ./scripts/check-all.sh + run: bash ./scripts/check-all.sh diff --git a/.github/workflows/build-and-test-liburing-versions.yml b/.github/workflows/ci-toolchain.yml similarity index 71% rename from .github/workflows/build-and-test-liburing-versions.yml rename to .github/workflows/ci-toolchain.yml index 1680ebac..691d4531 100644 --- a/.github/workflows/build-and-test-liburing-versions.yml +++ b/.github/workflows/ci-toolchain.yml @@ -1,4 +1,4 @@ -name: CI (Versions) +name: CI (Toolchain) on: push: @@ -21,6 +21,10 @@ jobs: fail-fast: false matrix: liburing-version: [ "2.3", "2.14" ] + compiler: + - { cc: gcc, cxx: g++ } + - { cc: clang, cxx: clang++ } + generator: [ "Ninja", "Unix Makefiles" ] steps: - name: Checkout Repository and Submodules @@ -38,17 +42,18 @@ jobs: - name: Configure CMake run: | cmake -B ${{github.workspace}}/build \ + -G "${{ matrix.generator }}" \ -DBUILD_EXAMPLES=ON \ -DBUILD_BENCHMARKS=ON \ -DBUILD_TESTS=ON \ - -DCMAKE_C_COMPILER=clang \ - -DCMAKE_CXX_COMPILER=clang++ \ + -DCMAKE_C_COMPILER=${{ matrix.compiler.cc }} \ + -DCMAKE_CXX_COMPILER=${{ matrix.compiler.cxx }} \ -DCMAKE_BUILD_TYPE=Debug - name: Build - run: cmake --build ${{github.workspace}}/build --config Debug -j$(nproc) + run: cmake --build ${{github.workspace}}/build -j$(nproc) - name: Run Tests timeout-minutes: 5 working-directory: ${{github.workspace}}/build - run: ctest --verbose -C Debug + run: ctest --verbose diff --git a/.github/workflows/deploy-gh-pages.yaml b/.github/workflows/deploy-docs.yml similarity index 100% rename from .github/workflows/deploy-gh-pages.yaml rename to .github/workflows/deploy-docs.yml diff --git a/README.md b/README.md index 5fb05210..d9db9e43 100644 --- a/README.md +++ b/README.md @@ -5,11 +5,11 @@ ![Release](https://img.shields.io/github/v/release/wokron/condy) ![Stars](https://img.shields.io/github/stars/wokron/condy?style=social) -![CI (Main)](https://github.com/wokron/condy/actions/workflows/build-and-test.yml/badge.svg?branch=master) -![CI (Latest Kernel)](https://github.com/wokron/condy/actions/workflows/build-and-test-latest-kernel.yml/badge.svg?branch=master) -![CI (Versions)](https://github.com/wokron/condy/actions/workflows/build-and-test-liburing-versions.yml/badge.svg?branch=master) -![CI (Static Check)](https://github.com/wokron/condy/actions/workflows/static-check.yml/badge.svg?branch=master) -![Deploy Docs](https://github.com/wokron/condy/actions/workflows/deploy-gh-pages.yaml/badge.svg?branch=master) +![CI (Main)](https://github.com/wokron/condy/actions/workflows/ci-main.yml/badge.svg?branch=master) +![CI (Latest Kernel)](https://github.com/wokron/condy/actions/workflows/ci-latest-kernel.yml/badge.svg?branch=master) +![CI (Toolchain)](https://github.com/wokron/condy/actions/workflows/ci-toolchain.yml/badge.svg?branch=master) +![CI (Static Check)](https://github.com/wokron/condy/actions/workflows/ci-static-check.yml/badge.svg?branch=master) +![Deploy Docs](https://github.com/wokron/condy/actions/workflows/deploy-docs.yml/badge.svg?branch=master) ***C++ Asynchronous System Call Layer for Linux, Powered by io_uring and C++20 Coroutines*** diff --git a/docs/build.md b/docs/build.md index 280f14fd..859602e5 100644 --- a/docs/build.md +++ b/docs/build.md @@ -51,7 +51,7 @@ cmake -B build -S . \ -DBUILD_BENCHMARKS=ON \ -DBUILD_TESTS=ON \ -DCMAKE_BUILD_TYPE=Release -cmake --build build --config Release -j$(nproc) +cmake --build build -j$(nproc) ``` After building: