X-Git-Url: https://tinc-vpn.org/git/browse?a=blobdiff_plain;f=.github%2Fworkflows%2Ftest.yml;h=b5392ff2643dfe1681e74b555021c68ecb8e3c50;hb=e1d5459339d7417cda45a7fa0d3c47db555ae6a9;hp=39c7dc75d9cf3994d613de9a44becf10edbc0cc4;hpb=171810e42712c7cfcd7bcfb5fe6c35f2a935e4c6;p=tinc diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 39c7dc75..b5392ff2 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -16,10 +16,10 @@ jobs: matrix: arch: - armhf - - mips + - mipsel container: - image: debian:buster + image: debian:bullseye options: --privileged steps: @@ -32,6 +32,7 @@ jobs: - name: Prepare the system run: | sh .ci/test/prepare.sh + update-binfmts --enable rm -f /dev/net/tun - name: Run tests with default settings @@ -39,6 +40,7 @@ jobs: - name: Run tests without legacy protocol run: sudo -u build CI=1 HOST=${{ matrix.arch }} sh .ci/test/run.sh nolegacy + if: always() - name: Run tests with libgcrypt run: sudo -u build CI=1 HOST=${{ matrix.arch }} sh .ci/test/run.sh gcrypt @@ -46,13 +48,13 @@ jobs: - name: Upload test results uses: actions/upload-artifact@v2 with: - name: tests_cross_${{ env.ARTIFACT }} + name: tests_cross_${{ matrix.arch }} path: /tmp/logs/tests.*.tar.gz if: always() static-analysis: runs-on: ubuntu-latest - timeout-minutes: 10 + timeout-minutes: 30 steps: - name: Checkout code uses: actions/checkout@v1 @@ -113,7 +115,7 @@ jobs: sanitizer: runs-on: ubuntu-latest - timeout-minutes: 20 + timeout-minutes: 30 strategy: fail-fast: false matrix: @@ -131,29 +133,26 @@ jobs: - name: Install deps run: sudo sh .ci/deps.sh - - name: Configure and compile - shell: bash - run: bash .ci/sanitizers/build.sh - env: - CC: clang-12 + - name: Run tests with OpenSSL 3 + run: bash .ci/sanitizers/run.sh openssl3 - - name: Run tests - run: bash .ci/sanitizers/run.sh + - name: Sanitize tests with default settings + run: bash .ci/sanitizers/run.sh default - - name: Archive test results - run: sudo tar -c -z -f test-results.tar.gz test/ sanitizer/ + - name: Sanitize tests without legacy protocol + run: bash .ci/sanitizers/run.sh nolegacy if: always() - name: Upload test results uses: actions/upload-artifact@v2 with: name: tests_sanitizer_${{ matrix.sanitizer }} - path: test-results.tar.gz + path: /tmp/logs/tests.*.tar.gz if: always() linux: runs-on: ubuntu-latest - timeout-minutes: 20 + timeout-minutes: 30 strategy: fail-fast: false matrix: @@ -185,11 +184,15 @@ jobs: - name: Create a non-privileged user run: sh .ci/test/prepare.sh + - name: Run tests with OpenSSL 3 + run: sudo -u build CI=1 sh .ci/test/run.sh openssl3 + - name: Run tests with default settings run: sudo -u build CI=1 sh .ci/test/run.sh default - name: Run tests without legacy protocol run: sudo -u build CI=1 sh .ci/test/run.sh nolegacy + if: always() - name: Run tests with libgcrypt run: sudo -u build CI=1 sh .ci/test/run.sh gcrypt @@ -262,13 +265,9 @@ jobs: - name: Run tests with default settings run: sh .ci/test/run.sh default - - name: Run clang-tidy - run: | - export PATH="$PATH:$(brew --prefix llvm)/bin:$HOME/Library/Python/3.9/bin" - sh .ci/tidy/run.sh - - name: Run tests without legacy protocol run: sh .ci/test/run.sh nolegacy + if: always() - name: Run tests with libgcrypt run: sh .ci/test/run.sh gcrypt @@ -292,6 +291,8 @@ jobs: # https://packages.msys2.org/package/ install: >- base-devel + autoconf-wrapper + automake-wrapper mingw-w64-x86_64-gcc mingw-w64-x86_64-openssl mingw-w64-x86_64-libgcrypt @@ -302,7 +303,7 @@ jobs: mingw-w64-x86_64-miniupnpc mingw-w64-x86_64-nsis git - netcat + openbsd-netcat procps - name: Checkout code @@ -326,6 +327,7 @@ jobs: - name: Run tests without legacy protocol shell: msys2 {0} run: sh .ci/test/run.sh nolegacy + if: always() - name: Run tests with libgcrypt shell: msys2 {0}