From b220107dc5e82ccf95b2b7ae01eb5d14c2db1429 Mon Sep 17 00:00:00 2001 From: Roberto Perez Alcolea Date: Wed, 3 Mar 2021 18:38:06 -0800 Subject: [PATCH] Upgrade nebula.netflixoss to replace bintray publication (#35) As you might be aware, JFrog is sunsetting Bintray and JCenter: https://jfrog.com/blog/into-the-sunset-bintray-jcenter-gocenter-and-chartcenter/ This upgrades to Nebula NetflixOSS which will publish to Nebula's OSS repos and Maven Central. Repositories based on status: https://netflixoss.jfrog.io/artifactory/maven-oss-snapshots https://netflixoss.jfrog.io/artifactory/maven-oss-candidates https://netflixoss.jfrog.io/artifactory/maven-oss-releases --- .gitignore | 2 ++ .travis.yml | 10 ++++++---- build.gradle | 2 +- buildViaTravis.sh | 8 +++++--- gradle/wrapper/gradle-wrapper.properties | 2 +- installViaTravis.sh | 18 ++++++------------ secrets/signing-key.enc | Bin 0 -> 6800 bytes 7 files changed, 21 insertions(+), 21 deletions(-) create mode 100644 secrets/signing-key.enc diff --git a/.gitignore b/.gitignore index 8bdd7c9..c6fc904 100644 --- a/.gitignore +++ b/.gitignore @@ -63,3 +63,5 @@ atlassian-ide-plugin.xml # NetBeans specific files/directories .nbattrs +# publishing secrets +secrets/signing-key diff --git a/.travis.yml b/.travis.yml index 1548e5f..0135f40 100644 --- a/.travis.yml +++ b/.travis.yml @@ -5,10 +5,12 @@ install: "./installViaTravis.sh" script: "./buildViaTravis.sh" env: global: - - secure: WxJR16GybUBMDS3P+m+VkfjzTKvWf09RjWoZJl1xK3CNxCYM0LX46qmeopG6TBNZUR01mMdaF4CjLgCq0OxpPOjL/PuTwoN4rrGZSYY138M6/6i3PBoGUhXmNxY66I839k3vBbdKvzjPZnKTfkIcm3vIftNRl1Dn+70rp3cbG2I= - - secure: bjRJOMpCyL4OBt2PzUNcCPSwSJkvKGQ5LfQ0ras5S6GdhJhDAXlOZdgv7L6bgm9eAZGHZsk3AzedggqF6sslFF55Ao+y5RJIYv3ygB2J2u7LSxdr8eS8JfASB/L3i8mNVTALRLT+WmXhZmJwDuHdnS8OeisQPaZsuHheMd/c4Mw= - - secure: on7ynOcEEjWE0ANWYlL4nFCwf8c22t0ryT0k5q+4La2hblBc+xNH45OqRug2jmz04g8tqwx+YZT29eZncrhJUEVhnSaQAio7B/muRc2pesDembIHkylD6A110/jATnPDiQ2HG7czFqKO/ShLxNVbyQjjBQ1aDkZ/g8+wx5BWNvU= - - secure: SNEoIDLEZL36Qr1FCOfcVfipGtRO2SWBBnFSwh+ktY1OLYxrJ0AQvxrs0P0n7yzDOMszaiDiVNbd8MQcqfBS3LHMizUtXF/AY6QiwcZ7QI4AyDLwdx9x78S9ohRqUj9EKHgrnzu0O0mZAKzCaKwJHFZxKVCmGCjQ4HG8h/7t2ME= + - secure: cVXikPAhbBmf2bZ/lC4qJbd5h5HZyHWPh4lVEneqIMSoiIo7yKiMNHG+kbyJy7wRrW2V2Q1GcK5NsS0neWwX8+14TA2WQCfqzvKgNmiqK/VKzuRfYPoo4TgISmBL0cLgmbdZmj5rBYG4aPe2Y3sv6CFD5+jpBjz7EOAaiGM8g1U= + - secure: vRdRRUH0eX+IW+wNeg1J3N2Ap9+kz2KFRdI5x1suTYqKtgJoJYugJdZE7yWWpu9LqXYRYMyQWxIbwPiZqHCd3k/Fi/RntxOb8sAMK3F1bSxVHls07WXsG9YbIYXmXN2CPQp3G/BwyV09AikP5Ik0uq0mEzjx2YJz6IUBXp7ZYxs= + - secure: fVmxCbYHgY4L1XjCQHYPhIFqA1dLY4K8i3tt9cJcI9IlMTTn6w8NK/iX6LEFKseUg7aXd1btRohZy7bH/SOOpGWHRb1XPuuYUElOrnjR1LMX2q2QeO1ZxBeDyMcsNU77uSL5mJ+KMPsV+n480/P7wj49lFKnU0NQ6VqfkxzuUOo= + - secure: ghsQY5uDPdCYbgSjIBHTTLqbcavfEB68Jd/TVFGz8OE9WEYX5ljXJahln8MD1cpbAhugMNerdTNo1Pd9ocoPsCXeuu8pMjeUNtEGai1qk6IoBM+j0boi8+tepDvnU+I/bYW0wld3Gvm7+593wSRZXpAuS7X4lXUFnpYwEIqYA+c= + - secure: PWnMzyr4aFcUboLaEQrEixvydytJK3m0vZm8OezP5lNKbCGnziLQjydWED8XoA8KtojzDG34JQXqn+XRGrGe6XDab+p1rcsiCpRaEm5xQy7TpdvFShOTUFnY1zcaTUpYrQwDIep5LbI+UnKPOUeK1A3CPerDrw7oi/eI3lk4IjA= + - secure: PjATPAO4y4+QGI5D5uXZRh2cwD70oCywHaDmlw+dYZTCH+cUO/VpiofBLVoIvOJcSM6uyqo4mYEanIBU/GD+A2brSYphhlHRnTu/7xQXdT4p88wZ43J1MM2HG3ku0l+/EH2gKV8L/OCvsftOwevqFT9tk/1bD181sSyODNQL8D4= cache: directories: - "$HOME/.gradle/caches" diff --git a/build.gradle b/build.gradle index c253952..205b518 100644 --- a/build.gradle +++ b/build.gradle @@ -1,5 +1,5 @@ plugins { - id 'nebula.netflixoss' version '8.6.0' + id 'nebula.netflixoss' version '9.1.0' id 'java' id 'groovy' } diff --git a/buildViaTravis.sh b/buildViaTravis.sh index 17a33a5..36b9f97 100755 --- a/buildViaTravis.sh +++ b/buildViaTravis.sh @@ -6,18 +6,20 @@ if [ "$TRAVIS_PULL_REQUEST" != "false" ]; then ./gradlew build elif [ "$TRAVIS_PULL_REQUEST" == "false" ] && [ "$TRAVIS_TAG" == "" ]; then echo -e 'Build Branch with Snapshot => Branch ['$TRAVIS_BRANCH']' - ./gradlew -Prelease.travisci=true -PbintrayUser="${bintrayUser}" -PbintrayKey="${bintrayKey}" -PsonatypeUsername="${sonatypeUsername}" -PsonatypePassword="${sonatypePassword}" build snapshot + ./gradlew -Prelease.travisci=true -PnetflixOss.username="$NETFLIX_OSS_REPO_USERNAME" -PnetflixOss.password="$NETFLIX_OSS_REPO_PASSWORD" -Psonatype.signingPassword="$NETFLIX_OSS_SIGNING_PASSWORD" build snapshot elif [ "$TRAVIS_PULL_REQUEST" == "false" ] && [ "$TRAVIS_TAG" != "" ]; then echo -e 'Build Branch for Release => Branch ['$TRAVIS_BRANCH'] Tag ['$TRAVIS_TAG']' case "$TRAVIS_TAG" in *-rc\.*) - ./gradlew -Prelease.travisci=true -Prelease.useLastTag=true -PbintrayUser="${bintrayUser}" -PbintrayKey="${bintrayKey}" -PsonatypeUsername="${sonatypeUsername}" -PsonatypePassword="${sonatypePassword}" candidate + ./gradlew -Prelease.travisci=true -PnetflixOss.username="$NETFLIX_OSS_REPO_USERNAME" -PnetflixOss.password="$NETFLIX_OSS_REPO_PASSWORD" -Psonatype.signingPassword="$NETFLIX_OSS_SIGNING_PASSWORD" -Prelease.useLastTag=true candidate ;; *) - ./gradlew -Prelease.travisci=true -Prelease.useLastTag=true -PbintrayUser="${bintrayUser}" -PbintrayKey="${bintrayKey}" -PsonatypeUsername="${sonatypeUsername}" -PsonatypePassword="${sonatypePassword}" final + ./gradlew -Prelease.travisci=true -PnetflixOss.username="$NETFLIX_OSS_REPO_USERNAME" -PnetflixOss.password="$NETFLIX_OSS_REPO_PASSWORD" -Psonatype.username="$NETFLIX_OSS_SONATYPE_USERNAME" -Psonatype.password="$NETFLIX_OSS_SONATYPE_PASSWORD" -Psonatype.signingPassword="$NETFLIX_OSS_SIGNING_PASSWORD" -Prelease.useLastTag=true final ;; esac else echo -e 'WARN: Should not be here => Branch ['$TRAVIS_BRANCH'] Tag ['$TRAVIS_TAG'] Pull Request ['$TRAVIS_PULL_REQUEST']' ./gradlew build fi + + diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 4a6ebce..442d913 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-6.2.1-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.8.3-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/installViaTravis.sh b/installViaTravis.sh index 68e45a0..89461ec 100755 --- a/installViaTravis.sh +++ b/installViaTravis.sh @@ -1,16 +1,10 @@ #!/bin/bash # This script will build the project. -if [ "$TRAVIS_PULL_REQUEST" != "false" ]; then - echo -e "Assemble Pull Request #$TRAVIS_PULL_REQUEST => Branch [$TRAVIS_BRANCH]" - ./gradlew assemble -elif [ "$TRAVIS_PULL_REQUEST" == "false" ] && [ "$TRAVIS_TAG" == "" ]; then - echo -e 'Assemble Branch with Snapshot => Branch ['$TRAVIS_BRANCH']' - ./gradlew -Prelease.travisci=true assemble -elif [ "$TRAVIS_PULL_REQUEST" == "false" ] && [ "$TRAVIS_TAG" != "" ]; then - echo -e 'Assemble Branch for Release => Branch ['$TRAVIS_BRANCH'] Tag ['$TRAVIS_TAG']' - ./gradlew -Prelease.travisci=true -Prelease.useLastTag=true assemble -else - echo -e 'WARN: Should not be here => Branch ['$TRAVIS_BRANCH'] Tag ['$TRAVIS_TAG'] Pull Request ['$TRAVIS_PULL_REQUEST']' - ./gradlew assemble +if [ "$TRAVIS_SECURE_ENV_VARS" = "true" ]; then + echo "Decrypting publishing credentials" + openssl aes-256-cbc -k "$NETFLIX_OSS_SIGNING_FILE_PASSWORD" -in secrets/signing-key.enc -out secrets/signing-key -d fi + + + diff --git a/secrets/signing-key.enc b/secrets/signing-key.enc new file mode 100644 index 0000000000000000000000000000000000000000..a9f6e94892ea8fa911f0982629203f566db6e3c0 GIT binary patch literal 6800 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 literal 0 HcmV?d00001