Skip to content

Commit da4482d

Browse files
committed
Fix Maven Central release pipeline
1 parent 1ced5fb commit da4482d

4 files changed

Lines changed: 14 additions & 23 deletions

File tree

.github/workflows/release.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,4 +28,4 @@ jobs:
2828
distribution: temurin
2929
java-version: 17
3030
- uses: gradle/actions/setup-gradle@v4
31-
- run: ./gradlew publish jreleaserFullRelease
31+
- run: ./gradlew --no-configuration-cache publishAllPublicationsToStagingRepository jreleaserFullRelease

build.gradle.kts

Lines changed: 12 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@ import org.gradle.plugins.signing.SigningExtension
1010
plugins {
1111
base
1212
alias(libs.plugins.jreleaser)
13-
alias(libs.plugins.nexusPublish)
1413
alias(libs.plugins.spotless) apply false
1514
}
1615

@@ -30,6 +29,10 @@ subprojects {
3029
apply(plugin = "jacoco")
3130
apply(plugin = "com.diffplug.spotless")
3231

32+
val signingKey = providers.environmentVariable("JRELEASER_GPG_SECRET_KEY").orNull
33+
val signingPassphrase = providers.environmentVariable("JRELEASER_GPG_PASSPHRASE").orNull
34+
val hasSigningCredentials = !signingKey.isNullOrBlank() && !signingPassphrase.isNullOrBlank()
35+
3336
extensions.configure<JavaPluginExtension> {
3437
toolchain {
3538
languageVersion.set(JavaLanguageVersion.of(17))
@@ -64,6 +67,12 @@ subprojects {
6467
}
6568

6669
extensions.configure<PublishingExtension> {
70+
repositories {
71+
maven {
72+
name = "staging"
73+
url = uri(rootProject.layout.buildDirectory.dir("staging-deploy"))
74+
}
75+
}
6776
publications {
6877
if (project.path != ":promptspec-gradle-plugin") {
6978
create<MavenPublication>("mavenJava") {
@@ -93,37 +102,21 @@ subprojects {
93102
}
94103

95104
extensions.configure<SigningExtension> {
96-
val signingKey = providers.environmentVariable("JRELEASER_GPG_SECRET_KEY").orNull
97-
val signingPassphrase = providers.environmentVariable("JRELEASER_GPG_PASSPHRASE").orNull
98-
99-
if (!signingKey.isNullOrBlank() && !signingPassphrase.isNullOrBlank()) {
105+
if (hasSigningCredentials) {
100106
useInMemoryPgpKeys(signingKey, signingPassphrase)
101107
}
102108

103109
sign(extensions.getByType(PublishingExtension::class.java).publications)
104110
}
105111

106112
tasks.withType<Sign>().configureEach {
107-
val signingKeyPresent = !providers.environmentVariable("JRELEASER_GPG_SECRET_KEY")
108-
.orNull
109-
.isNullOrBlank()
110-
val publishingToMavenLocal = gradle.startParameter.taskNames.any { taskName ->
111-
taskName.contains("publishToMavenLocal")
112-
}
113-
114113
onlyIf {
115-
signingKeyPresent || !publishingToMavenLocal
114+
hasSigningCredentials
116115
}
117116
}
118117
}
119118
}
120119

121-
nexusPublishing {
122-
repositories {
123-
sonatype()
124-
}
125-
}
126-
127120
jreleaser {
128121
project {
129122
name.set("PromptSpec-J")

gradle/libs.versions.toml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ jreleaser = "1.18.0"
88
mavenPluginAnnotations = "3.15.1"
99
mavenPluginApi = "3.9.9"
1010
mockito = "5.16.0"
11-
nexusPublish = "2.0.0"
1211
pluginPublish = "1.3.1"
1312
slf4j = "2.0.17"
1413
spotless = "7.0.2"
@@ -39,6 +38,5 @@ spring-boot-starter-test = { module = "org.springframework.boot:spring-boot-star
3938

4039
[plugins]
4140
jreleaser = { id = "org.jreleaser", version.ref = "jreleaser" }
42-
nexusPublish = { id = "io.github.gradle-nexus.publish-plugin", version.ref = "nexusPublish" }
4341
pluginPublish = { id = "com.gradle.plugin-publish", version.ref = "pluginPublish" }
4442
spotless = { id = "com.diffplug.spotless", version.ref = "spotless" }

promptspec-gradle-plugin/build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ dependencies {
1414
gradlePlugin {
1515
plugins {
1616
create("promptspec") {
17-
id = "io.promptspecj.gradle"
17+
id = "io.github.adwantg.promptspec"
1818
implementationClass = "io.promptspecj.gradle.PromptSpecGradlePlugin"
1919
displayName = "PromptSpec-J Gradle Plugin"
2020
description = "Validates and generates PromptSpec contracts."

0 commit comments

Comments
 (0)