| Summary: | Setup deployment infrastructure for gemini-blueprint | ||
|---|---|---|---|
| Product: | Community | Reporter: | Olaf Otto <olaf> |
| Component: | CI-Jenkins | Assignee: | Portal Bugzilla Dummy Inbox <portal-inbox> |
| Status: | CLOSED FIXED | QA Contact: | |
| Severity: | normal | ||
| Priority: | P3 | CC: | charles, denis.roy, frederic.gurr, joao.nelas, mikael.barbero, webmaster |
| Version: | unspecified | ||
| Target Milestone: | --- | ||
| Hardware: | All | ||
| OS: | All | ||
| Whiteboard: | |||
| Bug Depends on: | |||
| Bug Blocks: | 394753 | ||
|
Description
Olaf Otto
I'm raising the prio of this issue - it's blocking me from performing a release. Do you have a HIPP instance? Hi Denis, Thanks for taking time for this issue! We do have a hudson instance for all the gemini projects: https://hudson.eclipse.org/gemini/ Are you implying it's possible to perform an automated delivery from a Hudson instance? Regards, Olaf Everything should be possible from within Hudson. If by "automated delivery" you mean putting files on download.eclipse.org, or repo.eclipse.org, or even Maven central then yes, all that is possible. Just let us know what you need, we'll help you set it up. (In reply to Denis Roy from comment #4) > Everything should be possible from within Hudson. If by "automated > delivery" you mean putting files on download.eclipse.org, or > repo.eclipse.org, or even Maven central then yes, all that is possible. > Just let us know what you need, we'll help you set it up. Hi Denis, Thank you for your suggestions! In this case, I'd like to try releasing to maven central - advise on how to accomplish this would be highly appreciated. I already have experience releasing non-eclipse projects to maven central. Regards, Olaf Olaf, I think this is the outline of the process. Please bear with me as I don't normally do the setup, and it's quite a new setup for our infra: As HIPP is run as a system account created specifically for your project, we can consider your Hudson instance as a "person" on your project. 1. webmasters create a GPG key for your HIPP system account. We sign the key with the webmaster's GPG key. You can also sign it to. 2. We create an OSSRH account on Maven Central based on the mailing list of your project. For instance, the user account would be gemini-dev@eclipse.org. 3. We install these credentials in your HIPP instance. 4. You deploy to Maven Central. If that's ok, I'll go ahead and begin the setup. That sounds perfect - please go ahead! Olaf, I've set up all the keys and the OSSRH account, but I seem to have hit a snag with the Maven config. I'll try something today, but I may need Mikael's help early next week to figure this out. Thanks for your patience. Once it's done, deplying to Central will be easy and seamless. Hi Denis, Do you have an update regarding the progress? Regards, Olaf Denis, You did everything good ;) The only thing that was missing was the usage of the proper settings in the test job. For some reason, it was not possible without first upgrading the maven plugin to the latest version. However, I can't find the issue @ OSSRH where you've asked for the creation of the Gemini project space (an issue similar to this one https://issues.sonatype.org/browse/OSSRH-21796). As I did not specify that step on our internal documentation of the process, I won't be surprised you did not do it ;) These steps are actually outlined here http://central.sonatype.org/pages/ossrh-guide.html#create-a-ticket-with-sonatype and it was so obvious to me that I've skipped them. Sorry about that. Thanks, that explains it. If you've updated the docs, please let me perform the next request of this type so I can go through it. Are we done with this request? (In reply to Denis Roy from comment #11) > Thanks, that explains it. If you've updated the docs, please let me perform > the next request of this type so I can go through it. Will do. > Are we done with this request? Nope. You still need to create a ticket (https://issues.sonatype.org/secure/CreateIssue.jspa?issuetype=21&pid=10134) for Gemini. See this one https://issues.sonatype.org/browse/OSSRH-21796 I created for Package Drone. It will ask you the groupId of the project. What I usually do, is go to the git repo of the project, search for the parent pom and use the groupId of this pom. For gemini, there are several git repo (http://git.eclipse.org/c/gemini) but they all use the same groupId prefix "org.eclipse.gemini" so this is the value you should specify in the ticket: http://git.eclipse.org/c/gemini.jpa/org.eclipse.gemini.jpa.git/tree/pom.xml#n31 http://git.eclipse.org/c/gemini.blueprint/org.eclipse.gemini.blueprint.git/tree/pom.xml#n11 http://git.eclipse.org/c/gemini.dbaccess/org.eclipse.gemini.dbaccess.git/tree/mvn_parent/pom.xml#n22 http://git.eclipse.org/c/gemini.management/org.eclipse.gemini.managment.git/tree/gemini.management.releng/pom.xml#n5 http://git.eclipse.org/c/gemini.naming/org.eclipse.gemini.naming.git/tree/pom.xml#n13 Once the ticket is resolved, I usually comment on the bug to ask committers to tell us when they did their first release so that we can comment on the ticket as required by Sonatype. Using org.eclipse.gemini as a group id has the additional advantage that other gemini projects could also begin to deploy to maven central... Please let me know when the sonatpe ticket is created, I'll watch it then, thanks! Hi all, (In reply to Mikaël Barbero from comment #12) > Nope. You still need to create a ticket > (https://issues.sonatype.org/secure/CreateIssue.jspa?issuetype=21&pid=10134) > for Gemini. See this one https://issues.sonatype.org/browse/OSSRH-21796 I > created for Package Drone. Has an issue been created yet? Please let me know if I can be of any assistance. Regards, Olaf Does this make sense: https://issues.sonatype.org/browse/OSSRH-21895 (In reply to Denis Roy from comment #15) > Does this make sense: > https://issues.sonatype.org/browse/OSSRH-21895 Denis, That's perfect. https://issues.sonatype.org/browse/OSSRH-21895 is now resolved. The signing key is also created and configured on your HIPP. Your public key is https://pgp.mit.edu/pks/lookup?op=vindex&search=0x857BDA2850659DEC. It is signed by the webmaster's key. As a committer, you should sign it too. On your HIPP, you have a dedicated maven settings to use which is named "Deploy to OSSRH". You have to configure it on maven build step in your jobs. This setting contains a server definition named "ossrh" to let you upload things to sonatype's server. This server id should be used in a distributionManagement repository somewhere specifying the url. See http://central.sonatype.org/pages/ossrh-guide.html#releasing-to-central and http://central.sonatype.org/pages/ossrh-guide.html#ossrh-usage-notes for details. The gpg passphrase is also configured (encrypted) in this settings (as described at https://maven.apache.org/plugins/maven-gpg-plugin/usage.html#Configure_passphrase_in_settings.xml). You can now use the maven-gpg-plugin, it should work as is without further configuration if you properly selected the "Deploy to OSSRH" setting. Let us know when you promoted your first release so we can comment on https://issues.sonatype.org/browse/OSSRH-19296. (In reply to Mikaël Barbero from comment #16) > https://issues.sonatype.org/browse/OSSRH-21895 is now resolved. Excellent - thanks a lot! How would I promote future releases from the sonatype staging repo? Usually, one logs into their Nexus to close + promote the staging repo, but this requires login credentials for their web interface. Regards, Olaf (In reply to Olaf Otto from comment #17) > (In reply to Mikaël Barbero from comment #16) > > > https://issues.sonatype.org/browse/OSSRH-21895 is now resolved. > > Excellent - thanks a lot! How would I promote future releases from the > sonatype staging repo? Usually, one logs into their Nexus to close + promote > the staging repo, but this requires login credentials for their web > interface. We can't provide you with the OSSRH credentials. You should use nexus-staging-plugin to do these steps directly from your HIPP. See http://central.sonatype.org/pages/apache-maven.html#nexus-staging-maven-plugin-for-deployment-and-release for details. (In reply to Mikaël Barbero from comment #18) Perfect, thanks! Dear Denis and Mikaël, Today I successfully performed the first release to maven central. The deployment infrastructure is thus working smoothly. Thanks a lot for your support! Regards, Olaf Thanks for working on this guys! Closing. |