ci(publish): publish to forge Maven registry on main + tags #55

Merged
mph merged 1 commit from ci/forge-maven-registry into main 2026-07-16 07:33:57 +00:00
Owner

Summary

Wires claude-code-query publishing into the iterative-works Forgejo Maven
registry as part of the Phase C registry cutover, now that the repo lives on
the forge.

  • Trigger: publish.yml now runs on pushes to main (snapshots) as well
    as v* tags (releases) — previously tags only.
  • Forge registry (every push): MavenPublishModule/publishAll PUTs all four
    modules (core, direct, effectful, zio) to
    https://code.iterative.works/api/packages/iterative-works/maven. One endpoint
    for snapshots and releases, no PGP. Uses inherited org secrets MILL_MAVEN_*.
  • Maven Central (tags only): unchanged — still the release target, PGP-signed
    via Sonatype (MILL_SONATYPE_* + MILL_PGP_SECRET_BASE64). Central stays
    primary for this OSS SDK; the forge is an additional target.

Test gate (__.test + __.itest) is preserved. The E2E integration tests
self-skip (MUnit assume) when the claude CLI/API key is absent, so they are
safe on the forge runner.

Test plan

  • ./mill resolve __:PublishModule.publishArtifacts → 4 modules
  • pre-push hook test suite passed
  • merge → confirm a 0.5.0-SNAPSHOT set appears in the forge registry

🤖 Generated with Claude Code

## Summary Wires `claude-code-query` publishing into the iterative-works Forgejo Maven registry as part of the Phase C registry cutover, now that the repo lives on the forge. - **Trigger**: `publish.yml` now runs on pushes to `main` (snapshots) as well as `v*` tags (releases) — previously tags only. - **Forge registry** (every push): `MavenPublishModule/publishAll` PUTs all four modules (`core`, `direct`, `effectful`, `zio`) to `https://code.iterative.works/api/packages/iterative-works/maven`. One endpoint for snapshots and releases, no PGP. Uses inherited org secrets `MILL_MAVEN_*`. - **Maven Central** (tags only): unchanged — still the release target, PGP-signed via Sonatype (`MILL_SONATYPE_*` + `MILL_PGP_SECRET_BASE64`). Central stays primary for this OSS SDK; the forge is an additional target. Test gate (`__.test` + `__.itest`) is preserved. The E2E integration tests self-skip (MUnit `assume`) when the `claude` CLI/API key is absent, so they are safe on the forge runner. ## Test plan - [x] `./mill resolve __:PublishModule.publishArtifacts` → 4 modules - [x] pre-push hook test suite passed - [ ] merge → confirm a `0.5.0-SNAPSHOT` set appears in the forge registry 🤖 Generated with [Claude Code](https://claude.com/claude-code)
ci(publish): publish to forge Maven registry on main + tags
All checks were successful
CI / Check Formatting (pull_request) Successful in 52s
CI / Compile (pull_request) Successful in 1m3s
CI / Check Linting (pull_request) Successful in 46s
CI / Run Tests (pull_request) Successful in 1m0s
efbd7d2e53
Add the iterative-works Forgejo Maven registry as a publish target: every
push to main publishes the current -SNAPSHOT and a vX.Y.Z tag publishes the
release, both to one endpoint (no PGP). Maven Central stays the release
target on tags (PGP-signed via Sonatype), so the OSS SDK remains primarily
on Central. Credentials are inherited iterative-works org Actions secrets.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
mph merged commit 0a34b9458e into main 2026-07-16 07:33:57 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
iterative-works/claude-code-query!55
No description provided.