Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
31 changes: 8 additions & 23 deletions .github/workflows/build-and-test-all.yml
Original file line number Diff line number Diff line change
Expand Up @@ -216,15 +216,12 @@ jobs:
needs: get-runner-container-image
strategy:
matrix:
builder: [autotools, meson]
sanitizers: [asan+ubsan, tsan]
features: [least, full]
architecture_suffix: ${{ contains(needs.get-runner-container-image.outputs.id, 'debian-11') && fromJson('[""]') || fromJson('["", "-arm"]') }}
exclude:
- sanitizers: tsan
features: least
- architecture_suffix: '-arm'
builder: autotools
- architecture_suffix: '-arm'
features: least
- architecture_suffix: '-arm'
Expand Down Expand Up @@ -254,7 +251,7 @@ jobs:
- name: set up build
uses: ./.github/actions/cache
with:
cache-key-base: dnsdist-${{ matrix.features }}-${{ matrix.sanitizers }}-${{ matrix.builder}}${{ matrix.architecture_suffix }}-ccache
cache-key-base: dnsdist-${{ matrix.features }}-${{ matrix.sanitizers }}-meson${{ matrix.architecture_suffix }}-ccache
- name: install pip build dependencies
uses: ./.github/actions/pip-build-dependencies
with:
Expand All @@ -271,45 +268,33 @@ jobs:
- run: ${{ env.INV_CMD }} ci-build-and-install-quiche ${REPO_HOME}
if: ${{ matrix.features != 'least' }}
working-directory: ./pdns/dnsdistdist/
- run: ${{ env.INV_CMD }} ci-autoconf
if: ${{ matrix.builder == 'autotools' }}
working-directory: ./pdns/dnsdistdist/
- run: ${{ env.INV_CMD }} ci-dnsdist-configure ${{ matrix.features }} ${{ matrix.builder }} dnsdist-${{ env.BUILDER_VERSION }}
- run: ${{ env.INV_CMD }} ci-dnsdist-configure ${{ matrix.features }} dnsdist-${{ env.BUILDER_VERSION }}
working-directory: ./pdns/dnsdistdist/
if: ${{ matrix.builder != 'autotools' }}
- run: |
mkdir dnsdist-${{ env.BUILDER_VERSION }}
if: ${{ matrix.builder == 'autotools' }}
- run: ${{ env.INV_CMD }} ci-dnsdist-run-ninja dnsdist-${{ env.BUILDER_VERSION }}
working-directory: ./pdns/dnsdistdist/
- run: ${{ env.INV_CMD }} ci-dnsdist-configure ${{ matrix.features }} ${{ matrix.builder }} dnsdist-${{ env.BUILDER_VERSION }}
if: ${{ matrix.builder == 'autotools' }}
- run: ${{ env.INV_CMD }} ci-dnsdist-make-bear ${{ matrix.builder }}
- run: ${{ env.INV_CMD }} ci-dnsdist-run-unit-tests ${{ matrix.builder }}
- run: ${{ env.INV_CMD }} ci-dnsdist-run-unit-tests
- run: ${{ env.INV_CMD }} generate-coverage-info ./testrunner 'dnsdist' $GITHUB_WORKSPACE
if: ${{ env.COVERAGE == 'yes' && matrix.sanitizers != 'tsan' && matrix.builder == 'meson'}}
if: ${{ env.COVERAGE == 'yes' && matrix.sanitizers != 'tsan' }}
- name: Coveralls Parallel dnsdist unit
if: ${{ env.COVERAGE == 'yes' && matrix.sanitizers != 'tsan' && matrix.builder == 'meson' }}
if: ${{ env.COVERAGE == 'yes' && matrix.sanitizers != 'tsan' }}
uses: coverallsapp/github-action@5cbfd81b66ca5d10c19b062c04de0199c215fb6e
with:
flag-name: dnsdist-unit-${{ matrix.features }}-${{ matrix.sanitizers }}
path-to-lcov: $GITHUB_WORKSPACE/coverage.lcov
parallel: true
allow-empty: true
fail-on-error: false
- run: ${{ env.INV_CMD }} ci-dnsdist-install ${{ matrix.builder == 'meson' && '--meson' || '' }}
- run: ${{ env.INV_CMD }} ci-dnsdist-install
- run: ccache -s
- uses: ./.github/actions/normalize-branch-name
if: ${{ matrix.builder == 'meson' }}
- name: Prepare binaries folder
if: ${{ matrix.builder == 'meson' }}
run: |
mkdir -p /opt/dnsdist/bin
for i in $(find . -maxdepth 1 -type f -executable); do cp ${i} /opt/dnsdist/bin/; done
- name: Store the binaries
if: ${{ matrix.builder == 'meson' }}
uses: actions/upload-artifact@v7 # this takes 30 seconds, maybe we want to tar
with:
name: dnsdist-${{ matrix.features }}-${{ matrix.sanitizers }}-${{ matrix.builder}}${{ matrix.architecture_suffix }}-${{ env.normalized-branch-name }}
name: dnsdist-${{ matrix.features }}-${{ matrix.sanitizers }}-meson${{ matrix.architecture_suffix }}-${{ env.normalized-branch-name }}
path: /opt/dnsdist
retention-days: 1

