From 7bb2a6753a3be3892c26e21fd2c660df5a1d81dc Mon Sep 17 00:00:00 2001
From: Koichiro Iwao
Date: Tue, 28 Apr 2026 16:54:59 +0900
Subject: [PATCH 1/2] CI: Retire Cirrus CI as the service is shutting down
---
.cirrus.yml | 25 -------------------------
1 file changed, 25 deletions(-)
delete mode 100644 .cirrus.yml
diff --git a/.cirrus.yml b/.cirrus.yml
deleted file mode 100644
index 7bce22a5..00000000
--- a/.cirrus.yml
+++ /dev/null
@@ -1,25 +0,0 @@
-FreeBSD_task:
- matrix:
- env:
- SSL: openssl
- OPENSSL_ROOT_DIR: /usr/local
- env:
- SSL: openssl36
- OPENSSL_ROOT_DIR: /usr/local
- env:
- # base openssl
- SSL:
- matrix:
- freebsd_instance:
- image_family: freebsd-14-3
- prepare_script:
- - pkg install -y pkgconf cmake git libsodium cpu_features $SSL
- - git submodule update --init --recursive
- configure_script:
- - CMAKE_FLAGS="-DUSE_SYSTEM_CPU_FEATURES=1" CFLAGS="-I/usr/local/include/cpu_features" ./configure
- build_script:
- - make -j $(sysctl -n hw.ncpu || echo 4) -C build
- test_script:
- - ldd build/vpnserver
- - .ci/memory-leak-test.sh
- - .ci/vpntools-check.sh
From d77c258dac450993b5a6fb9cacbbe4c98022bf49 Mon Sep 17 00:00:00 2001
From: Koichiro Iwao
Date: Tue, 28 Apr 2026 15:59:11 +0900
Subject: [PATCH 2/2] CI: Run FreeBSD CI via GitHub Acctions
Resolves: #2262
---
.github/workflows/freebsd.yml | 39 +++++++++++++++++++++++++++++++++++
1 file changed, 39 insertions(+)
create mode 100644 .github/workflows/freebsd.yml
diff --git a/.github/workflows/freebsd.yml b/.github/workflows/freebsd.yml
new file mode 100644
index 00000000..fcdb92e4
--- /dev/null
+++ b/.github/workflows/freebsd.yml
@@ -0,0 +1,39 @@
+name: FreeBSD
+
+on: [push, pull_request]
+
+permissions:
+ contents: read
+
+jobs:
+ build_and_test:
+ runs-on: ubuntu-latest
+ strategy:
+ fail-fast: false
+ matrix:
+ include:
+ - ssl: openssl # currently 3.0
+ openssl_root_dir: /usr/local
+ - ssl: openssl36
+ openssl_root_dir: /usr/local
+ - ssl: # base openssl
+ openssl_root_dir:
+ name: FreeBSD with ${{ matrix.ssl || 'base openssl' }}
+ env:
+ SSL: ${{ matrix.ssl }}
+ OPENSSL_ROOT_DIR: ${{ matrix.openssl_root_dir }}
+ steps:
+ - uses: actions/checkout@v6
+ with:
+ submodules: true
+ - uses: vmactions/freebsd-vm@v1
+ with:
+ envs: 'OPENSSL_ROOT_DIR SSL'
+ prepare: |
+ pkg install -y $SSL pkgconf cmake git libsodium cpu_features
+ run: |
+ CMAKE_FLAGS="-DUSE_SYSTEM_CPU_FEATURES=1" CFLAGS="-I/usr/local/include/cpu_features" ./configure
+ make -j $(nproc || echo 4) -C build
+ ldd build/vpnserver
+ .ci/memory-leak-test.sh
+ .ci/vpntools-check.sh