diff options
Diffstat (limited to '.github/workflows')
| -rw-r--r-- | .github/workflows/codeql-analysis.yml | 61 | ||||
| -rw-r--r-- | .github/workflows/test.yml | 39 |
2 files changed, 69 insertions, 31 deletions
diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml index ab8bfaae..0317c8c0 100644 --- a/.github/workflows/codeql-analysis.yml +++ b/.github/workflows/codeql-analysis.yml | |||
| @@ -1,3 +1,4 @@ | |||
| 1 | --- | ||
| 1 | # For most projects, this workflow file will not need changing; you simply need | 2 | # For most projects, this workflow file will not need changing; you simply need |
| 2 | # to commit it to your repository. | 3 | # to commit it to your repository. |
| 3 | # | 4 | # |
| @@ -13,10 +14,10 @@ name: "CodeQL" | |||
| 13 | 14 | ||
| 14 | on: | 15 | on: |
| 15 | push: | 16 | push: |
| 16 | branches: [ master ] | 17 | branches: [master] |
| 17 | pull_request: | 18 | pull_request: |
| 18 | # The branches below must be a subset of the branches above | 19 | # The branches below must be a subset of the branches above |
| 19 | branches: [ master ] | 20 | branches: [master] |
| 20 | schedule: | 21 | schedule: |
| 21 | - cron: '15 18 * * 0' | 22 | - cron: '15 18 * * 0' |
| 22 | 23 | ||
| @@ -32,41 +33,41 @@ jobs: | |||
| 32 | strategy: | 33 | strategy: |
| 33 | fail-fast: false | 34 | fail-fast: false |
| 34 | matrix: | 35 | matrix: |
| 35 | language: [ 'cpp' ] | 36 | language: ['cpp'] |
| 36 | # CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python' ] | 37 | # CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python' ] |
| 37 | # Learn more: | 38 | # Learn more: |
| 38 | # https://docs.github.com/en/free-pro-team@latest/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning#changing-the-languages-that-are-analyzed | 39 | # https://docs.github.com/en/free-pro-team@latest/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning#changing-the-languages-that-are-analyzed |
| 39 | 40 | ||
| 40 | steps: | 41 | steps: |
| 41 | - name: Checkout repository | 42 | - name: Checkout repository |
| 42 | uses: actions/checkout@v3 | 43 | uses: actions/checkout@v4 |
| 43 | 44 | ||
| 44 | # Initializes the CodeQL tools for scanning. | 45 | # Initializes the CodeQL tools for scanning. |
| 45 | - name: Initialize CodeQL | 46 | - name: Initialize CodeQL |
| 46 | uses: github/codeql-action/init@v2 | 47 | uses: github/codeql-action/init@v2 |
| 47 | with: | 48 | with: |
| 48 | languages: ${{ matrix.language }} | 49 | languages: ${{ matrix.language }} |
| 49 | # If you wish to specify custom queries, you can do so here or in a config file. | 50 | # If you wish to specify custom queries, you can do so here or in a config file. |
| 50 | # By default, queries listed here will override any specified in a config file. | 51 | # By default, queries listed here will override any specified in a config file. |
| 51 | # Prefix the list here with "+" to use these queries and those in the config file. | 52 | # Prefix the list here with "+" to use these queries and those in the config file. |
| 52 | # queries: ./path/to/local/query, your-org/your-repo/queries@main | 53 | # queries: ./path/to/local/query, your-org/your-repo/queries@main |
| 53 | 54 | ||
| 54 | - name: Install packages | 55 | - name: Install packages |
| 55 | run: | | 56 | run: | |
| 56 | sudo apt update | 57 | sudo apt update |
| 57 | sudo apt-get install -y --no-install-recommends m4 gettext automake autoconf make build-essential | 58 | sudo apt-get install -y --no-install-recommends m4 gettext automake autoconf make build-essential |
| 58 | sudo apt-get install -y --no-install-recommends perl autotools-dev libdbi-dev libldap2-dev libpq-dev \ | 59 | sudo apt-get install -y --no-install-recommends perl autotools-dev libdbi-dev libldap2-dev libpq-dev \ |
| 59 | libmysqlclient-dev libradcli-dev libkrb5-dev libdbi0-dev \ | 60 | libmysqlclient-dev libradcli-dev libkrb5-dev libdbi0-dev \ |
| 60 | libdbd-sqlite3 libssl-dev libcurl4-openssl-dev liburiparser-dev | 61 | libdbd-sqlite3 libssl-dev libcurl4-openssl-dev liburiparser-dev |
| 61 | 62 | ||
| 62 | - name: Configure build | 63 | - name: Configure build |
| 63 | run: | | 64 | run: | |
| 64 | ./tools/setup | 65 | ./tools/setup |
| 65 | ./configure --enable-libtap | 66 | ./configure --enable-libtap |
| 66 | 67 | ||
| 67 | - name: Build | 68 | - name: Build |
| 68 | run: | | 69 | run: | |
| 69 | make | 70 | make |
| 70 | 71 | ||
| 71 | - name: Perform CodeQL Analysis | 72 | - name: Perform CodeQL Analysis |
| 72 | uses: github/codeql-action/analyze@v2 | 73 | uses: github/codeql-action/analyze@v2 |
diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 80d49f7e..77b09f43 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml | |||
| @@ -1,15 +1,48 @@ | |||
| 1 | --- | ||
| 1 | name: Test | 2 | name: Test |
| 2 | 3 | ||
| 3 | on: | 4 | on: |
| 4 | push: | 5 | push: |
| 5 | branches: | 6 | branches: |
| 6 | - '*' | 7 | - '*' |
| 8 | # Run test for any PRs | ||
| 7 | pull_request: | 9 | pull_request: |
| 8 | 10 | ||
| 9 | jobs: | 11 | jobs: |
| 12 | codespell: | ||
| 13 | name: codespell | ||
| 14 | strategy: | ||
| 15 | fail-fast: false | ||
| 16 | runs-on: ubuntu-latest | ||
| 17 | steps: | ||
| 18 | - name: Checkout | ||
| 19 | uses: actions/checkout@v4 | ||
| 20 | - name: Codespell | ||
| 21 | uses: codespell-project/actions-codespell@v2 | ||
| 22 | with: | ||
| 23 | skip: "./.git,./.gitignore,./ABOUT-NLS,*.po,./gl,./po,./tools/squid.conf,./build-aux/ltmain.sh" | ||
| 24 | ignore_words_list: allright,gord,didi,hda,nd,alis,clen,scrit,ser,fot,te,parm,isnt,consol,oneliners | ||
| 25 | check_filenames: true | ||
| 26 | check_hidden: true | ||
| 27 | # super-linter: | ||
| 28 | # name: super-linter | ||
| 29 | # strategy: | ||
| 30 | # fail-fast: false | ||
| 31 | # runs-on: ubuntu-latest | ||
| 32 | # steps: | ||
| 33 | # - name: Checkout | ||
| 34 | # uses: actions/checkout@v4 | ||
| 35 | # - name: Lint Code Base | ||
| 36 | # uses: github/super-linter@v5.0.0 | ||
| 37 | # env: | ||
| 38 | # DEFAULT_BRANCH: master | ||
| 39 | # GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||
| 10 | # macos: | 40 | # macos: |
| 11 | # ... | 41 | # ... |
| 12 | linux: | 42 | linux: |
| 43 | needs: | ||
| 44 | - codespell | ||
| 45 | # - super-linter | ||
| 13 | runs-on: ubuntu-latest | 46 | runs-on: ubuntu-latest |
| 14 | name: Running tests on ${{ matrix.distro }} | 47 | name: Running tests on ${{ matrix.distro }} |
| 15 | strategy: | 48 | strategy: |
| @@ -24,7 +57,7 @@ jobs: | |||
| 24 | #... | 57 | #... |
| 25 | steps: | 58 | steps: |
| 26 | - name: Git clone repository | 59 | - name: Git clone repository |
| 27 | uses: actions/checkout@v3 | 60 | uses: actions/checkout@v4 |
| 28 | #- name: Setup tmate session, see https://github.com/marketplace/actions/debugging-with-tmate | 61 | #- name: Setup tmate session, see https://github.com/marketplace/actions/debugging-with-tmate |
| 29 | # uses: mxschmitt/action-tmate@v3 | 62 | # uses: mxschmitt/action-tmate@v3 |
| 30 | - name: Run the tests on ${{ matrix.distro }} | 63 | - name: Run the tests on ${{ matrix.distro }} |
| @@ -41,6 +74,10 @@ jobs: | |||
| 41 | /bin/sh -c '${{ matrix.prepare }} && \ | 74 | /bin/sh -c '${{ matrix.prepare }} && \ |
| 42 | tools/setup && \ | 75 | tools/setup && \ |
| 43 | ./configure --enable-libtap --with-ipv6=no && \ | 76 | ./configure --enable-libtap --with-ipv6=no && \ |
| 77 | set -x && \ | ||
| 78 | tmp_dir=$(mktemp -d -t test-XXXX) && cp -a po/ $tmp_dir/ && \ | ||
| 79 | cd po && make update-po && cd .. && \ | ||
| 80 | diff -Nur $tmp_dir/po/*.po po/*.po | tee -a /tmp/po.diff && diff -Nur $tmp_dir/po/*.pot po/*.pot | tee -a /tmp/po.diff && if [ $(wc -l /tmp/po.diff | cut -f 1 -d" ") -gt 0 ]; then echo "Error: Translations needs to be updated with make update-po!" && exit 1; fi && \ | ||
| 44 | make && \ | 81 | make && \ |
| 45 | make test' | 82 | make test' |
| 46 | docker container prune -f | 83 | docker container prune -f |