Expand Down
18 changes: 11 additions & 7 deletions .github/workflows/codeql-analysis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,9 @@ permissions: # least privileges, see https://docs.github.com/en/actions/using-wo
# merging the results for all processed files to a YAML file. Finally clang-tidy.py converts the YAML output to GitHub annotations
# (GitHub only supports 10 of these per job, the rest are not displayed) and to GitHub markdown step summary (which has no such limits).

env:
BUILDER_VERSION: '0.0.0-git1'

jobs:
analyze:
name: Analyze
Expand Down Expand Up @@ -156,27 +159,28 @@ jobs:
- name: Install python yaml
run: |
pip install pyyaml
- name: Autoreconf dnsdist
if: matrix.product == 'dnsdist'
working-directory: ./pdns/dnsdistdist/
run: |
inv ci-autoconf
- run: inv ci-install-rust $REPO_HOME
if: matrix.product == 'dnsdist'
working-directory: ./pdns/dnsdistdist/
- run: inv ci-build-and-install-quiche $REPO_HOME
if: matrix.product == 'dnsdist'
working-directory: ./pdns/dnsdistdist/
- name: install pip build dependencies
if: matrix.product == 'dnsdist'
uses: ./.github/actions/pip-build-dependencies
with:
venv-parent: ${{ env.REPO_HOME }}
working-directory: .
- name: Configure dnsdist
if: matrix.product == 'dnsdist'
working-directory: ./pdns/dnsdistdist/
run: |
inv ci-dnsdist-configure full autotools ''
inv ci-dnsdist-configure full build
- name: Build dnsdist
if: matrix.product == 'dnsdist'
working-directory: ./pdns/dnsdistdist/
run: |
inv ci-dnsdist-make-bear autotools
inv ci-dnsdist-run-ninja build
- run: ln -s ../../.clang-tidy.full .clang-tidy
if: matrix.product == 'dnsdist'
working-directory: ./pdns/dnsdistdist/
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/coverity.yml
Original file line number Diff line number Diff line change
Expand Up @@ -87,13 +87,13 @@ jobs:
working-directory: ./pdns/dnsdistdist/
- run: inv ci-build-and-install-quiche $REPO_HOME
working-directory: ./pdns/dnsdistdist/
- run: inv ci-dnsdist-configure full autotools ''
- run: inv ci-dnsdist-configure full build
working-directory: ./pdns/dnsdistdist/
- run: inv coverity-make
- run: inv coverity-ninja
working-directory: ./pdns/dnsdistdist/
- run: inv coverity-tarball dnsdist.tar.bz2
- run: inv coverity-tarball build/dnsdist.tar.bz2
working-directory: ./pdns/dnsdistdist/
- run: inv coverity-upload ${{ secrets.COVERITY_EMAIL }} dnsdist dnsdist.tar.bz2
- run: inv coverity-upload ${{ secrets.COVERITY_EMAIL }} dnsdist build/dnsdist.tar.bz2
working-directory: ./pdns/dnsdistdist/

coverity-rec:
Expand Down
Loading
Loading