Skip to content

Commit 099bc27

Browse files
committed
CI: try to build and run tests on FreeBSD
1 parent 458299a commit 099bc27

File tree

1 file changed

+64
-0
lines changed

1 file changed

+64
-0
lines changed

.github/workflows/freebsd.yml

Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
name: Build and tests (FreeBSD)
2+
3+
on:
4+
# Ignore changes in extra plugins (as they are not tested here)
5+
push:
6+
paths-ignore:
7+
- 'extra_plugins/**'
8+
pull_request:
9+
paths-ignore:
10+
- 'extra_plugins/**'
11+
12+
jobs:
13+
test:
14+
runs-on: ubuntu-latest
15+
name: Build and run tests on FreeBSD
16+
steps:
17+
- uses: actions/checkout@v4
18+
- name: Build on FreeBSD 14.2
19+
uses: vmactions/freebsd-vm@v1
20+
with:
21+
release: "14.2"
22+
usesh: true
23+
run: |
24+
set -euox pipefail
25+
26+
# install dependencies
27+
pkg install -y \
28+
git \
29+
devel/cmake-core \
30+
devel/ninja \
31+
devel/pkgconf \
32+
textproc/py-docutils \
33+
archivers/liblz4 \
34+
archivers/zstd \
35+
textproc/libxml2 \
36+
net/librdkafka \
37+
devel/libepoll-shim
38+
39+
# clone libfds
40+
git clone --branch master https://github.com/CESNET/libfds.git libfds_build
41+
42+
# build libfds
43+
cd libfds_build
44+
mkdir build
45+
cd build
46+
cmake .. -DCMAKE_INSTALL_PREFIX=/usr
47+
make
48+
make install
49+
cd ../..
50+
51+
# build ipfixcol2
52+
mkdir build
53+
cd build
54+
cmake .. -DCMAKE_BUILD_TYPE=Debug -DENABLE_TESTS=1
55+
make
56+
make install
57+
58+
# run ipfixcol2 tests
59+
make test
60+
61+
# try to run ipfixcol2
62+
ipfixcol2 -V
63+
ipfixcol2 -h
64+
ipfixcol2 -L -v

0 commit comments

Comments
 (0)