Skip to content

Commit 9349afa

Browse files
committed
chore: 解决sonatype oss创建多个staging repo问题 #2
1 parent 94d4bd6 commit 9349afa

9 files changed

Lines changed: 35 additions & 40 deletions

File tree

build.gradle.kts

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,14 @@
1+
import de.marcphilipp.gradle.nexus.NexusPublishExtension
2+
13
description = "Tencent BlueKing DevOps Framework Build"
24

35
plugins {
46
kotlin("jvm") version Versions.Kotlin apply false
57
kotlin("kapt") version Versions.Kotlin apply false
68
kotlin("plugin.spring") version Versions.Kotlin apply false
79
id("io.spring.dependency-management") version Versions.DependencyManagement apply false
10+
id("io.codearte.nexus-staging") version Versions.NexusStaging
11+
id("de.marcphilipp.nexus-publish") version Versions.NexusPublish apply false
812
}
913

1014
allprojects {
@@ -15,4 +19,19 @@ allprojects {
1519
mavenCentral()
1620
jcenter()
1721
}
18-
}
22+
}
23+
24+
nexusStaging {
25+
username = System.getenv("SONATYPE_USERNAME")
26+
password = System.getenv("SONATYPE_PASSWORD")
27+
}
28+
29+
subprojects {
30+
apply(plugin = "de.marcphilipp.nexus-publish")
31+
32+
configure<NexusPublishExtension> {
33+
repositories {
34+
sonatype()
35+
}
36+
}
37+
}

buildSrc/src/main/kotlin/Versions.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,4 +9,6 @@ object Versions {
99
const val SpringBoot = "2.3.3.RELEASE"
1010
const val SpringCloud = "Hoxton.SR8"
1111
const val DependencyManagement = "1.0.10.RELEASE"
12+
const val NexusPublish = "0.4.0"
13+
const val NexusStaging = "0.22.0"
1214
}

buildSrc/src/main/kotlin/publish/base.gradle.kts renamed to buildSrc/src/main/kotlin/publish.gradle.kts

Lines changed: 9 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,20 @@
1-
package publish
2-
31
apply(plugin = "signing")
4-
apply(plugin = "maven-publish")
52

63
val isReleaseVersion = !version.toString().endsWith("SNAPSHOT")
74

85
configure<PublishingExtension> {
9-
repositories {
10-
maven {
11-
val releasesRepoUrl = uri("https://oss.sonatype.org/service/local/staging/deploy/maven2/")
12-
val snapshotsRepoUrl = uri("https://oss.sonatype.org/content/repositories/snapshots/")
13-
name = "center"
14-
url = if (isReleaseVersion) releasesRepoUrl else snapshotsRepoUrl
15-
credentials {
16-
username = System.getenv("SONATYPE_USERNAME")
17-
password = System.getenv("SONATYPE_PASSWORD")
6+
publications {
7+
plugins.findPlugin(JavaPlugin::class.java)?.let {
8+
create<MavenPublication>("jar") {
9+
from(components["java"])
10+
}
11+
}
12+
plugins.findPlugin(JavaPlatformPlugin::class.java)?.let {
13+
create<MavenPublication>("pom") {
14+
from(components["javaPlatform"])
1815
}
1916
}
2017
}
21-
2218
publications.withType<MavenPublication> {
2319
pom {
2420
name.set(project.name)

buildSrc/src/main/kotlin/publish/jar.gradle.kts

Lines changed: 0 additions & 11 deletions
This file was deleted.

buildSrc/src/main/kotlin/publish/pom.gradle.kts

Lines changed: 0 additions & 11 deletions
This file was deleted.

devops-boot-project/devops-boot-core/build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ subprojects {
1313
apply(plugin = "org.jetbrains.kotlin.kapt")
1414
apply(plugin = "org.jetbrains.kotlin.plugin.spring")
1515
apply(plugin = "io.spring.dependency-management")
16-
apply(plugin = "publish.jar")
16+
apply(plugin = "publish")
1717

1818
dependencyManagement {
1919
imports {

devops-boot-project/devops-boot-dependencies/build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
plugins {
22
`java-platform`
3-
id("publish.pom")
3+
id("publish")
44
}
55

66
description = "DevOps Boot Dependencies"

devops-boot-project/devops-boot-starters/build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ subprojects {
99
apply(plugin = "java-library")
1010
apply(plugin = "org.jetbrains.kotlin.jvm")
1111
apply(plugin = "io.spring.dependency-management")
12-
apply(plugin = "publish.jar")
12+
apply(plugin = "publish")
1313

1414
dependencyManagement {
1515
imports {

devops-boot-project/devops-boot-tools/devops-boot-gradle-plugin/build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
plugins {
22
kotlin("jvm")
33
id("java-gradle-plugin")
4-
id("publish.base")
4+
id("publish")
55
}
66

77
description = "DevOps Boot Gradle Plugin"

0 commit comments

Comments
 (0)