if [ -f clang-tidy-results/rec-fixes.yml ]; then
python .github/scripts/clang-tidy.py --fixes-file clang-tidy-results/rec-fixes.yml
fi
+
+ clang-tidy-dnsdist:
+ name: dnsdist clang-tidy
+ runs-on: ubuntu-20.04
+ env:
+ UNIT_TESTS: yes
+ SANITIZERS:
+ steps:
+ - uses: PowerDNS/pdns/set-ubuntu-mirror@meta
+ - uses: actions/checkout@v3
+ with:
+ fetch-depth: 2
+ - name: get timestamp for cache
+ id: get-stamp
+ shell: bash
+ run: |
+ echo "stamp=$(/bin/date +%s)" >> "$GITHUB_OUTPUT"
+ - name: let GitHub cache our ccache data
+ uses: actions/cache@v3
+ with:
+ path: ~/.ccache
+ key: dnsdist-full-ccache-${{ steps.get-stamp.outputs.stamp }}
+ restore-keys: dnsdist-full-ccache-
+ - run: build-scripts/gh-actions-setup-inv # this runs apt update+upgrade
+ - run: inv apt-fresh
+ - run: inv install-clang
+ - run: inv install-clang-tidy-tools
+ - run: inv install-dnsdist-build-deps
+ - run: inv ci-autoconf
+ working-directory: pdns/dnsdistdist/
+ - run: inv ci-dnsdist-configure full
+ working-directory: pdns/dnsdistdist/
+ - run: inv ci-dnsdist-make-bear
+ working-directory: pdns/dnsdistdist/
+ - run: ccache -s
+ - run: mkdir clang-tidy-results
+ - run: ln -s .clang-tidy.full .clang-tidy
+ - name: Run clang-tidy
+ working-directory: pdns/dnsdistdist/
+ run: git diff -U0 HEAD^ | python /usr/bin/clang-tidy-diff-12.py -p3 -export-fixes ../../clang-tidy-results/dnsdist-fixes.yml
+ - name: Print clang-tidy fixes YAML
+ shell: bash
+ run: |
+ if [ -f clang-tidy-results/dnsdist-fixes.yml ]; then
+ cat clang-tidy-results/dnsdist-fixes.yml
+ fi
+ - name: Result annotations
+ shell: bash
+ run: |
+ if [ -f clang-tidy-results/dnsdist-fixes.yml ]; then
+ python .github/scripts/clang-tidy.py --fixes-file clang-tidy-results/dnsdist-fixes.yml
+ fi
def ci_dnsdist_make(c):
c.run('make -j4 -k V=1')
+@task
+def ci_dnsdist_make_bear(c):
+ # Assumed to be running under ./pdns/dnsdistdist/
+ c.run('bear --append make -j4 -k V=1')
+
@task
def ci_auth_install_remotebackend_test_deps(c):
with c.cd('modules/remotebackend'):