From 69e7eae16183fd68430e1735538e678ae111af42 Mon Sep 17 00:00:00 2001 From: soywiz Date: Sat, 28 May 2022 13:05:06 +0200 Subject: [PATCH] Try to fix deployment to central --- .github/workflows/DEPLOY.yml | 12 ++++++------ .../kotlin/com/soywiz/korlibs/modules/Publishing.kt | 7 ++++--- .../kotlin/com/soywiz/korlibs/modules/Sonatype.kt | 11 +++++++++++ 3 files changed, 21 insertions(+), 9 deletions(-) diff --git a/.github/workflows/DEPLOY.yml b/.github/workflows/DEPLOY.yml index eac49a222..82aafc290 100644 --- a/.github/workflows/DEPLOY.yml +++ b/.github/workflows/DEPLOY.yml @@ -39,7 +39,7 @@ jobs: uses: actions/setup-java@v1 with: java-version: 1.8 - - run: CALL gradlew.bat --no-daemon publishMingwX64PublicationToMavenRepository + - run: CALL gradlew.bat --no-daemon checkReleasingMavenCentral publishMingwX64PublicationToMavenRepository shell: cmd env: DISABLE_JAVASCRIPT_TEST: true @@ -55,7 +55,7 @@ jobs: uses: actions/setup-java@v1 with: java-version: 1.8 - - run: ./gradlew + - run: ./gradlew checkReleasingMavenCentral - run: ./gradlew publishMacosX64PublicationToMavenRepository publishMacosArm64PublicationToMavenRepository env: DISABLE_JAVASCRIPT_TEST: true @@ -70,7 +70,7 @@ jobs: uses: actions/setup-java@v1 with: java-version: 1.8 - - run: ./gradlew + - run: ./gradlew checkReleasingMavenCentral - run: ./gradlew publishIosArm64PublicationToMavenRepository publishIosX64PublicationToMavenRepository publishIosSimulatorArm64PublicationToMavenRepository env: DISABLE_JAVASCRIPT_TEST: true @@ -86,7 +86,7 @@ jobs: with: java-version: 1.8 - run: sudo apt-get install xvfb - - run: xvfb-run --auto-servernum ./gradlew --no-daemon + - run: xvfb-run --auto-servernum ./gradlew --no-daemon checkReleasingMavenCentral - run: xvfb-run --auto-servernum ./gradlew --no-daemon publishKotlinMultiplatformPublicationToMavenRepository publishJvmPublicationToMavenRepository publish-js-android: runs-on: ubuntu-latest @@ -100,7 +100,7 @@ jobs: with: java-version: 1.8 - run: sudo apt-get install xvfb - - run: xvfb-run --auto-servernum ./gradlew --no-daemon + - run: xvfb-run --auto-servernum ./gradlew --no-daemon checkReleasingMavenCentral - run: xvfb-run --auto-servernum ./gradlew --no-daemon publishJsPublicationToMavenRepository publishAndroidPublicationToMavenRepository publish-linux: runs-on: ubuntu-latest @@ -114,7 +114,7 @@ jobs: with: java-version: 1.8 - run: sudo apt-get install xvfb - - run: xvfb-run --auto-servernum ./gradlew --no-daemon + - run: xvfb-run --auto-servernum ./gradlew --no-daemon checkReleasingMavenCentral - run: xvfb-run --auto-servernum ./gradlew --no-daemon publishLinuxX64PublicationToMavenRepository publish-finalize: diff --git a/buildSrc/src/main/kotlin/com/soywiz/korlibs/modules/Publishing.kt b/buildSrc/src/main/kotlin/com/soywiz/korlibs/modules/Publishing.kt index 4fe162a00..9c9328f97 100644 --- a/buildSrc/src/main/kotlin/com/soywiz/korlibs/modules/Publishing.kt +++ b/buildSrc/src/main/kotlin/com/soywiz/korlibs/modules/Publishing.kt @@ -68,13 +68,14 @@ fun Project.configurePublishing(multiplatform: Boolean = true) { username = publishUser password = publishPassword } - val deployByRepositoryId = System.getenv("deployByRepositoryId") url = when { version.toString().contains("-SNAPSHOT") -> uri("https://oss.sonatype.org/content/repositories/snapshots/") - deployByRepositoryId != null -> uri("https://oss.sonatype.org/service/local/staging/deployByRepositoryId/$deployByRepositoryId/") + project.stagedRepositoryId != null -> uri("https://oss.sonatype.org/service/local/staging/deployByRepositoryId/${project.stagedRepositoryId}/") else -> uri("https://oss.sonatype.org/service/local/staging/deploy/maven2/") } - //println("DEPLOY TO: $url") + rootProject.doOnce("showDeployTo") { + println("DEPLOY mavenRepository: $url") + } } } } diff --git a/buildSrc/src/main/kotlin/com/soywiz/korlibs/modules/Sonatype.kt b/buildSrc/src/main/kotlin/com/soywiz/korlibs/modules/Sonatype.kt index a670ba33e..210ae0aaa 100644 --- a/buildSrc/src/main/kotlin/com/soywiz/korlibs/modules/Sonatype.kt +++ b/buildSrc/src/main/kotlin/com/soywiz/korlibs/modules/Sonatype.kt @@ -10,6 +10,7 @@ import java.util.* val Project.customMavenUser: String? get() = System.getenv("KORLIBS_CUSTOM_MAVEN_USER") ?: rootProject.findProperty("KORLIBS_CUSTOM_MAVEN_USER")?.toString() val Project.customMavenPass: String? get() = System.getenv("KORLIBS_CUSTOM_MAVEN_PASS") ?: rootProject.findProperty("KORLIBS_CUSTOM_MAVEN_PASS")?.toString() val Project.customMavenUrl: String? get() = System.getenv("KORLIBS_CUSTOM_MAVEN_URL") ?: rootProject.findProperty("KORLIBS_CUSTOM_MAVEN_URL")?.toString() +val Project.stagedRepositoryId: String? get() = System.getenv("stagedRepositoryId") ?: rootProject.findProperty("stagedRepositoryId")?.toString() val Project.sonatypePublishUserNull: String? get() = (System.getenv("SONATYPE_USERNAME") ?: rootProject.findProperty("SONATYPE_USERNAME")?.toString() ?: project.findProperty("sonatypeUsername")?.toString()) val Project.sonatypePublishPasswordNull: String? get() = (System.getenv("SONATYPE_PASSWORD") ?: rootProject.findProperty("SONATYPE_PASSWORD")?.toString() ?: project.findProperty("sonatypePassword")?.toString()) @@ -28,6 +29,16 @@ fun Project.configureMavenCentralRelease() { } } + if (rootProject.tasks.findByName("checkReleasingMavenCentral") == null) { + rootProject.tasks.create("checkReleasingMavenCentral").also { task -> + task.doLast { + println("stagedRepositoryId=${rootProject.stagedRepositoryId}") + if (rootProject.stagedRepositoryId.isNullOrEmpty()) { + error("Couldn't find 'stagedRepositoryId' aborting...") + } + } + } + } if (rootProject.tasks.findByName("startReleasingMavenCentral") == null) { rootProject.tasks.create("startReleasingMavenCentral").also { task -> task.doLast {