This commit is contained in:
Stefan
2025-07-25 07:28:30 +02:00
parent 780629f0ff
commit 592ca02fb6
2 changed files with 30 additions and 20 deletions
+5 -5
View File
@@ -117,8 +117,8 @@ jobs:
- name: Publish Maven Artifact
env:
MAVEN_USERNAME: ${{ secrets.MAVEN_USERNAME }}
MAVEN_PASSWORD: ${{ secrets.MAVEN_PASSWORD }}
MAVEN_GPG_SIGNING_KEY: ${{ secrets.MAVEN_GPG_SIGNING_KEY }}
MAVEN_GPG_SIGNING_PASSWORD: ${{ secrets.MAVEN_GPG_SIGNING_PASSWORD }}
run: ./gradlew publish
OSSRH_USERNAME: ${{ secrets.OSSRH_USERNAME }}
OSSRH_PASSWORD: ${{ secrets.OSSRH_PASSWORD }}
GPG_SIGNING_KEY: ${{ secrets.GPG_SIGNING_KEY }}
GPG_SIGNING_PASSPHRASE: ${{ secrets.GPG_SIGNING_PASSPHRASE }}
run: ./gradlew publishToSonatype
+25 -15
View File
@@ -1,14 +1,15 @@
import java.util.*
group = "io.gorules"
version = "0.1.0"
plugins {
kotlin("jvm") version "2.1.0"
id("maven-publish")
id("signing")
id("io.github.gradle-nexus.publish-plugin") version "2.0.0"
}
group = "io.gorules"
version = "0.1.0"
dependencies {
implementation("net.java.dev.jna:jna:5.15.0")
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.9.0")
@@ -62,24 +63,33 @@ publishing {
}
}
repositories {
maven {
url = uri("https://s01.oss.sonatype.org/service/local/staging/deploy/maven2/")
credentials {
username = System.getenv("MAVEN_USERNAME")
password = System.getenv("MAVEN_PASSWORD")
}
}
mavenLocal()
}
}
signing {
val signingKeyBase64 = System.getenv("MAVEN_GPG_SIGNING_KEY")
val signingPassword = System.getenv("MAVEN_GPG_SIGNING_PASSWORD")
val signingKeyBase64 = providers.environmentVariable("GPG_SIGNING_KEY")
val signingPassphrase = providers.environmentVariable("GPG_SIGNING_PASSPHRASE")
if (signingKeyBase64 != null && signingPassword != null) {
val signingKey = Base64.getDecoder().decode(signingKeyBase64).toString(Charsets.UTF_8)
useInMemoryPgpKeys(signingKey, signingPassword)
if (signingKeyBase64.isPresent && signingPassphrase.isPresent) {
val signingKey = Base64.getDecoder().decode(signingKeyBase64.get()).toString(Charsets.UTF_8)
useInMemoryPgpKeys(signingKey, signingPassphrase.get())
sign(publishing.publications["mavenJava"])
}
}
nexusPublishing {
repositories {
sonatype {
nexusUrl.set(uri("https://s01.oss.sonatype.org/service/local"))
snapshotRepositoryUrl.set(uri("https://s01.oss.sonatype.org/content/repositories/snapshots/"))
val remoteUsername = providers.environmentVariable("OSSRH_USERNAME")
val remotePassword = providers.environmentVariable("OSSRH_PASSWORD")
if (remoteUsername.isPresent && remotePassword.isPresent) {
username.set(remoteUsername.get())
password.set(remotePassword.get())
}
}
}
}