CI, Releases, and Docker Images
Workflows
Two GitHub Actions workflows run on every push and PR:
.github/workflows/backend-ci.yml— checkout, setup Java 25, resolve version, lint (mvn -B -Plint -DskipTests verify), unit tests (mvn -B test), integration tests (mvn -B verify), third-party license consistency check, build & push Docker image (only onmainand tags)..github/workflows/frontend-ci.yml— checkout, setup Node 24, install, lint, test, build, third-party license check, build & push Docker image (only onmainand tags).
A third workflow, publish-test-images.yml, builds preview images for PRs from trusted contributors.
Releases
Releases are tag-driven:
- Update
CHANGELOG.md: move items from## [Unreleased]into a new## [X.Y.Z] - YYYY-MM-DDsection. - Push a tag of the form
vX.Y.Ztomain. - CI builds and publishes Docker images tagged
X.Y.Z,X.Y, andX(withXsuppressed for0.x.y) pluslateston the default branch. - A GitHub Release is created automatically.
Docker images
Images are published to GHCR:
ghcr.io/soptim/rdfarchitect-backendghcr.io/soptim/rdfarchitect-frontend
The compose file in docker/ builds them locally; you can substitute the published images by changing build: to image:.