diff --git a/build.gradle.kts b/build.gradle.kts index 5901dde..955e415 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -5,7 +5,7 @@ plugins { id("com.bakdata.sonar") version "1.1.17" id("com.bakdata.sonatype") version "1.1.18" id("org.hildan.github.changelog") version "1.13.1" - id("org.gradle.kotlin.kotlin-dsl") version "1.4.9" apply false + id("org.gradle.kotlin.kotlin-dsl") version "2.1.6" apply false id("com.gradle.plugin-publish") version "1.2.1" apply false } diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index 7454180..e708b1c 100644 Binary files a/gradle/wrapper/gradle-wrapper.jar and b/gradle/wrapper/gradle-wrapper.jar differ diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index c51cbf1..a0f7639 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-6.9.4-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-7.2-all.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/sonar/src/test/kotlin/com/bakdata/gradle/SonarPluginIT.kt b/sonar/src/test/kotlin/com/bakdata/gradle/SonarPluginIT.kt index 9f872ba..943187c 100644 --- a/sonar/src/test/kotlin/com/bakdata/gradle/SonarPluginIT.kt +++ b/sonar/src/test/kotlin/com/bakdata/gradle/SonarPluginIT.kt @@ -59,7 +59,7 @@ internal class SonarPluginIT { } dependencies { testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine:5.3.0") - testCompile("org.junit.jupiter:junit-jupiter-api:5.3.0") + testImplementation("org.junit.jupiter:junit-jupiter-api:5.3.0") } tasks.withType { useJUnitPlatform() @@ -97,7 +97,7 @@ internal class SonarPluginIT { } dependencies { "testRuntimeOnly"("org.junit.jupiter:junit-jupiter-engine:5.3.0") - "testCompile"("org.junit.jupiter:junit-jupiter-api:5.3.0") + "testImplementation"("org.junit.jupiter:junit-jupiter-api:5.3.0") } tasks.withType { useJUnitPlatform() @@ -132,4 +132,4 @@ internal class SonarPluginIT { .haveExactly(1, taskWithPathAndOutcome(":sonarqube", TaskOutcome.SUCCESS)) } } -} \ No newline at end of file +} diff --git a/sonatype/src/main/kotlin/com/bakdata/gradle/SonatypePlugin.kt b/sonatype/src/main/kotlin/com/bakdata/gradle/SonatypePlugin.kt index 057f353..70f8ad9 100644 --- a/sonatype/src/main/kotlin/com/bakdata/gradle/SonatypePlugin.kt +++ b/sonatype/src/main/kotlin/com/bakdata/gradle/SonatypePlugin.kt @@ -108,6 +108,7 @@ class SonatypePlugin : Plugin { username.set(getOverriddenSetting(SonatypeSettings::osshrUsername)) password.set(getOverriddenSetting(SonatypeSettings::osshrPassword)) getOverriddenSetting(SonatypeSettings::nexusUrl)?.let { nexusUrl.set(uri(it)) } + allowInsecureProtocol.set(getOverriddenSetting(SonatypeSettings::allowInsecureProtocol)) } } } @@ -166,6 +167,10 @@ class SonatypePlugin : Plugin { getOverriddenSetting(SonatypeSettings::connectTimeout)?.let { nexus.connectTimeout.value(Duration.ofSeconds(it)) } + + getOverriddenSetting(SonatypeSettings::allowInsecureProtocol)?.let { + nexus.repositories["nexus"].allowInsecureProtocol.value(it) + } } } } diff --git a/sonatype/src/main/kotlin/com/bakdata/gradle/SonatypeSettings.kt b/sonatype/src/main/kotlin/com/bakdata/gradle/SonatypeSettings.kt index f60ed7d..d0d9a8f 100644 --- a/sonatype/src/main/kotlin/com/bakdata/gradle/SonatypeSettings.kt +++ b/sonatype/src/main/kotlin/com/bakdata/gradle/SonatypeSettings.kt @@ -1,3 +1,27 @@ +/* + * The MIT License + * + * Copyright (c) 2024 bakdata GmbH + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + package com.bakdata.gradle import au.com.console.kassava.kotlinToString @@ -29,10 +53,11 @@ open class SonatypeSettings(var project: Project) { var developers: Action? = null var connectTimeout: Long = 300 var clientTimeout: Long = 300 + var allowInsecureProtocol: Boolean = false fun developers(developerSpec: Action) { this.developers = developerSpec } override fun toString() = kotlinToString(properties = SonatypeSettings::class.memberProperties.toTypedArray()) -} \ No newline at end of file +} diff --git a/sonatype/src/test/kotlin/com/bakdata/gradle/SonatypePluginIT.kt b/sonatype/src/test/kotlin/com/bakdata/gradle/SonatypePluginIT.kt index f1ae4c1..f6b0ba0 100644 --- a/sonatype/src/test/kotlin/com/bakdata/gradle/SonatypePluginIT.kt +++ b/sonatype/src/test/kotlin/com/bakdata/gradle/SonatypePluginIT.kt @@ -79,6 +79,7 @@ internal class SonatypePluginIT { } } nexusUrl = "${wiremock.baseUrl()}" + allowInsecureProtocol = true } """.trimIndent()) @@ -170,6 +171,7 @@ internal class SonatypePluginIT { } } nexusUrl = "${wiremock.baseUrl()}" + allowInsecureProtocol = true } subprojects {