From 329c7eb559528e441d53c56097b2d298c32719f6 Mon Sep 17 00:00:00 2001 From: Janne Valkealahti Date: Tue, 19 Jul 2022 17:14:54 +0100 Subject: [PATCH] Add central sync to ga workflow - Relates #454 --- .github/release-files-spec.json | 28 ++++++++++++++++++++++++ .github/workflows/release-ga.yml | 37 +++++++++++++++++++++++++++++++- 2 files changed, 64 insertions(+), 1 deletion(-) create mode 100644 .github/release-files-spec.json diff --git a/.github/release-files-spec.json b/.github/release-files-spec.json new file mode 100644 index 00000000..4ceba9f6 --- /dev/null +++ b/.github/release-files-spec.json @@ -0,0 +1,28 @@ +{ + "files": [ + { + "aql": { + "items.find": { + "$and": [ + { + "@build.name": "${buildname}", + "@build.number": "${buildnumber}", + "path": {"$match": "org*"} + }, + { + "$or": [ + { + "name": {"$match": "*.pom"} + }, + { + "name": {"$match": "*.jar"} + } + ] + } + ] + } + }, + "target": "nexus/" + } + ] +} diff --git a/.github/workflows/release-ga.yml b/.github/workflows/release-ga.yml index d51d4396..634720b2 100644 --- a/.github/workflows/release-ga.yml +++ b/.github/workflows/release-ga.yml @@ -18,7 +18,7 @@ jobs: maven-version: 3.8.4 - uses: jfrog/setup-jfrog-cli@v1 with: - version: 1.46.4 + version: 1.50.0 env: JF_ARTIFACTORY_SPRING: ${{ secrets.JF_ARTIFACTORY_SPRING }} - name: Configure JFrog Cli @@ -147,3 +147,38 @@ jobs: --draft \ --title "$PROJECT_VERSION" \ --notes-file $RELEASE_NOTES_FILE + + central: + runs-on: ubuntu-latest + needs: ghrelease + environment: central + steps: + - uses: actions/checkout@v2 + - uses: jfrog/setup-jfrog-cli@v1 + with: + version: 1.50.0 + env: + JF_ARTIFACTORY_SPRING: ${{ secrets.JF_ARTIFACTORY_SPRING }} + - name: Configure JFrog Cli + run: | + echo JFROG_CLI_BUILD_NAME=spring-shell-main-release >> $GITHUB_ENV + echo JFROG_CLI_BUILD_NUMBER=$GITHUB_RUN_NUMBER >> $GITHUB_ENV + - name: Download Release Files + run: | + jfrog rt download \ + --spec .github/release-files-spec.json \ + --spec-vars "buildname=$JFROG_CLI_BUILD_NAME;buildnumber=$JFROG_CLI_BUILD_NUMBER" + - uses: jvalkeal/nexus-sync@v0 + with: + url: ${{ secrets.OSSRH_URL }} + username: ${{ secrets.OSSRH_S01_TOKEN_USERNAME }} + password: ${{ secrets.OSSRH_S01_TOKEN_PASSWORD }} + staging-profile-name: ${{ secrets.OSSRH_STAGING_PROFILE_NAME }} + create: true + upload: true + close: true + release: true + generate-checksums: true + pgp-sign: true + pgp-sign-passphrase: ${{ secrets.GPG_PASSPHRASE }} + pgp-sign-private-key: ${{ secrets.GPG_PRIVATE_KEY }}