Skip to content

Commit 97727f4

Browse files
committed
build(jreleaser): use enum-based Active/Signing and aggregate subprojects staging for multi-module release
1 parent c002cc3 commit 97727f4

1 file changed

Lines changed: 10 additions & 8 deletions

File tree

build-logic/src/main/kotlin/de.brendamour.java-conventions.gradle.kts

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
import java.util.*
2+
import org.gradle.api.publish.maven.MavenPublication
23
import org.jreleaser.model.Active
34
import org.jreleaser.model.Signing
4-
import org.gradle.api.publish.maven.MavenPublication
5+
import org.gradle.api.Project
56
import org.gradle.api.tasks.compile.JavaCompile
67
import org.gradle.api.tasks.javadoc.Javadoc
78
import org.gradle.api.tasks.wrapper.Wrapper
@@ -111,35 +112,36 @@ if (project == rootProject) {
111112
}
112113

113114
signing {
114-
active.set("ALWAYS")
115+
active.set(Active.ALWAYS)
115116
armored.set(true)
116117
command {
117118
executable.set("gpg")
118119
args.set(listOf("--batch", "--yes", "--pinentry-mode", "loopback"))
119120
keyName.set("9474B9FCBDF93BEE7CC4B69B4CE3C3B7A5E5FCC2")
120121
}
121-
mode.set("COMMAND")
122+
mode.set(Signing.Mode.COMMAND)
122123
}
123124

124125
deploy {
125126
maven {
126-
val stagingPaths = (listOf(project) + project.subprojects).map { p ->
127+
val projs: List<Project> = listOf(rootProject) + rootProject.subprojects.toList()
128+
val stagingPaths: List<String> = projs.map { p: Project ->
127129
p.layout.buildDirectory.dir("staging-deploy").get().asFile.absolutePath
128130
}
129131
mavenCentral {
130132
create("release-deploy") {
131-
active.set("RELEASE")
133+
active.set(Active.RELEASE)
132134
url.set("https://central.sonatype.com/api/v1/publisher")
133-
stagingRepositories.set(stagingPaths)
135+
stagingRepositories.set(providers.provider { stagingPaths })
134136
applyMavenCentralRules.set(true)
135137
}
136138
}
137139
nexus2 {
138140
create("snapshot-deploy") {
139-
active.set("SNAPSHOT")
141+
active.set(Active.SNAPSHOT)
140142
url.set("https://central.sonatype.com/api/v1/publisher")
141143
snapshotUrl.set("https://central.sonatype.com/repository/maven-snapshots")
142-
stagingRepositories.set(stagingPaths)
144+
stagingRepositories.set(providers.provider { stagingPaths })
143145
applyMavenCentralRules.set(true)
144146
closeRepository.set(true)
145147
snapshotSupported.set(true)

0 commit comments

Comments
 (0)