Skip to content

Commit 8633066

Browse files
authored
build: split publish of 'platform' and 'services' / do not publish blocknode (#13973)
Signed-off-by: Jendrik Johannes <[email protected]>
1 parent 1f9d599 commit 8633066

File tree

9 files changed

+50
-18
lines changed

9 files changed

+50
-18
lines changed

.github/workflows/node-zxc-build-release-artifact.yaml

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -833,15 +833,25 @@ jobs:
833833
gpg --output "${PUBLIC_ARCHIVE_FILE}.sha256.asc" --detach-sig "${PUBLIC_ARCHIVE_FILE}.sha256"
834834
echo "::endgroup::"
835835
836-
- name: Gradle Publish to ${{ inputs.version-policy == 'specified' && 'Maven Central' || 'Google Artifact Registry' }} (${{ inputs.release-profile }})
836+
- name: Gradle Publish Platform to ${{ inputs.version-policy == 'specified' && 'Maven Central' || 'Google Artifact Registry' }} (${{ inputs.release-profile }})
837837
uses: gradle/gradle-build-action@29c0906b64b8fc82467890bfb7a0a7ef34bda89e # v3.1.0
838838
if: ${{ inputs.dry-run-enabled != true && inputs.release-profile != 'none' && !cancelled() && !failure() }}
839839
env:
840-
OSSRH_USERNAME: ${{ secrets.sdk-ossrh-username }}
841-
OSSRH_PASSWORD: ${{ secrets.sdk-ossrh-password }}
840+
NEXUS_USERNAME: ${{ secrets.sdk-ossrh-username }}
841+
NEXUS_PASSWORD: ${{ secrets.sdk-ossrh-password }}
842842
with:
843843
gradle-version: ${{ inputs.gradle-version }}
844-
arguments: "release${{ inputs.release-profile }} --scan -PpublishSigningEnabled=true --no-configuration-cache"
844+
arguments: ":release${{ inputs.release-profile }} -PpublishingPackageGroup=com.swirlds --scan -PpublishSigningEnabled=true --no-configuration-cache"
845+
846+
- name: Gradle Publish Services to ${{ inputs.version-policy == 'specified' && 'Maven Central' || 'Google Artifact Registry' }} (${{ inputs.release-profile }})
847+
uses: gradle/gradle-build-action@29c0906b64b8fc82467890bfb7a0a7ef34bda89e # v3.1.0
848+
if: ${{ inputs.dry-run-enabled != true && inputs.release-profile != 'none' && !cancelled() && !failure() }}
849+
env:
850+
NEXUS_USERNAME: ${{ secrets.svcs-ossrh-username }}
851+
NEXUS_PASSWORD: ${{ secrets.svcs-ossrh-password }}
852+
with:
853+
gradle-version: ${{ inputs.gradle-version }}
854+
arguments: ":release${{ inputs.release-profile }} -PpublishingPackageGroup=com.hedera --scan -PpublishSigningEnabled=true --no-configuration-cache"
845855

846856
- name: Upload SDK Release Archives
847857
if: ${{ inputs.dry-run-enabled != true && inputs.version-policy == 'specified' && !cancelled() && !failure() }}

block-node/blocknode-core-spi/build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,5 +16,5 @@
1616

1717
plugins {
1818
id("com.hedera.gradle.blocknode")
19-
id("com.hedera.gradle.blocknode-publish")
19+
// id("com.hedera.gradle.blocknode-publish")
2020
}

block-node/blocknode-core/build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,5 +16,5 @@
1616

1717
plugins {
1818
id("com.hedera.gradle.blocknode")
19-
id("com.hedera.gradle.blocknode-publish")
19+
// id("com.hedera.gradle.blocknode-publish")
2020
}

block-node/blocknode-filesystem-api/build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,5 +16,5 @@
1616

1717
plugins {
1818
id("com.hedera.gradle.blocknode")
19-
id("com.hedera.gradle.blocknode-publish")
19+
// id("com.hedera.gradle.blocknode-publish")
2020
}

block-node/blocknode-filesystem-local/build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,5 +16,5 @@
1616

1717
plugins {
1818
id("com.hedera.gradle.blocknode")
19-
id("com.hedera.gradle.blocknode-publish")
19+
// id("com.hedera.gradle.blocknode-publish")
2020
}

block-node/blocknode-filesystem-s3/build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,5 +16,5 @@
1616

1717
plugins {
1818
id("com.hedera.gradle.blocknode")
19-
id("com.hedera.gradle.blocknode-publish")
19+
// id("com.hedera.gradle.blocknode-publish")
2020
}

block-node/blocknode-grpc-api/build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,5 +16,5 @@
1616

1717
plugins {
1818
id("com.hedera.gradle.blocknode")
19-
id("com.hedera.gradle.blocknode-publish")
19+
// id("com.hedera.gradle.blocknode-publish")
2020
}

block-node/blocknode-state/build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,5 +16,5 @@
1616

1717
plugins {
1818
id("com.hedera.gradle.blocknode")
19-
id("com.hedera.gradle.blocknode-publish")
19+
// id("com.hedera.gradle.blocknode-publish")
2020
}

gradle/plugins/src/main/kotlin/com.hedera.hashgraph.nexus-publish.gradle.kts

Lines changed: 29 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -19,20 +19,38 @@ plugins {
1919
id("io.github.gradle-nexus.publish-plugin")
2020
}
2121

22+
val publishingPackageGroup = providers.gradleProperty("publishingPackageGroup").getOrElse("")
23+
val isPlatformPublish = publishingPackageGroup == "com.swirlds"
24+
2225
nexusPublishing {
23-
packageGroup = "com.swirlds"
26+
packageGroup = publishingPackageGroup
2427
repositories {
2528
sonatype {
26-
username = System.getenv("OSSRH_USERNAME")
27-
password = System.getenv("OSSRH_PASSWORD")
29+
username = System.getenv("NEXUS_USERNAME")
30+
password = System.getenv("NEXUS_PASSWORD")
31+
if (isPlatformPublish) {
32+
nexusUrl = uri("https://s01.oss.sonatype.org/service/local/")
33+
snapshotRepositoryUrl =
34+
uri("https://s01.oss.sonatype.org/content/repositories/snapshots/")
35+
}
2836
}
2937
}
3038
}
3139

40+
// 'platform' and 'services' need to be published separately as they use different credentials
41+
val platformPublishTasks =
42+
subprojects.filter { it.name.startsWith("swirlds") }.map { ":${it.name}:releaseMavenCentral" }
43+
val servicesPublishTasks =
44+
subprojects.filter { !it.name.startsWith("swirlds") }.map { ":${it.name}:releaseMavenCentral" }
45+
3246
tasks.named("closeSonatypeStagingRepository") {
33-
// The publishing of all components to Maven Central is automatically done before close (which
34-
// is done before release).
35-
dependsOn(subprojects.map { ":${it.name}:releaseMavenCentral" })
47+
// The publishing of all components to Maven Central is automatically done before close
48+
// (which is done before release).
49+
if (isPlatformPublish) {
50+
dependsOn(platformPublishTasks)
51+
} else {
52+
dependsOn(servicesPublishTasks)
53+
}
3654
}
3755

3856
tasks.named("releaseMavenCentral") {
@@ -42,5 +60,9 @@ tasks.named("releaseMavenCentral") {
4260

4361
tasks.register("releaseMavenCentralSnapshot") {
4462
group = "release"
45-
dependsOn(subprojects.map { ":${it.name}:releaseMavenCentral" })
63+
if (isPlatformPublish) {
64+
dependsOn(platformPublishTasks)
65+
} else {
66+
dependsOn(servicesPublishTasks)
67+
}
4668
}

0 commit comments

Comments
 (0)