Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Split Release workflow job into multiple, retryable jobs #8596

Merged
merged 1 commit into from
May 28, 2024

Conversation

snazy
Copy link
Member

@snazy snazy commented May 24, 2024

The Nessie release for 0.83 failed two times, we had to re-release as 0.83.1 and finally 0.83.2, beacuse the release-publish workflow is not retryable, mostly because multiple publications of Maven artifacts of the same versions are not possible.

This change splits the single workflow job into multiple:

Prepare -->--+
             |
             +-->-- Publish to Maven Central -->--+
             |                                    |
             +-->-- Publish OpenAPI ----------->--+
             |                                    |
             +-->-- Publish Docker images ----->--+
             |                                    |
             +-->-- Publish Helm Chart -------->--+
                                                  |
                                                  +-->-- GitHub Release notes

This change also moves the big script to create the GH release notes to a separate shell script.

Fixes #8581

@snazy snazy force-pushed the split-release-wf-job branch 3 times, most recently from d4ac8e3 to 3b6bb91 Compare May 24, 2024 12:24
The Nessie release for 0.83 failed two times, we had to re-release as 0.83.1 and finally 0.83.2, beacuse the release-publish workflow is not retryable, mostly because multiple publications of Maven artifacts of the same versions are not possible.

This change splits the single workflow job into multiple:

```
Prepare -->--+
             |
             +-->-- Publish to Maven Central -->--+
             |                                    |
             +-->-- Publish OpenAPI ----------->--+
             |                                    |
             +-->-- Publish Docker images ----->--+
             |                                    |
             +-->-- Publish Helm Chart -------->--+
                                                  |
                                                  +-->-- GitHub Release notes
```

This change also moves the big script to create the GH release notes to a separate shell script.

Fixes projectnessie#8581
@snazy snazy force-pushed the split-release-wf-job branch from 3b6bb91 to ea30ff9 Compare May 27, 2024 08:04
@snazy snazy requested review from adutra and XN137 May 27, 2024 08:04
@snazy snazy marked this pull request as ready for review May 27, 2024 08:04
Copy link
Contributor

@XN137 XN137 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

not easy to review the diff but nothing stood out as wrong/missed.

wondering though:
if any of the sub-jobs is eventually not retry-able for whatever reason, do we end up with a "worse" release state compared to previously (i.e. partially published artifacts) or is the result equally bad as the "single flow" we had before?
(and we dont advertise that version as usable)

@snazy
Copy link
Member Author

snazy commented May 28, 2024

if any of the sub-jobs is eventually not retry-able for whatever reason, do we end up with a "worse" release state compared to previously (i.e. partially published artifacts) or is the result equally bad as the "single flow" we had before?

I don't think it's worse than before. The only non-retryable part is the Maven publication. We already had a few "failed releases", where only some targets succeeded.

@snazy snazy merged commit 061694b into projectnessie:main May 28, 2024
16 checks passed
@snazy snazy deleted the split-release-wf-job branch May 28, 2024 08:35
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.

Split release workflow into multiple jobs
3 participants