aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJean-Sébastien Pédron <[email protected]>2025-07-08 10:25:50 +0200
committerLoïc Hoguin <[email protected]>2025-07-22 19:10:23 +0200
commite2f635b00f1aca3750056cd772ee148ba571f1ad (patch)
treeb7a9e29ca28c9e4d80cb5e5708e6072e2427b1e9
parent62cc6143ef0705767c45271b0ba3f7dcdbae7b1b (diff)
downloaderlang.mk-master.tar.gz
erlang.mk-master.tar.bz2
erlang.mk-master.zip
GitHub Actions: Run tests on FreeBSDHEADmaster
Tests are executed in a FreeBSD VM using the latest stable release. The default version of Erlang and Elixir from the Ports tree are being used; currently Erlang/OTP 26 and Elixir 1.17 as of this commit. Otherwise, tests are split the same way as for Linux/Windows/OSX. That said, the list is duplicated, so a bit annoying to maintain.
-rw-r--r--.github/workflows/ci.yaml66
1 files changed, 66 insertions, 0 deletions
diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml
index 0598246..fec0033 100644
--- a/.github/workflows/ci.yaml
+++ b/.github/workflows/ci.yaml
@@ -372,3 +372,69 @@ jobs:
- name: Check templates
run: make check-templates
+
+ check-in-vm:
+ strategy:
+ fail-fast: false
+ matrix:
+ vm:
+ - freebsd
+ suite:
+ - core-app
+ - core-apps
+ - core-autopatch
+ - core-compat
+ # Trick GH runners into picking this slower job early.
+ - ACME=1 c=core-deps
+ - core-elixir
+ - core-makedep
+ - core-misc
+ - core-plugins
+ - core-query
+ - core-upgrade
+ - asciidoc
+ - bootstrap
+ - concuerror
+ - cover
+ - c-src
+ - ct
+ - dialyzer SET=1
+ - dialyzer SET=2
+ - dialyzer SET=3
+ - dialyzer SET=4
+ - edoc
+ - erlydtl
+ - escript
+ - eunit
+ - proper
+ - protobuffs
+ # Trick GH runners into picking this slower job early.
+ - ACME=1 c=relx
+ - shell
+ - sphinx
+ - triq
+ - xref
+ # Don't run tests with CACHE_DEPS or LEGACY. Running them on Linux is
+ # good enough.
+ # extra: ['', 'CACHE_DEPS=1', 'LEGACY=1']
+ runs-on: ubuntu-latest
+ steps:
+
+ - name: Checkout repository
+ uses: actions/checkout@v4
+
+ - name: Run tests (FreeBSD)
+ if: matrix.vm == 'freebsd'
+ uses: vmactions/freebsd-vm@v1
+ with:
+ usesh: true
+ copyback: false
+ prepare: |
+ pkg update
+ pkg upgrade -y
+ pkg install -y erlang elixir bash ca_root_nss gmake git libsodium perl5 7-zip
+ git config --global safe.directory '*'
+ erl -sname init_cookie -run erlang halt
+
+ run: |
+ gmake check c=${{ matrix.suite }} -j4