Commit Graph

6 Commits

Author SHA1 Message Date
Tarik Moussa
3cc96703cc ci: fix test-cgal OOM + add Doxygen API-docs job
Some checks failed
C++ Tests / test-fast (push) Successful in 4m47s
C++ Tests / test-fast (pull_request) Successful in 3m42s
API Docs / doc-build (pull_request) Failing after 7m19s
C++ Tests / test-cgal (push) Has been skipped
C++ Tests / test-cgal (pull_request) Failing after 15m9s
Two CI improvements:

1. **test-cgal OOM fix**
   * memory limit  1400m → 1600m  (cc1plus needs ~700 MB for CGAL + Eigen)
   * memory-swap   1400m → 1600m  (was less than memory, Docker rejected
                                    the config; now disables swap entirely
                                    so OOM fails fast)
   * build parallelism  -j2 → -j1  (single worker leaves headroom)

   These three changes together address the test-cgal failures observed
   since the test_scalability_smoke.cpp was added.  Locally the full
   suite (183 tests including the brezel.obj genus-2 mesh) runs in
   ~1 s with peak ~700 MB; the ARM64 CI runner now has the same
   headroom.

2. **API-docs job (new, soft-fail)**
   * .gitea/workflows/doc-build.yaml — separate workflow, distinct name
     "API Docs"
   * Runs only on pull requests; `continue-on-error: true` ensures
     warnings never block the merge
   * Installs doxygen, runs `doxygen Doxyfile`, uploads the generated
     HTML as a 14-day artifact for reviewer inspection
   * Dockerfile.ci-cpp also pre-installs doxygen so future iterations
     can drop the in-job install step

   When Doxygen coverage matures (Phase 8c — User_manual.md), this job
   can be promoted to a hard requirement and the HTML deployed to
   Pages.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-19 22:18:21 +02:00
Tarik Moussa
62e2875c30 ci: Zwei-Job-Pipeline — test-fast + test-cgal (158 CGAL-Tests)
All checks were successful
C++ Tests / test-fast (push) Successful in 2m16s
C++ Tests / test-cgal (push) Has been skipped
test-fast (alle Branches, < 1 s):
  Unverändert — reine Mathe-Tests ohne CGAL/Boost.

test-cgal (main / dev / Pull Requests):
  Läuft nach erfolgreichem test-fast (needs: test-fast).
  Baut conformallab_cgal_tests mit -DWITH_CGAL=ON und führt
  alle 158 CGAL-Tests (Phase 3–7) aus.
  Übergangs-Schritt: apt-get libboost-dev zur Laufzeit, bis das
  Docker-Image neu gebaut wird (Dockerfile bereits aktualisiert).

Dockerfile.ci-cpp:
  libboost-dev ergänzt — für den nächsten manuellen Image-Rebuild.
  Danach entfällt der apt-get-Schritt im Workflow automatisch.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-14 10:47:35 +02:00
Tarik Moussa
488223f75d docker: replace g++ + make with build-essential
Some checks failed
Mirror to Codeberg / mirror (push) Failing after 2s
C++ Tests / test (push) Has started running
build-essential pulls gcc, g++, make and libc-dev together.
CMake declares LANGUAGES C CXX so it needs a C compiler (cc) too –
individual g++ install can leave gaps that build-essential covers.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-09 23:03:25 +02:00
Tarik Moussa
c9c9320907 docker: add make to ci-cpp image (CMake build program was missing)
Some checks failed
C++ Tests / test (push) Has been cancelled
Mirror to Codeberg / mirror (push) Has been cancelled
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-09 23:02:17 +02:00
Tarik Moussa
076d1b30d0 ci: fix pipeline – remove container until arm64 image is rebuilt
Some checks failed
C++ Tests / test (push) Failing after 2s
Mirror to Codeberg / mirror (push) Failing after 2s
The ci-cpp image was likely built for linux/amd64; the eulernest runner
is linux/arm64 (Raspberry Pi), so the container exited immediately
without running any steps (task 102 log: 10 lines, no step output).

Fix: run directly on the host runner and install cmake/g++ via apt-get
(same approach as the previously working workflow).

Also pin --platform=linux/arm64 in Dockerfile.ci-cpp so the next
image build produces the correct architecture. Once the image is pushed,
re-add the container: block to the workflow.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-09 22:41:47 +02:00
Tarik Moussa
e59f79a8e2 docs + ci: update README, add ci-cpp Docker image, use container in workflow
README:
- Remove stale Boost mention (unused dep, removed yesterday)
- Document three build modes (tests-only / WITH_VIEWER / WITH_CGAL)
  with a comparison table and per-mode cmake commands
- Add project structure overview
- Fix C++20 → C++17 (actual standard used)
- Fix clone URL and getting-started commands
- Add CI section with Dockerfile build instructions

CI:
- Add .gitea/docker/Dockerfile.ci-cpp — ubuntu:22.04 with cmake,
  g++, git, and Node.js 20 pre-installed (Node.js needed for
  actions/checkout@v4 inside containers)
- Update cpp-tests.yml to use ci-cpp container instead of installing
  build tools on every run; add JUnit XML output and summary step

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-09 21:49:44 +02:00