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

Refactor workflows and implement combined Java module release #852

Merged
merged 5 commits into from
Dec 20, 2023

Conversation

markpatton
Copy link
Contributor

@markpatton markpatton commented Dec 4, 2023

Major changes:

  • Add a workflow that releases all the Java modules together.
  • Separate snapshot and release workflows that can be reused by other modules
  • Add reusable actions for complicated scripts
  • Handle case of sonatype push failing on closing the repo, but it actually succeeds
  • Automatically wait for sonatype releases to appear in Maven Central
  • Detect case of Maven Central release already existing and skip the release version deploy
  • The release workflows also make a GitHub release

The release all Java modules workflow combines pass-core, and pass-support into one module on the file system such that maven can have everything in the reactor.

Testing resulted in two full releases being made, 1.3.0-RC1 and 1.3.0-RC2. The commits for those versions no longer exist because history was rewritten. The tags to those commits for the releases are no longer valid. After this pr is merged, the tags should be reset to that commit.

@markpatton markpatton force-pushed the combined-release branch 3 times, most recently from 0002dc6 to 1d10f29 Compare December 5, 2023 18:56
@markpatton markpatton linked an issue Dec 11, 2023 that may be closed by this pull request
@markpatton markpatton force-pushed the combined-release branch 2 times, most recently from 3d590a8 to da68686 Compare December 14, 2023 15:33
@markpatton markpatton changed the title Add a workflow that releases all the Java modules Refactor workflows and add implement combined release Dec 19, 2023
@markpatton markpatton marked this pull request as ready for review December 19, 2023 14:39
@markpatton markpatton requested a review from jabrah December 19, 2023 14:39
@markpatton markpatton changed the title Refactor workflows and add implement combined release Refactor workflows and implement combined Java module release Dec 19, 2023
.github/workflows/ci.yml Outdated Show resolved Hide resolved
.github/workflows/release.yml Show resolved Hide resolved
.github/workflows/release.yml Outdated Show resolved Hide resolved
docs/dev/release.md Show resolved Hide resolved
@jabrah
Copy link
Contributor

jabrah commented Dec 19, 2023

Should we have the release and pass-java-release workflows run tests before build&deploy that can spike the run on failure?

@markpatton
Copy link
Contributor Author

Should we have the release and pass-java-release workflows run tests before build&deploy that can spike the run on failure?

The deploy goal will automatically run the unit tests and integration tests so it will be spiked if they fail.

Copy link
Contributor

@jabrah jabrah left a comment

Choose a reason for hiding this comment

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

looking good, quite a few interesting interactions when factoring in calls from other repos

.github/workflows/release.yml Show resolved Hide resolved
@markpatton markpatton merged commit 0f8911f into main Dec 20, 2023
2 checks passed
@markpatton markpatton deleted the combined-release branch December 20, 2023 15:08
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.

Add GitHub action to release all Java modules
2 participants