]> git.ipfire.org Git - thirdparty/pdns.git/blob - .github/workflows/builder.yml
Merge pull request #11431 from jroessler-ox/docs-kskzskroll-update
[thirdparty/pdns.git] / .github / workflows / builder.yml
1 ---
2 name: 'Test package building for specific distributions'
3
4 on:
5 workflow_call:
6 inputs:
7 branch-name:
8 description: 'Checkout to a specific branch'
9 required: true
10 default: ''
11 type: string
12 schedule:
13 - cron: '0 1 * * *'
14
15 permissions: # least privileges, see https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#permissions
16 contents: read
17
18 jobs:
19 build:
20 name: build.sh
21 if: ${{ vars.SCHEDULED_JOBS_BUILDER }}
22 # on a ubuntu-20.04 VM
23 runs-on: ubuntu-20.04
24 strategy:
25 matrix:
26 product: ['authoritative', 'recursor', 'dnsdist']
27 os:
28 - centos-7
29 - el-8
30 - centos-8-stream
31 - centos-9-stream
32 - ubuntu-lunar
33 - ubuntu-mantic
34 - ubuntu-noble
35 - debian-bookworm
36 - debian-trixie
37 - amazon-2023
38 fail-fast: false
39 steps:
40 - uses: actions/checkout@v4
41 with:
42 fetch-depth: 0 # for correct version numbers
43 submodules: recursive
44 ref: ${{ inputs.branch-name }}
45 # this builds packages and runs our unit test (make check)
46 - run: builder/build.sh -v -m ${{ matrix.product }} ${{ matrix.os }}
47 - name: Get version number
48 run: |
49 echo "version=$(readlink builder/tmp/latest)" >> $GITHUB_OUTPUT
50 id: getversion
51 - name: Upload packages
52 uses: actions/upload-artifact@v4
53 with:
54 name: ${{ matrix.product }}-${{ matrix.os }}-${{ steps.getversion.outputs.version }}
55 path: built_pkgs/
56 retention-days: 7