Repository navigation
Verify Maven availability before completing releases - #287
Merged
Merged
Conversation
Wait for public POMs and JARs with matching SHA-256 checksums, including the CLI all.jar, then smoke-test the downloaded CLI. Bound retries in the release workflow and cover propagation, corruption, timeout, and version failures with CI-script tests.
kdubb
marked this pull request as ready for review
October 20, 2026 18:42
[Medium impact] The PR appears safe to merge; the CLI diagnostics fix introduces no new blocking issue. SummaryAdds a Maven availability gate before the remaining release steps.
Diagram%%{init: {'theme': 'neutral'}}%%
flowchart TD
A[Publish Maven artifacts] --> B[Download artifacts and checksums]
B --> C[Check SHA-256 and CLI version]
C -->|Pass| D[Publish plugin, Docker, docs, and GitHub release]
C -->|Fail| E[Log failure and retry]
E --> B
E -->|Retries or step timeout exhausted| F[Stop release]
Reviews (2) 路 Last reviewed commit: "Preserve CLI output in release verificat..." 路 Reviewed by Greptile |
Include captured stdout and stderr for failed or timed-out Java runs. Cover retry logs and final errors for text, byte, and absent subprocess output.
kdubb
enabled auto-merge
October 20, 2026 18:57
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.



Maven Central can still return 404 after the publish task succeeds. Beta.51 exposed this gap: the GitHub release completed before the public CLI could resolve.
Add a verification gate immediately after Maven publication, before plugin, Docker, documentation, and GitHub release publication. It downloads generator/CLI POMs and JARs plus
cli-<version>-all.jar, checks their public SHA-256 checksums, and runs the downloaded CLI to verify its exact version. The.fatjarsuffix is not a Maven artifact filename; JBang'sall@fatjarnotation remains unchanged.Following the approach in outfoxx/sunday-js#86, propagation and transient failures retry up to 60 times with 15-second pauses, 30-second network timeouts, a 60-second CLI timeout, and a hard 20-minute workflow step limit. Failures report the unmet condition. Generator verifies immutable versioned Maven coordinates, so it does not need npm's shared dist-tag serialization.
Validation:
./gradlew verifyCiArtifactspassed all 23 tests, including nine new release verification tests. This task already participates in rootcheck.2.0.0-beta.51passed: all five artifacts and SHA-256 checksums, followed by the downloaded CLI reporting beta.51 / build5ff1f62.