1919 - name : Validate Gradle wrapper
2020 uses : gradle/wrapper-validation-action@v1
2121
22+ # Retrieve the version of the SDK
23+ - name : Install dasel
24+ run : curl -sSLf "$(curl -sSLf https://api.github.com/repos/tomwright/dasel/releases/latest | grep browser_download_url | grep linux_amd64 | grep -v .gz | cut -d\" -f 4)" -L -o dasel && chmod +x dasel && mv ./dasel /usr/local/bin/dasel
25+ - name : Parse published sdk version
26+ run : |
27+ echo "PUBLISHED_SDK_VERSION=$(dasel -f gradle/libs.versions.toml .versions.restate)" >> "$GITHUB_ENV"
28+
29+ # Dry run
2230 - name : Publish dry-run
2331 uses : gradle/gradle-build-action@v2
2432 env :
@@ -28,12 +36,23 @@ jobs:
2836 with :
2937 arguments : publishToMavenLocal
3038
31- - name : Publish to Maven Central
39+ - name : Publish to staging area on Maven Central
40+ uses : gradle/gradle-build-action@v2
41+ env :
42+ MAVEN_CENTRAL_USERNAME : ${{ secrets.MAVEN_CENTRAL_USERNAME }}
43+ MAVEN_CENTRAL_TOKEN : ${{ secrets.MAVEN_CENTRAL_TOKEN }}
44+ MAVEN_CENTRAL_GPG_PRIVATE_KEY : ${{ secrets.MAVEN_CENTRAL_GPG_PRIVATE_KEY }}
45+ MAVEN_CENTRAL_GPG_PASSPHRASE : ${{ secrets.MAVEN_CENTRAL_GPG_PASSPHRASE }}
46+ with :
47+ arguments : publishToSonatype
48+
49+ - name : Release staging area
3250 uses : gradle/gradle-build-action@v2
51+ if : " !contains(env.PUBLISHED_SDK_VERSION, '-SNAPSHOT')"
3352 env :
3453 MAVEN_CENTRAL_USERNAME : ${{ secrets.MAVEN_CENTRAL_USERNAME }}
3554 MAVEN_CENTRAL_TOKEN : ${{ secrets.MAVEN_CENTRAL_TOKEN }}
3655 MAVEN_CENTRAL_GPG_PRIVATE_KEY : ${{ secrets.MAVEN_CENTRAL_GPG_PRIVATE_KEY }}
3756 MAVEN_CENTRAL_GPG_PASSPHRASE : ${{ secrets.MAVEN_CENTRAL_GPG_PASSPHRASE }}
3857 with :
39- arguments : publish
58+ arguments : findSonatypeStagingRepository closeAndReleaseSonatypeStagingRepository
0 commit comments