build(tunnel): update publishing setup for OSSRH deprecation
The newly added zipReleasePublication task will generate a ZIP file at tunnel/build/distributions/tunnel-$VERSION-maven.zip that can be uploaded to https://central.sonatype.com/publishing. Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
This commit is contained in:
committed by
Jason A. Donenfeld
parent
f0b45d50f3
commit
9438b9d7f4
+20
-6
@@ -1,6 +1,7 @@
|
|||||||
@file:Suppress("UnstableApiUsage")
|
@file:Suppress("UnstableApiUsage")
|
||||||
|
|
||||||
import org.gradle.api.tasks.testing.logging.TestLogEvent
|
import org.gradle.api.tasks.testing.logging.TestLogEvent
|
||||||
|
import org.gradle.api.tasks.bundling.Zip
|
||||||
|
|
||||||
val pkg: String = providers.gradleProperty("wireguardPackageName").get()
|
val pkg: String = providers.gradleProperty("wireguardPackageName").get()
|
||||||
|
|
||||||
@@ -113,16 +114,29 @@ publishing {
|
|||||||
}
|
}
|
||||||
repositories {
|
repositories {
|
||||||
maven {
|
maven {
|
||||||
name = "sonatype"
|
name = "SonatypeUpload"
|
||||||
url = uri("https://oss.sonatype.org/service/local/staging/deploy/maven2/")
|
setUrl(layout.buildDirectory.dir("sonatype"))
|
||||||
credentials {
|
|
||||||
username = providers.environmentVariable("SONATYPE_USER").orNull
|
|
||||||
password = providers.environmentVariable("SONATYPE_PASSWORD").orNull
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
val releasePublication = publishing.publications.named("release").get() as MavenPublication
|
||||||
|
val mavenGroupPath = releasePublication.groupId.replace('.', '/')
|
||||||
|
val mavenArtifactId = releasePublication.artifactId
|
||||||
|
val mavenVersion = releasePublication.version
|
||||||
|
|
||||||
|
tasks.register<Zip>("zipReleasePublication") {
|
||||||
|
dependsOn(tasks.named("publishReleasePublicationToSonatypeUploadRepository"))
|
||||||
|
group = "distribution"
|
||||||
|
description = "Zips the release publication in Maven repository layout."
|
||||||
|
|
||||||
|
val sourceDir = layout.buildDirectory.dir("sonatype/${mavenGroupPath}/${mavenArtifactId}/${mavenVersion}")
|
||||||
|
from(sourceDir)
|
||||||
|
archiveFileName.set("${mavenArtifactId}-${mavenVersion}-maven.zip")
|
||||||
|
destinationDirectory.set(layout.buildDirectory.dir("distributions"))
|
||||||
|
into("${mavenGroupPath}/${mavenArtifactId}/${mavenVersion}")
|
||||||
|
}
|
||||||
|
|
||||||
signing {
|
signing {
|
||||||
useGpgCmd()
|
useGpgCmd()
|
||||||
sign(publishing.publications)
|
sign(publishing.publications)
|
||||||
|
|||||||
Reference in New Issue
Block a user