From ca611cd269625b9fc6d36f6f30f186e9e42fc1ad Mon Sep 17 00:00:00 2001 From: Philipp Schirmer Date: Mon, 26 Feb 2024 12:59:40 +0100 Subject: [PATCH] Use Gradle Nexus Publish Plugin --- .../kotlin/com/bakdata/gradle/SonatypePlugin.kt | 16 ++++++++-------- .../com/bakdata/gradle/SonatypePluginIT.kt | 4 ++-- .../com/bakdata/gradle/SonatypePluginTest.kt | 6 +++--- 3 files changed, 13 insertions(+), 13 deletions(-) diff --git a/sonatype/src/main/kotlin/com/bakdata/gradle/SonatypePlugin.kt b/sonatype/src/main/kotlin/com/bakdata/gradle/SonatypePlugin.kt index bc93ca5..0703fa1 100644 --- a/sonatype/src/main/kotlin/com/bakdata/gradle/SonatypePlugin.kt +++ b/sonatype/src/main/kotlin/com/bakdata/gradle/SonatypePlugin.kt @@ -77,8 +77,8 @@ class SonatypePlugin : Plugin { } configure { - // use default repository called 'sonatype' and set the corresponding default urls - repositories.sonatype { + // create default repository called 'nexus' and set the corresponding default urls + repositories.create("nexus") { nexusUrl.set(URI.create("https://s01.oss.sonatype.org/service/local/")) snapshotRepositoryUrl.set(URI.create("https://s01.oss.sonatype.org/content/repositories/snapshots/")) } @@ -101,7 +101,7 @@ class SonatypePlugin : Plugin { project.configure { packageGroup.set("com.bakdata") - repositories.getByName("sonatype").apply { + repositories["nexus"].apply { stagingProfileId.set("8412378836ed9c") username.set(getOverriddenSetting(SonatypeSettings::osshrUsername)) password.set(getOverriddenSetting(SonatypeSettings::osshrPassword)) @@ -136,7 +136,7 @@ class SonatypePlugin : Plugin { if (this.allTasks.any { it is AbstractPublishToMaven }) { project.configure { - repositories.getByName("sonatype").apply { + repositories["nexus"].apply { if (!username.isPresent) { missingProps.add(SonatypeSettings::osshrUsername) } @@ -150,11 +150,11 @@ class SonatypePlugin : Plugin { allprojects { extensions.findByType()?.let { nexus -> getOverriddenSetting(SonatypeSettings::nexusUrl)?.let { - nexus.repositories.getByName("sonatype").nexusUrl.value(uri(it)) + nexus.repositories["nexus"].nexusUrl.value(uri(it)) } getOverriddenSetting(SonatypeSettings::snapshotUrl)?.let { - nexus.repositories.getByName("sonatype").snapshotRepositoryUrl.value(uri(it)) + nexus.repositories["nexus"].snapshotRepositoryUrl.value(uri(it)) } getOverriddenSetting(SonatypeSettings::clientTimeout)?.let { @@ -194,7 +194,7 @@ class SonatypePlugin : Plugin { gradle.taskGraph.whenReady { if (getOverriddenSetting(SonatypeSettings::disallowLocalRelease)!!) { log.info("disallowing publish tasks") - if (hasTask(":publishToSonatype") && System.getenv("CI") == null) { + if (hasTask(":publishToNexus") && System.getenv("CI") == null) { throw GradleException("Publishing artifacts is only supported through CI (e.g., Travis)") } if (hasTask(":release") && System.getenv("CI") == null) { @@ -287,7 +287,7 @@ class SonatypePlugin : Plugin { private fun Project.logNexusPublishingSetting() { extensions.findByType(NexusPublishExtension::class)?.let { project.logger.debug( - "Publish to Nexus (${it.repositories.getByName("sonatype").nexusUrl.get()}) " + + "Publish to Nexus (${it.repositories["nexus"].nexusUrl.get()}) " + "with connect timeout of ${it.connectTimeout.get()} " + "and client timeout of ${it.clientTimeout.get()}" ) diff --git a/sonatype/src/test/kotlin/com/bakdata/gradle/SonatypePluginIT.kt b/sonatype/src/test/kotlin/com/bakdata/gradle/SonatypePluginIT.kt index c84820b..16adcd9 100644 --- a/sonatype/src/test/kotlin/com/bakdata/gradle/SonatypePluginIT.kt +++ b/sonatype/src/test/kotlin/com/bakdata/gradle/SonatypePluginIT.kt @@ -92,7 +92,7 @@ internal class SonatypePluginIT { val result = GradleRunner.create() .withProjectDir(testProjectDir.toFile()) - .withArguments("publishToSonatype", "closeAndReleaseStagingRepository", "--stacktrace", "--info") + .withArguments("publishToNexus", "closeAndReleaseStagingRepository", "--stacktrace", "--info") .withProjectPluginClassPath() .build() @@ -192,7 +192,7 @@ internal class SonatypePluginIT { val result = GradleRunner.create() .withProjectDir(testProjectDir.toFile()) - .withArguments("publishToSonatype", "closeAndReleaseStagingRepository", "--stacktrace", "--info") + .withArguments("publishToNexus", "closeAndReleaseStagingRepository", "--stacktrace", "--info") .withProjectPluginClassPath() .build() diff --git a/sonatype/src/test/kotlin/com/bakdata/gradle/SonatypePluginTest.kt b/sonatype/src/test/kotlin/com/bakdata/gradle/SonatypePluginTest.kt index 380b434..8b9ec7f 100644 --- a/sonatype/src/test/kotlin/com/bakdata/gradle/SonatypePluginTest.kt +++ b/sonatype/src/test/kotlin/com/bakdata/gradle/SonatypePluginTest.kt @@ -62,7 +62,7 @@ internal class SonatypePluginTest { softly.assertThat(project.tasks) .haveExactly(1, taskWithName("signSonatypePublication")) .haveExactly(1, taskWithName("publish")) - .haveExactly(1, taskWithName("publishToSonatype")) + .haveExactly(1, taskWithName("publishToNexus")) .haveExactly(1, taskWithName("closeAndReleaseStagingRepository")) } } @@ -93,7 +93,7 @@ internal class SonatypePluginTest { softly.assertThat(child.tasks) .haveExactly(1, taskWithName("signSonatypePublication")) .haveExactly(1, taskWithName("publish")) - .haveExactly(1, taskWithName("publishToSonatype")) + .haveExactly(1, taskWithName("publishToNexus")) .haveExactly(0, taskWithName("closeAndReleaseStagingRepository")) } } @@ -102,7 +102,7 @@ internal class SonatypePluginTest { softly.assertThat(parent.tasks) .haveExactly(0, taskWithName("signSonatypePublication")) .haveExactly(0, taskWithName("publish")) - .haveExactly(0, taskWithName("publishToSonatype")) + .haveExactly(0, taskWithName("publishToNexus")) .haveExactly(1, taskWithName("closeAndReleaseStagingRepository")) } }