diff --git a/.github/workflows/publishing2sonatype.yml b/.github/workflows/publishing2sonatype.yml index c36a5d7a..29d90515 100644 --- a/.github/workflows/publishing2sonatype.yml +++ b/.github/workflows/publishing2sonatype.yml @@ -1,7 +1,8 @@ name: Publishing to Sonatype on: - release: - types: [published] + push: +# release: +# types: [published] env: GH_TOKEN: ${{ github.token }} @@ -33,6 +34,17 @@ jobs: run: | sed -i -e 's|.*sonatypeUsername.*| username = "${{ secrets.SUSER }}"|' ./build.gradle sed -i -e 's|.*sonatypePassword.*| password = "${{ secrets.SPASSWORD }}"|' ./build.gradle - - name: Publish to Sonatype + - name: Sonatype Publish run: | - ./gradlew publishJarPublicationToStagingRepository \ No newline at end of file + mkdir -p ~/.jreleaser + touch ~/.jreleaser/config.toml + echo "JRELEASER_NEXUS2_USERNAME='${{ secrets.SUSER }}'" >> ~/.jreleaser/config.toml + echo "JRELEASER_NEXUS2_PASSWORD='${{ secrets.SPASSWORD }}'" >> ~/.jreleaser/config.toml + ./gradlew publish +# ./gradlew jreleaserDeploy +# ./gradlew -S releaseSonatypeStagingRepository +# BEARER=$(printf "${{ secrets.SUSER }}:${{ secrets.SPASSWORD }}" | base64) +# curl --request POST \ +# --verbose \ +# --header "Authorization: Bearer ${BEARER}" \ +# https://ossrh-staging-api.central.sonatype.com/manual/upload/defaultRepository/${{ secrets.SREPO_ID }} diff --git a/build.gradle b/build.gradle index 587fe65e..3d99fba7 100644 --- a/build.gradle +++ b/build.gradle @@ -1,3 +1,13 @@ +buildscript { + repositories { + jcenter() + } +} + +plugins { + id 'org.jreleaser' version '1.19.0' +// id 'io.github.gradle-nexus.publish-plugin' version '2.0.0' +} apply plugin: 'java' apply plugin: 'maven-publish' @@ -7,17 +17,22 @@ apply plugin: 'java-library-distribution' group = 'com.siftscience' version = '3.21.2' +java { + withJavadocJar() + withSourcesJar() +} + repositories { mavenCentral() } compileJava { - sourceCompatibility = 1.8 - targetCompatibility = 1.8 + sourceCompatibility = 1.8 + targetCompatibility = 1.8 } compileTestJava { - sourceCompatibility = 1.8 + sourceCompatibility = 1.8 } dependencies { @@ -31,12 +46,6 @@ dependencies { implementation 'commons-codec:commons-codec:1.19.0' } -buildscript { - repositories { - jcenter() - } -} - task sourceJar(type: Jar) { archiveClassifier.set("sources") from sourceSets.main.allSource @@ -154,26 +163,58 @@ publishing { } } } - repositories { maven { - name 'staging' - url = 'https://ossrh-staging-api.central.sonatype.com/service/local/staging/deploy/maven2/' - - credentials { - username = "${sonatypeUsername}" - password = "${sonatypePassword}" - } + url = layout.buildDirectory.dir('staging-deploy') } } } - -model { - tasks.publishJarPublicationToStagingRepository { - dependsOn(project.tasks.signArchives) +// repositories { +// maven { +// name 'staging' +// url = 'https://ossrh-staging-api.central.sonatype.com/service/local/staging/deploy/maven2/' +// +// credentials { +// username = "${sonatypeUsername}" +// password = "${sonatypePassword}" +// } +// } +// } + + +//nexusPublishing { +// repositories { +// // see https://central.sonatype.org/publish/publish-portal-ossrh-staging-api/#configuration +// sonatype { +// nexusUrl.set(uri("https://ossrh-staging-api.central.sonatype.com/service/local/")) +// } +// } +//} + +jreleaser { + signing { + active = 'ALWAYS' + armored = true + } + deploy { + maven { + mavenCentral { + sonatype { + active = 'ALWAYS' + url = 'https://central.sonatype.com/api/v1/publisher' + stagingRepository('build/staging-deploy') + } + } + } } } +//model { +// tasks.publishJarPublicationToStagingRepository { +// dependsOn(project.tasks.signArchives) +// } +//} + distributions { main { distributionBaseName = 'sift-java'