From 06b14b89886b22d1f2d5badfdf21460296749dcc Mon Sep 17 00:00:00 2001 From: Tobias Brunner Date: Fri, 17 Apr 2026 10:27:48 +0200 Subject: [PATCH] cirrus/github: Move CI for FreeBSD from Cirrus CI to GitHub Actions Cirrus CI will shut down in June, so we have to find a replacement to test our build on FreeBSD. This uses VMs on GitHub Actions. --- .cirrus.yml | 19 ------------- .github/workflows/freebsd.yml | 50 +++++++++++++++++++++++++++++++++++ 2 files changed, 50 insertions(+), 19 deletions(-) create mode 100644 .github/workflows/freebsd.yml diff --git a/.cirrus.yml b/.cirrus.yml index 8d7809b24..192320365 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -1,22 +1,3 @@ -freebsd_task: - matrix: - - name: FreeBSD 15.0 - freebsd_instance: - image_family: freebsd-15-0-amd64-ufs - - name: FreeBSD 14.3 - freebsd_instance: - image_family: freebsd-14-3 - - env: - TESTS_REDUCED_KEYLENGTHS: yes - LEAK_DETECTIVE: no - MONOLITHIC: no - TEST: freebsd - OS_NAME: freebsd - - install_script: ./scripts/test.sh deps - script: ./scripts/test.sh - alpine_task: container: image: alpine:latest diff --git a/.github/workflows/freebsd.yml b/.github/workflows/freebsd.yml new file mode 100644 index 000000000..c7a27a844 --- /dev/null +++ b/.github/workflows/freebsd.yml @@ -0,0 +1,50 @@ +name: FreeBSD + +on: [push, pull_request] + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +env: + TESTS_REDUCED_KEYLENGTHS: yes + LEAK_DETECTIVE: no + MONOLITHIC: no + TEST: freebsd + OS_NAME: freebsd + +jobs: + pre-check: + runs-on: ubuntu-latest + outputs: + should_skip: ${{ steps.skip-check.outputs.should_skip }} + steps: + - id: skip-check + uses: fkirc/skip-duplicate-actions@master + with: + concurrent_skipping: 'same_content_newer' + + freebsd: + needs: pre-check + if: ${{ needs.pre-check.outputs.should_skip != 'true' }} + runs-on: ubuntu-latest + strategy: + matrix: + release: [ "15.0", "14.4" ] + steps: + - uses: actions/checkout@v6 + - uses: vmactions/freebsd-vm@v1 + with: + release: ${{ matrix.release }} + envs: 'TESTS_REDUCED_KEYLENGTHS LEAK_DETECTIVE MONOLITHIC TEST OS_NAME' + disable-cache: true + prepare: | + ./scripts/test.sh deps + run: | + ./scripts/test.sh + - if: ${{ failure() }} + uses: actions/upload-artifact@v6 + with: + name: Logs ${{ github.job }} + path: config.log + retention-days: 5