diff --git a/ci/release/Jenkinsfile b/ci/release/Jenkinsfile index 871a5f5..c1c03ce 100644 --- a/ci/release/Jenkinsfile +++ b/ci/release/Jenkinsfile @@ -58,9 +58,16 @@ pipeline { mavenLocalRepo: env.WORKSPACE_TMP + '/.m2repository') { configFileProvider([configFile(fileId: 'release.config.ssh', targetLocation: env.HOME + '/.ssh/config'), configFile(fileId: 'release.config.ssh.knownhosts', targetLocation: env.HOME + '/.ssh/known_hosts')]) { - // using MAVEN_GPG_PASSPHRASE (the default env variable name for passphrase in maven gpg plugin) - withCredentials([file(credentialsId: 'release.gpg.private-key', variable: 'RELEASE_GPG_PRIVATE_KEY_PATH'), - string(credentialsId: 'release.gpg.passphrase', variable: 'MAVEN_GPG_PASSPHRASE')]) { + withCredentials([// TODO: Once we switch to maven-central publishing (from nexus2) we need to add a new credentials + // to use the following env variable names to set the user/password: + // - JRELEASER_MAVENCENTRAL_USERNAME + // - JRELEASER_MAVENCENTRAL_TOKEN + // Also use the new `credentialsId` for Maven Central, e.g.: + // usernamePassword(credentialsId: '???????', passwordVariable: 'JRELEASER_MAVENCENTRAL_TOKEN', usernameVariable: 'JRELEASER_MAVENCENTRAL_USERNAME'), + usernamePassword(credentialsId: 'ossrh.sonatype.org', passwordVariable: 'JRELEASER_NEXUS2_PASSWORD', usernameVariable: 'JRELEASER_NEXUS2_USERNAME'), + string(credentialsId: 'Hibernate-CI.github.com', variable: 'JRELEASER_GITHUB_TOKEN'), + file(credentialsId: 'release.gpg.private-key', variable: 'RELEASE_GPG_PRIVATE_KEY_PATH'), + string(credentialsId: 'release.gpg.passphrase', variable: 'JRELEASER_GPG_PASSPHRASE')]) { sshagent(['ed25519.Hibernate-CI.github.com']) { sh 'mvn -v' sh 'cat $HOME/.ssh/config' diff --git a/jreleaser.yml b/jreleaser.yml new file mode 100644 index 0000000..828118b --- /dev/null +++ b/jreleaser.yml @@ -0,0 +1,39 @@ +project: + languages: + java: + groupId: org.hibernate.infra.develocity + +release: + github: + skipTag: true + skipRelease: true + tagName: '{{projectVersion}}' + +# File signing is always active +signing: + mode: COMMAND + active: RELEASE + armored: true + +# Deploy JARs and POMs to Maven Central +deploy: + maven: + nexus2: + maven-central: + active: RELEASE + url: https://oss.sonatype.org/service/local + snapshotUrl: https://oss.sonatype.org/content/repositories/snapshots/ + closeRepository: true + stagingRepositories: + - target/staging-deploy/maven + mavenCentral: + maven-central: + # TODO: Change to RELEASE once switching to Maven-Central: + active: NEVER + url: https://central.sonatype.com/api/v1/publisher + snapshotSupported: false + applyMavenCentralRules: true + stagingRepositories: + - target/staging-deploy/maven + # Deployment identifier used for publication. + # deploymentId: dd9991b0-18a7-41e7-b1fe-37b8ea936f85 diff --git a/pom.xml b/pom.xml index 698e57f..37367da 100644 --- a/pom.xml +++ b/pom.xml @@ -27,22 +27,12 @@ 17 17 true - 1.7.0 3.11.2 3.3.1 3.6.0 - 3.2.7 3.3.2 - - true - - - ossrh - https://oss.sonatype.org/service/local/staging/deploy/maven2/ - https://oss.sonatype.org/ - ossrh - https://oss.sonatype.org/content/repositories/snapshots + 3.1.4 @@ -172,22 +162,8 @@ org.apache.maven.plugins - maven-gpg-plugin - ${maven-gpg-plugin.version} - - - sign-artifacts - verify - - sign - - - ${gpg.sign.skip} - ${env.RELEASE_GPG_HOMEDIR} - true - - - + maven-deploy-plugin + ${maven-deploy-plugin.version} @@ -215,25 +191,12 @@ http://ci.hibernate.org/ - - - ${ossrh.releases.repo.id} - OSSRH Releases Repository - ${ossrh.releases.repo.url} - - - ${ossrh.snapshots.repo.id} - OSSRH Snapshots Repository - ${ossrh.snapshots.repo.url} - - - https://github.com/hibernate/hibernate-develocity-maven-extension scm:git:git@github.com:hibernate/hibernate-develocity-maven-extension.git scm:git:git@github.com:hibernate/hibernate-develocity-maven-extension.git - HEAD - + HEAD + GitHub @@ -250,22 +213,10 @@ - false + local::file:${maven.multiModuleProjectDirectory}/target/staging-deploy/maven - - org.sonatype.plugins - nexus-staging-maven-plugin - ${nexus-staging-maven-plugin.version} - true - - ${ossrh.releases.repo.baseUrl} - ${ossrh.releases.repo.id} - true - true - - org.apache.maven.plugins maven-source-plugin