All checks were successful
Add a lightweight test-fast pipeline for the public Codeberg mirror so it shows a build status, defined for both CI systems Codeberg offers: - .woodpecker.yml (Woodpecker, debian:bookworm) - .forgejo/workflows/ (Forgejo Actions, node:20-bookworm, runner label docker) Both run the pure-math suite only (Eigen vendored, GTest via FetchContent; no CGAL/Boost), using public images and the docker runner label since the private eulernest ci-cpp image and Pi runner are unreachable from Codeberg. Docs: - new doc/architecture/ci-cd.md: two-forge topology, runners, trigger keywords, mirror mechanism. - fix stale "codeberg/main ... no CI" claim in contributing.md and bring the CI table up to date. - link the new doc from the README doc index. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
32 lines
1.1 KiB
YAML
32 lines
1.1 KiB
YAML
# Woodpecker CI — Codeberg (https://ci.codeberg.org)
|
|
#
|
|
# Runs on every push / PR. Mirrors the "test-fast" job of the
|
|
# eulernest Gitea pipeline (.gitea/workflows/cpp-tests.yml), but uses a
|
|
# plain public Debian image instead of the private ci-cpp registry image,
|
|
# because Codeberg's shared runners cannot pull git.eulernest.eu.
|
|
#
|
|
# Pure-math test suite only (Clausen, ImLi2, hyper-ideal geometry):
|
|
# * Eigen is vendored → code/deps/eigen-3.4.0
|
|
# * GoogleTest via FetchContent (network at configure time)
|
|
# * No CGAL / Boost / Wayland needed → fast, headless, < 2 min
|
|
#
|
|
# A failing build or any failing ctest makes the Codeberg CI badge red.
|
|
|
|
when:
|
|
- event: [push, pull_request]
|
|
|
|
steps:
|
|
test-fast:
|
|
image: debian:bookworm
|
|
commands:
|
|
- apt-get update -qq
|
|
- >-
|
|
apt-get install -y --no-install-recommends
|
|
cmake g++ make git ca-certificates
|
|
- cmake -S code -B build -DCMAKE_BUILD_TYPE=Release
|
|
- cmake --build build --target conformallab_tests -j$(nproc)
|
|
- >-
|
|
ctest --test-dir build
|
|
--output-on-failure
|
|
--output-junit test-results.xml
|