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

CD pipeline for tagged releases of EE10 version #356

Draft
wants to merge 2 commits into
base: develop-jakartaee-10
Choose a base branch
from

Conversation

poikilotherm
Copy link

Relates to #351

- Adding a Maven profile to activate signing packages,
  and creating source + javadoc JARs for upload
- Add CD pipeline based on Github Action using the Maven profile
  and using a GPG key from Github Secrets
- Runs on tags pushed to the repo
@poikilotherm poikilotherm marked this pull request as draft November 3, 2022 15:26
@poikilotherm
Copy link
Author

@lincolnthree here's a PR to look at (it should not be merged yet as we need to coordinate a few things...)

Open questions:

  1. Does this look good? (Please note the names of the secrets, we might want to change those to your liking)
  2. Do you want to actually create "Github releases" instead of "just" push a tag?
  3. There is the distribution module of which I'm not sure what's it supposed to do - should the resulting ZIP be pushed to Central, too? Should this be included in a Github release as an artifact?
  4. The POM files seem to have a problem - pomchecker:check-maven-central is not happy about missing <name> from them!

grafik

We might need to use sth like the flatten plugin to remove the cruft like <repositories>...

@lincolnthree
Copy link
Member

lincolnthree commented Nov 3, 2022

Hey! Thanks for this PR.

  1. Yes, I think it looks good! It looks like all I need to do is add secrets.MAVEN_GPG_KEY and secrets.MAVEN_GPG_PASSPHRASE, is that right or did I miss any vars?
  2. I'm not opposed to it. I see lots of projects doing that. Can you point me to some docs on how releases work on GitHub? I have not previously used them. What do you think is best practice here?
  3. The distribution module is for non-maven projects (do those still exist?) We could potentially drop support for that, but... if there's no harm in publishing it... let's leave it.
  4. Interesting. I'm not sure why name would be required now. It has never prevented releases in the past, is that a new requirement? We can add a name I guess but it seems... unnecessary to me.

I don't even see a <repositories> element in the pom.xml. Where is that coming from? Possibly one of the samples?

@lincolnthree
Copy link
Member

Okay, I have added the two secrets, though I'm not 100% sure the secret is in the correct format. If I am understanding correctly, I think creating releases via the GitHub UI would be preferable to auto-creating based on tags. But... we can figure that out I guess. What would the difference be between the two in terms of configuration?

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.

2 participants