diff --git a/.github/workflows/actions/ubuntu-build-deps/action.yml b/.github/workflows/actions/ubuntu-build-deps/action.yml index faeac1c..95f06be 100644 --- a/.github/workflows/actions/ubuntu-build-deps/action.yml +++ b/.github/workflows/actions/ubuntu-build-deps/action.yml @@ -33,8 +33,9 @@ runs: build-essential \ clang \ clang-tidy \ - ninja-build \ + cmake \ iwyu \ + ninja-build \ pkgconf \ wget if [ "$(lsb_release -s -r)x" == "16.04x" ]; then apt install -y clang-tools; fi diff --git a/.github/workflows/cmake.yaml b/.github/workflows/cmake.yml similarity index 52% rename from .github/workflows/cmake.yaml rename to .github/workflows/cmake.yml index b59bbec..d50beb3 100644 --- a/.github/workflows/cmake.yaml +++ b/.github/workflows/cmake.yml @@ -16,25 +16,21 @@ env: jobs: build: - runs-on: ubuntu-20.04 + strategy: + fail-fast: false + matrix: + os: [ 'ubuntu:20.04', 'ubuntu:22.04', 'ubuntu:24.04' ] + + runs-on: ubuntu-latest + container: ${{ matrix.os }} + steps: - - name: Install dependencies - run: | - sudo apt-get update - sudo apt-get install -y \ - libevent-dev \ - libssl-dev \ - libpq-dev libmariadb-dev libsqlite3-dev \ - libhiredis-dev \ - libmongoc-dev \ - libmicrohttpd-dev \ - wget - uses: actions/checkout@v4 - - name: Prometheus support - run: | - wget https://github.com/digitalocean/prometheus-client-c/releases/download/v0.1.3/libprom-dev-0.1.3-Linux.deb && \ - sudo apt install ./libprom-dev-0.1.3-Linux.deb && \ - rm ./libprom-dev-0.1.3-Linux.deb + + - name: Install dependencies + env: + DEBIAN_FRONTEND: noninteractive + uses: ./.github/workflows/actions/ubuntu-build-deps - name: Configure run: cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}}