chore: add xBSD pipelines #7
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: bsd | |
on: | |
push: | |
branches: | |
- master | |
pull_request: | |
branches: | |
- master | |
permissions: | |
contents: read | |
env: | |
GO_VERSION: "123" | |
jobs: | |
test: | |
name: e2e-tests | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout the repository | |
uses: actions/checkout@v4 | |
- name: Run end-to-end tests on FreeBSD | |
uses: vmactions/freebsd-vm@v1 | |
if: false # this already passes, so skip to test other BSDs faster | |
with: | |
envs: 'GO_VERSION' | |
usesh: true | |
prepare: | | |
pkg update -f | |
pkg install -y bash curl git gmake gsed gnugrep go${GO_VERSION} python | |
run: | # The steps below are executed inside the FreeBSD VM. | |
set -eux | |
mkdir bin | |
ln -s $(which go${GO_VERSION}) bin/go | |
ln -s $(which gsed) bin/sed | |
ln -s $(which gnugrep) bin/grep | |
ln -s $(which gmake) bin/make | |
export PATH=$(pwd)/bin:$PATH | |
echo "::group::Print environment information" | |
freebsd-version | |
uname -a | |
echo "GOOS: $(go env GOOS)" | |
echo "GOARCH: $(go env GOARCH)" | |
echo "::endgroup::" | |
echo "::group::Run End-to-End Tests" | |
git config --global --add safe.directory $(pwd) | |
gmake test-e2e | |
echo "::endgroup::" | |
- name: Run end-to-end tests on OpenBSD | |
uses: vmactions/openbsd-vm@v1 | |
with: | |
envs: 'GO_VERSION' | |
usesh: true | |
prepare: | | |
pkg_add -u | |
pkg_add bash curl git gmake gsed gnugrep go${GO_VERSION} python | |
run: | # The steps below are executed inside the FreeBSD VM. | |
set -eux | |
mkdir bin | |
ln -s $(which go${GO_VERSION}) bin/go | |
ln -s $(which gsed) bin/sed | |
ln -s $(which gnugrep) bin/grep | |
ln -s $(which gmake) bin/make | |
export PATH=$PATH:$(pwd)/golang-bin | |
echo "::group::Print environment information" | |
freebsd-version | |
uname -a | |
echo "GOOS: $(go env GOOS)" | |
echo "GOARCH: $(go env GOARCH)" | |
echo "::endgroup::" | |
echo "::group::Run End-to-End Tests" | |
git config --global --add safe.directory $(pwd) | |
gmake test-e2e | |
echo "::endgroup::" | |
- name: Run end-to-end tests on NetBSD | |
uses: vmactions/netbsd-vm@v1 | |
with: | |
envs: 'GO_VERSION' | |
usesh: true | |
prepare: | | |
/usr/sbin/pkg_add update -f | |
/usr/sbin/pkg_add install -y bash curl git gmake gsed gnugrep go${GO_VERSION} python | |
run: | # The steps below are executed inside the FreeBSD VM. | |
set -eux | |
mkdir bin | |
ln -s $(which go${GO_VERSION}) bin/go | |
ln -s $(which gsed) bin/sed | |
ln -s $(which gnugrep) bin/grep | |
ln -s $(which gmake) bin/make | |
export PATH=$PATH:$(pwd)/golang-bin | |
echo "::group::Print environment information" | |
freebsd-version | |
uname -a | |
echo "GOOS: $(go env GOOS)" | |
echo "GOARCH: $(go env GOARCH)" | |
echo "::endgroup::" | |
echo "::group::Run End-to-End Tests" | |
git config --global --add safe.directory $(pwd) | |
gmake test-e2e | |
echo "::endgroup::" | |
- name: Run end-to-end tests on Solaris | |
uses: vmactions/solaris-vm@v1 | |
with: | |
envs: 'GO_VERSION' | |
usesh: true | |
prepare: | | |
pkgutil update -f | |
pkgutil install -y bash curl git gmake gsed gnugrep go${GO_VERSION} python | |
run: | # The steps below are executed inside the FreeBSD VM. | |
set -eux | |
mkdir bin | |
ln -s $(which go${GO_VERSION}) bin/go | |
ln -s $(which gsed) bin/sed | |
ln -s $(which gnugrep) bin/grep | |
ln -s $(which gmake) bin/make | |
export PATH=$PATH:$(pwd)/golang-bin | |
echo "::group::Print environment information" | |
freebsd-version | |
uname -a | |
echo "GOOS: $(go env GOOS)" | |
echo "GOARCH: $(go env GOARCH)" | |
echo "::endgroup::" | |
echo "::group::Run End-to-End Tests" | |
git config --global --add safe.directory $(pwd) | |
gmake test-e2e | |
echo "::endgroup::" | |
- name: Run end-to-end tests on DragonFly | |
uses: vmactions/dragonflybsd-vm@v1 | |
with: | |
envs: 'GO_VERSION' | |
usesh: true | |
prepare: | | |
pkg update -f | |
pkg install -y bash curl git gmake gsed gnugrep go${GO_VERSION} python | |
run: | # The steps below are executed inside the FreeBSD VM. | |
set -eux | |
mkdir bin | |
ln -s $(which go${GO_VERSION}) bin/go | |
ln -s $(which gsed) bin/sed | |
ln -s $(which gnugrep) bin/grep | |
ln -s $(which gmake) bin/make | |
export PATH=$PATH:$(pwd)/golang-bin | |
echo "::group::Print environment information" | |
freebsd-version | |
uname -a | |
echo "GOOS: $(go env GOOS)" | |
echo "GOARCH: $(go env GOARCH)" | |
echo "::endgroup::" | |
echo "::group::Run End-to-End Tests" | |
git config --global --add safe.directory $(pwd) | |
gmake test-e2e | |
echo "::endgroup::" |