Skip to content

Let integration tests resolve OpenRewrite snapshots from the Code Genome Project - #1202

Merged
timtebeek merged 1 commit into
mainfrom
tim/no-dual-publish
Aug 27, 2026
Merged

Let integration tests resolve OpenRewrite snapshots from the Code Genome Project#1202
timtebeek merged 1 commit into
mainfrom
tim/no-dual-publish

Conversation

@timtebeek

Copy link
Copy Markdown
Member

CI has been deterministically red since the post-release Bump rewrite.version property commit moved rewrite.version to 8.92.0-SNAPSHOT: OpenRewrite snapshots are published solely to the Code Genome Project, and the itf integration tests run nested Maven builds with their own local repository, so they resolve the plugin's transitives from scratch.

The 11 fixture poms declared a repository with id codegenome but snapshots disabled, and since Maven dedupes remote repositories by id that definition shadowed the snapshot-enabled one the plugin's own pom contributes — leaving only ossrh-snapshots eligible for snapshots, which 404s (KotlinIT was the only fixture pulling in modules the plugin doesn't already depend on, via rewrite-all). This enables snapshots on those repositories and adds the codegenome server credentials to BasicIT.resolves_settings' own settings-user.xml, which replaces the user settings written by CI and so was reaching the Code Genome Project anonymously (401 on metadata, then 422 on the non-timestamped pom).

The "checksum warnings the ITs assert against" rationale in the old comment no longer reproduces: the last CI run fetched snapshot metadata from the Code Genome Project without a single integrity warning, and the served maven-metadata.xml.sha1 now matches the served bytes. Fork builds get no credentials and are unaffected by this change (they are already broken for the release line too, since rewrite-core:8.91.0 is not on Maven Central).

…ome Project

The itf integration tests run nested Maven builds with their own local
repository, so they resolve the plugin under test and its transitives from
scratch. Since OpenRewrite snapshots are published solely to the Code Genome
Project, the post-release `rewrite.version` bump to 8.92.0-SNAPSHOT broke them.

The fixture poms declared a repository with id `codegenome` but snapshots
disabled; Maven dedupes remote repositories by id, so that definition shadowed
the snapshot-enabled one the plugin's own pom contributes, leaving only
ossrh-snapshots eligible for snapshots. `BasicIT.resolves_settings` additionally
replaces the user settings, dropping the credentials the Code Genome Project
requires.
@github-project-automation github-project-automation Bot moved this to In Progress in OpenRewrite Aug 27, 2026
@timtebeek
timtebeek merged commit 47d499f into main Aug 27, 2026
1 check passed
@timtebeek
timtebeek deleted the tim/no-dual-publish branch August 27, 2026 10:34
@github-project-automation github-project-automation Bot moved this from In Progress to Done in OpenRewrite Aug 27, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

1 participant