Skip to content

Align PROMCODE build, tests, containers and CI - #16

Open
berezovskyi wants to merge 3 commits into
mainfrom
codex/oslc-repo-alignment
Open

berezovskyi wants to merge 3 commits into
mainfrom
codex/oslc-repo-alignment

Conversation

@berezovskyi

@berezovskyi berezovskyi commented Oct 5, 2026 •

Copy link
Copy Markdown
Member

Deploy PROMCODE consistently at the root application context / in the container, Maven Jetty and Cargo/Tomcat. Align the Designer model, Swagger server URL, README routes and RDF snapshots; OSLC endpoints remain under /oslc/. Fix Fuseki persistence and the Tomcat startup command.

Align this Lyo 7 server on Java 25 across Maven, CI and Jetty images: the required Jetty JDK 27 image is unavailable. Preserve the existing Lyo SNAPSHOT dependencies and contributor guidance. Add JUnit 6 tests for PROMCODE RDF round trips and snapshots, encoded resource URIs, and StorePool SPARQL requests through MockServer. Use SLF4J/Logback, activate Enforcer and Spotless, and provide optional scoped OpenRewrite and SpotBugs profiles.

Harden the Actions workflows with pinned actions and minimal permissions, a stable build check on PRs and merge groups, canonical Lyo HEAD defaults, and trusted multi-architecture GHCR publication. Publication logs and job summaries list every pushed tag and the image digest; image-scoped GitHub Actions caching is retained, with scheduled fresh rebuilds. Keep startup/configuration in README, developer checks in DEVELOPMENT, contribution rules in CONTRIBUTING, and brief agent notes in AGENTS; add EditorConfig.

Validation:

  • Java 25 mvn clean verify -Dselfie=readonly: three JUnit 6 tests passed; formatting and Enforcer checks passed.
  • Docker image and root-context Compose startup; homepage, RDF catalog/shape, Artifact creation (201/Location), retrieval and Swagger /oslc/ server URL passed. Artifact survived Fuseki container recreation.
  • Root-context Jetty and Cargo/Tomcat deployments passed the same HTTP checks, including the Swagger server URL /oslc/.
  • Actionlint, zizmor --offline --pedantic, Compose parsing and packaged logging-binding inspection passed.

The optional SpotBugs profile reports the existing generated Application superclass-name collision; it remains unsuppressed and documented. Podman is unavailable locally, so its engine/parser was not exercised. Repository/inherited rulesets and workflows contain no automatic Copilot review requests; author-level automatic-review preferences could not be inspected.

Repository settings are applied: main requires PRs and the passing build check, with a squash merge queue, linear history, and force-push/deletion protection. Merge commits are disabled; squash/rebase, branch updates, and branch deletion after merge are enabled.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant