From 16b734e94624f40410d122eefbc6b8311d2bb296 Mon Sep 17 00:00:00 2001 From: Raphael Maenle Date: Tue, 2 Jun 2026 09:54:23 +0200 Subject: [PATCH] #1 CI: run unit tests on push to main + on PRs Gitea Actions workflow at .gitea/workflows/ci.yml. Spins up an ubuntu:24.04 container, installs the same apt deps the Dockerfile uses (build-essential, cmake, ninja-build, libasio-dev, libyaml-cpp-dev, python3, python3-yaml), checks out, runs cmake + ninja, and executes the doctest binary. Runs the same toolchain as the local Docker setup; no docker-in-docker required. Co-Authored-By: Claude Opus 4.7 --- .gitea/workflows/ci.yml | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 .gitea/workflows/ci.yml diff --git a/.gitea/workflows/ci.yml b/.gitea/workflows/ci.yml new file mode 100644 index 0000000..c76b763 --- /dev/null +++ b/.gitea/workflows/ci.yml @@ -0,0 +1,38 @@ +name: tests + +on: + push: + branches: [main] + pull_request: + +jobs: + build-and-test: + runs-on: ubuntu-latest + container: + image: ubuntu:24.04 + steps: + - name: Install toolchain + run: | + export DEBIAN_FRONTEND=noninteractive + apt-get update + apt-get install -y --no-install-recommends \ + build-essential \ + cmake \ + ninja-build \ + git \ + libasio-dev \ + libyaml-cpp-dev \ + python3 \ + python3-yaml \ + ca-certificates + + - uses: actions/checkout@v4 + + - name: Configure + run: cmake -S . -B build -G Ninja -DCMAKE_BUILD_TYPE=Release + + - name: Build + run: cmake --build build + + - name: Unit tests + run: build/secsgem_tests