From 3725158421259cc1dcb65b6f0b852b84e4f21abb Mon Sep 17 00:00:00 2001 From: agrasth Date: Mon, 7 Sep 2026 11:46:40 +0530 Subject: [PATCH 1/4] Add GitHub Actions release/snapshot workflows (JFrog Pipelines EOL migration) Ports release/pipelines.release.yml (release_java_client) and release/pipelines.snapshot.yml (create_artifactory_java_client_snapshot) to .github/workflows, since JFrog Pipelines is EOL. --- .github/workflows/release.yml | 118 +++++++++++++++++++++++++++++++++ .github/workflows/snapshot.yml | 74 +++++++++++++++++++++ 2 files changed, 192 insertions(+) create mode 100644 .github/workflows/release.yml create mode 100644 .github/workflows/snapshot.yml diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 00000000..0a1f7688 --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,118 @@ +name: Release + +# Manual release of artifactory-java-client to Artifactory (releases repo), JFrog Distribution and Maven Central. +# Ported from the JFrog Pipelines `release_java_client` pipeline (release/pipelines.release.yml), now EOL. +on: + workflow_dispatch: + inputs: + next_version: + description: "Version to release (e.g. 2.21.0)" + required: true + next_development_version: + description: "Next development version to bump to after release (e.g. 2.22.x-SNAPSHOT)" + required: true + audit_fail: + description: "Fail the build if `jf audit` finds violations" + required: false + default: "false" + +env: + CI: true + JFROG_BUILD_STATUS: PASS + JFROG_CLI_BUILD_NAME: ecosystem-artifactory-client-java-release + JFROG_CLI_BUILD_NUMBER: ${{ github.run_number }} + JFROG_CLI_BUILD_PROJECT: ecosys + GRADLE_OPTS: -Dorg.gradle.daemon=false + NEXT_VERSION: ${{ github.event.inputs.next_version }} + NEXT_DEVELOPMENT_VERSION: ${{ github.event.inputs.next_development_version }} + AUDIT_FAIL: ${{ github.event.inputs.audit_fail }} + +jobs: + release: + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v4 + with: + ref: master + fetch-depth: 0 + + - name: Install Java + uses: actions/setup-java@v4 + with: + java-version: "8" + distribution: "zulu" + + - name: Setup JFrog CLI + uses: jfrog/setup-jfrog-cli@v4 + # Deliberate behavior change from the original pipeline: the pipeline bootstrapped the CLI via + # `curl -fL https://install-cli.jfrog.io | sh`; here we use the official setup action instead. + + - name: Configure git + run: | + git config user.name "jfrog-ecosystem-integration" + git config user.email "jfrog-ecosystem-integration@jfrog.com" + git checkout master + git remote set-url origin https://${{ secrets.IL_AUTOMATION_TOKEN }}@github.com/jfrog/artifactory-client-java.git + + - name: Check required versions + run: | + echo "Checking variables" + test -n "$NEXT_VERSION" -a "$NEXT_VERSION" != "0.0.0" + test -n "$NEXT_DEVELOPMENT_VERSION" -a "$NEXT_DEVELOPMENT_VERSION" != "0.0.x-SNAPSHOT" + + - name: Configure JFrog CLI + run: | + jf c rm --quiet + jf c add internal --url=${{ secrets.ARTIFACTORY_URL }} --user=${{ secrets.ARTIFACTORY_USER }} --password=${{ secrets.ARTIFACTORY_APIKEY }} + jf gradlec --use-wrapper --deploy-ivy-desc=false --deploy-maven-desc --uses-plugin --repo-resolve ecosys-maven-remote --repo-deploy ecosys-oss-release-local + + - name: Sync changes with dev + run: git merge origin/dev + + - name: Run audit + # `|| true` ignores SAST scanner infrastructure failures, matching the original pipeline's comment + # that GLIBC_2.34 was not available on the pipeline node. + run: jf audit --fail=${AUDIT_FAIL:-false} || true + + - name: Update version + run: sed -i "s/\(currentVersion=\).*\$/\1${NEXT_VERSION}/" gradle.properties + + - name: Commit and tag release + run: | + git commit -am "[artifactory-release] Release version ${NEXT_VERSION} [skipRun]" --allow-empty + git tag ${NEXT_VERSION} + git push + git push --tags + + - name: Build and publish to Artifactory + env: + ORG_GRADLE_PROJECT_signingPassword: ${{ secrets.MVN_CENTRAL_SIGNING_PASSWORD }} + run: | + export ORG_GRADLE_PROJECT_signingKey=$(echo "${{ secrets.MVN_CENTRAL_SIGNING_KEY }}" | base64 -d) + jf gradle clean aP -x test + jf rt bag && jf rt bce + jf rt bp + + - name: Distribute release bundle + run: | + jf ds rbc ecosystem-artifactory-client-java $NEXT_VERSION --spec=./release/specs/prod-rbc-filespec.json --spec-vars="version=$NEXT_VERSION" --sign + jf ds rbd ecosystem-artifactory-client-java $NEXT_VERSION --site="releases.jfrog.io" --sync + + - name: Publish to Maven Central + env: + ORG_GRADLE_PROJECT_sonatypeUsername: ${{ secrets.MVN_CENTRAL_USER }} + ORG_GRADLE_PROJECT_sonatypePassword: ${{ secrets.MVN_CENTRAL_PASSWORD }} + ORG_GRADLE_PROJECT_signingPassword: ${{ secrets.MVN_CENTRAL_SIGNING_PASSWORD }} + run: | + export ORG_GRADLE_PROJECT_signingKey=$(echo "${{ secrets.MVN_CENTRAL_SIGNING_KEY }}" | base64 -d) + ./gradlew clean build publishToSonatype closeAndReleaseSonatypeStagingRepository -x test + + - name: Update next development version + run: | + git clean -fd + git checkout dev -f + git merge origin/master + sed -i "s/\(currentVersion=\).*\$/\1${NEXT_DEVELOPMENT_VERSION}/" gradle.properties + git commit -am "[artifactory-release] Next development version [skipRun]" + git push diff --git a/.github/workflows/snapshot.yml b/.github/workflows/snapshot.yml new file mode 100644 index 00000000..fc92abe0 --- /dev/null +++ b/.github/workflows/snapshot.yml @@ -0,0 +1,74 @@ +name: Snapshot + +# Publishes a snapshot build of artifactory-java-client to Artifactory and JFrog Distribution on every push to dev. +# Ported from the JFrog Pipelines `create_artifactory_java_client_snapshot` pipeline +# (release/pipelines.snapshot.yml), now EOL. The pipeline's GitRepo resource (javaClientSnapshotGit, +# see release/pipelines.resources.yml) tracked the `dev` branch, so that's what triggers this workflow. +on: + push: + branches: + - dev + workflow_dispatch: {} + +env: + CI: true + JFROG_BUILD_STATUS: PASS + JFROG_CLI_BUILD_NAME: ecosystem-artifactory-client-java-dev + JFROG_CLI_BUILD_NUMBER: ${{ github.run_number }} + JFROG_CLI_BUILD_PROJECT: ecosys + GRADLE_OPTS: -Dorg.gradle.daemon=false + +jobs: + snapshot: + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v4 + with: + ref: dev + + - name: Install Java + uses: actions/setup-java@v4 + with: + java-version: "8" + distribution: "zulu" + + - name: Cache Gradle files + uses: actions/cache@v4 + with: + path: .gradle + key: ${{ runner.os }}-gradle-${{ github.run_id }} + restore-keys: | + ${{ runner.os }}-gradle- + + - name: Setup JFrog CLI + uses: jfrog/setup-jfrog-cli@v4 + # Deliberate behavior change from the original pipeline: the pipeline bootstrapped the CLI via + # `curl -fL https://install-cli.jfrog.io | sh`; here we use the official setup action instead. + + - name: Configure JFrog CLI + run: | + jf c rm --quiet + jf c add internal --url=${{ secrets.ARTIFACTORY_URL }} --user=${{ secrets.ARTIFACTORY_USER }} --password=${{ secrets.ARTIFACTORY_APIKEY }} + jf gradlec --use-wrapper --deploy-ivy-desc=false --deploy-maven-desc --uses-plugin --repo-resolve ecosys-maven-remote --repo-deploy ecosys-oss-snapshot-local + + - name: Run audit + run: jf audit + + - name: Delete former snapshots + # Ensures the release bundle will not contain stale artifacts from a previous snapshot. + run: | + jf rt del "ecosys-oss-snapshot-local/org/jfrog/artifactory/client/artifactory-java-client-api/*" --quiet + jf rt del "ecosys-oss-snapshot-local/org/jfrog/artifactory/client/artifactory-java-client-services/*" --quiet + jf rt del "ecosys-oss-snapshot-local/org/jfrog/artifactory/client/artifactory-java-client-httpClient/*" --quiet + + - name: Run install and publish + run: | + jf gradle clean aP -x test + jf rt bag && jf rt bce + jf rt bp + + - name: Distribute release bundle + run: | + jf ds rbc ecosystem-artifactory-java-client-snapshot ${{ github.run_number }} --spec=./release/specs/dev-rbc-filespec.json --sign + jf ds rbd ecosystem-artifactory-java-client-snapshot ${{ github.run_number }} --site="releases.jfrog.io" --sync From a8ae7ed6f05ff05197571d8bbaa0b0b3bb1e0caf Mon Sep 17 00:00:00 2001 From: agrasth Date: Tue, 8 Sep 2026 11:13:37 +0530 Subject: [PATCH 2/4] Extract release/snapshot workflow shell logic into standalone scripts Move the run: step bodies of release.yml and snapshot.yml into .github/scripts/release.sh and .github/scripts/snapshot.sh so the same logic can be executed locally by exporting the documented env vars, not just from GitHub Actions. Non-shell steps (checkout, setup-java, setup-jfrog-cli, cache) are unchanged; behavior is preserved exactly. --- .github/scripts/release.sh | 76 ++++++++++++++++++++++++++++++++++ .github/scripts/snapshot.sh | 37 +++++++++++++++++ .github/workflows/release.yml | 75 +++++---------------------------- .github/workflows/snapshot.yml | 36 +++++----------- 4 files changed, 134 insertions(+), 90 deletions(-) create mode 100755 .github/scripts/release.sh create mode 100755 .github/scripts/snapshot.sh diff --git a/.github/scripts/release.sh b/.github/scripts/release.sh new file mode 100755 index 00000000..29248056 --- /dev/null +++ b/.github/scripts/release.sh @@ -0,0 +1,76 @@ +#!/usr/bin/env bash +set -euo pipefail + +# Releases artifactory-java-client to Artifactory (releases repo), JFrog Distribution and Maven +# Central, then bumps the dev branch to the next development version. +# +# Runnable from GitHub Actions (.github/workflows/release.yml) or directly on a developer machine. +# Expected environment variables: +# NEXT_VERSION - version to release (e.g. 2.21.0) +# NEXT_DEVELOPMENT_VERSION - next development version to bump to after release (e.g. 2.22.x-SNAPSHOT) +# AUDIT_FAIL - "true"/"false", fail the build if `jf audit` finds violations (default: false) +# IL_AUTOMATION_TOKEN - GitHub token used to push commits/tags to origin +# ARTIFACTORY_URL - Artifactory base URL +# ARTIFACTORY_USER - Artifactory username +# ARTIFACTORY_APIKEY - Artifactory API key/password +# MVN_CENTRAL_SIGNING_KEY - base64-encoded GPG signing key for Maven Central artifacts +# ORG_GRADLE_PROJECT_signingPassword - passphrase for the GPG signing key +# ORG_GRADLE_PROJECT_sonatypeUsername - Sonatype (Maven Central) username +# ORG_GRADLE_PROJECT_sonatypePassword - Sonatype (Maven Central) password +# JFROG_CLI_BUILD_NAME, JFROG_CLI_BUILD_NUMBER, JFROG_CLI_BUILD_PROJECT +# - build-info coordinates consumed by `jf rt` commands + +# Configure git +git config user.name "jfrog-ecosystem-integration" +git config user.email "jfrog-ecosystem-integration@jfrog.com" +git checkout master +git remote set-url origin https://${IL_AUTOMATION_TOKEN}@github.com/jfrog/artifactory-client-java.git + +# Check required versions +echo "Checking variables" +test -n "$NEXT_VERSION" -a "$NEXT_VERSION" != "0.0.0" +test -n "$NEXT_DEVELOPMENT_VERSION" -a "$NEXT_DEVELOPMENT_VERSION" != "0.0.x-SNAPSHOT" + +# Configure JFrog CLI +jf c rm --quiet +jf c add internal --url=$ARTIFACTORY_URL --user=$ARTIFACTORY_USER --password=$ARTIFACTORY_APIKEY +jf gradlec --use-wrapper --deploy-ivy-desc=false --deploy-maven-desc --uses-plugin --repo-resolve ecosys-maven-remote --repo-deploy ecosys-oss-release-local + +# Sync changes with dev +git merge origin/dev + +# Run audit +# `|| true` ignores SAST scanner infrastructure failures, matching the original pipeline's comment +# that GLIBC_2.34 was not available on the pipeline node. +jf audit --fail=${AUDIT_FAIL:-false} || true + +# Update version +sed -i "s/\(currentVersion=\).*\$/\1${NEXT_VERSION}/" gradle.properties + +# Commit and tag release +git commit -am "[artifactory-release] Release version ${NEXT_VERSION} [skipRun]" --allow-empty +git tag ${NEXT_VERSION} +git push +git push --tags + +# Build and publish to Artifactory +export ORG_GRADLE_PROJECT_signingKey=$(echo "${MVN_CENTRAL_SIGNING_KEY}" | base64 -d) +jf gradle clean aP -x test +jf rt bag && jf rt bce +jf rt bp + +# Distribute release bundle +jf ds rbc ecosystem-artifactory-client-java $NEXT_VERSION --spec=./release/specs/prod-rbc-filespec.json --spec-vars="version=$NEXT_VERSION" --sign +jf ds rbd ecosystem-artifactory-client-java $NEXT_VERSION --site="releases.jfrog.io" --sync + +# Publish to Maven Central +export ORG_GRADLE_PROJECT_signingKey=$(echo "${MVN_CENTRAL_SIGNING_KEY}" | base64 -d) +./gradlew clean build publishToSonatype closeAndReleaseSonatypeStagingRepository -x test + +# Update next development version +git clean -fd +git checkout dev -f +git merge origin/master +sed -i "s/\(currentVersion=\).*\$/\1${NEXT_DEVELOPMENT_VERSION}/" gradle.properties +git commit -am "[artifactory-release] Next development version [skipRun]" +git push diff --git a/.github/scripts/snapshot.sh b/.github/scripts/snapshot.sh new file mode 100755 index 00000000..d228fb4f --- /dev/null +++ b/.github/scripts/snapshot.sh @@ -0,0 +1,37 @@ +#!/usr/bin/env bash +set -euo pipefail + +# Publishes a snapshot build of artifactory-java-client to Artifactory and JFrog Distribution. +# +# Runnable from GitHub Actions (.github/workflows/snapshot.yml) or directly on a developer machine. +# Expected environment variables: +# ARTIFACTORY_URL - Artifactory base URL +# ARTIFACTORY_USER - Artifactory username +# ARTIFACTORY_APIKEY - Artifactory API key/password +# RUN_NUMBER - unique build number, used for build-info and as the distributed release +# bundle version (e.g. the GitHub Actions run number) +# JFROG_CLI_BUILD_NAME, JFROG_CLI_BUILD_NUMBER, JFROG_CLI_BUILD_PROJECT +# - build-info coordinates consumed by `jf rt` commands + +# Configure JFrog CLI +jf c rm --quiet +jf c add internal --url=$ARTIFACTORY_URL --user=$ARTIFACTORY_USER --password=$ARTIFACTORY_APIKEY +jf gradlec --use-wrapper --deploy-ivy-desc=false --deploy-maven-desc --uses-plugin --repo-resolve ecosys-maven-remote --repo-deploy ecosys-oss-snapshot-local + +# Run audit +jf audit + +# Delete former snapshots +# Ensures the release bundle will not contain stale artifacts from a previous snapshot. +jf rt del "ecosys-oss-snapshot-local/org/jfrog/artifactory/client/artifactory-java-client-api/*" --quiet +jf rt del "ecosys-oss-snapshot-local/org/jfrog/artifactory/client/artifactory-java-client-services/*" --quiet +jf rt del "ecosys-oss-snapshot-local/org/jfrog/artifactory/client/artifactory-java-client-httpClient/*" --quiet + +# Run install and publish +jf gradle clean aP -x test +jf rt bag && jf rt bce +jf rt bp + +# Distribute release bundle +jf ds rbc ecosystem-artifactory-java-client-snapshot $RUN_NUMBER --spec=./release/specs/dev-rbc-filespec.json --sign +jf ds rbd ecosystem-artifactory-java-client-snapshot $RUN_NUMBER --site="releases.jfrog.io" --sync diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 0a1f7688..780fcca0 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -48,71 +48,18 @@ jobs: # Deliberate behavior change from the original pipeline: the pipeline bootstrapped the CLI via # `curl -fL https://install-cli.jfrog.io | sh`; here we use the official setup action instead. - - name: Configure git - run: | - git config user.name "jfrog-ecosystem-integration" - git config user.email "jfrog-ecosystem-integration@jfrog.com" - git checkout master - git remote set-url origin https://${{ secrets.IL_AUTOMATION_TOKEN }}@github.com/jfrog/artifactory-client-java.git - - - name: Check required versions - run: | - echo "Checking variables" - test -n "$NEXT_VERSION" -a "$NEXT_VERSION" != "0.0.0" - test -n "$NEXT_DEVELOPMENT_VERSION" -a "$NEXT_DEVELOPMENT_VERSION" != "0.0.x-SNAPSHOT" - - - name: Configure JFrog CLI - run: | - jf c rm --quiet - jf c add internal --url=${{ secrets.ARTIFACTORY_URL }} --user=${{ secrets.ARTIFACTORY_USER }} --password=${{ secrets.ARTIFACTORY_APIKEY }} - jf gradlec --use-wrapper --deploy-ivy-desc=false --deploy-maven-desc --uses-plugin --repo-resolve ecosys-maven-remote --repo-deploy ecosys-oss-release-local - - - name: Sync changes with dev - run: git merge origin/dev - - - name: Run audit - # `|| true` ignores SAST scanner infrastructure failures, matching the original pipeline's comment - # that GLIBC_2.34 was not available on the pipeline node. - run: jf audit --fail=${AUDIT_FAIL:-false} || true - - - name: Update version - run: sed -i "s/\(currentVersion=\).*\$/\1${NEXT_VERSION}/" gradle.properties - - - name: Commit and tag release - run: | - git commit -am "[artifactory-release] Release version ${NEXT_VERSION} [skipRun]" --allow-empty - git tag ${NEXT_VERSION} - git push - git push --tags - - - name: Build and publish to Artifactory + # Runs the full release: configures git and the JFrog CLI, syncs with dev, audits, bumps the + # version, tags and pushes the release commit, builds and publishes to Artifactory, distributes + # the release bundle, publishes to Maven Central, then bumps dev to the next development version. + # See .github/scripts/release.sh - the same script can be run locally by exporting the env vars below. + - name: Run release env: + IL_AUTOMATION_TOKEN: ${{ secrets.IL_AUTOMATION_TOKEN }} + ARTIFACTORY_URL: ${{ secrets.ARTIFACTORY_URL }} + ARTIFACTORY_USER: ${{ secrets.ARTIFACTORY_USER }} + ARTIFACTORY_APIKEY: ${{ secrets.ARTIFACTORY_APIKEY }} + MVN_CENTRAL_SIGNING_KEY: ${{ secrets.MVN_CENTRAL_SIGNING_KEY }} ORG_GRADLE_PROJECT_signingPassword: ${{ secrets.MVN_CENTRAL_SIGNING_PASSWORD }} - run: | - export ORG_GRADLE_PROJECT_signingKey=$(echo "${{ secrets.MVN_CENTRAL_SIGNING_KEY }}" | base64 -d) - jf gradle clean aP -x test - jf rt bag && jf rt bce - jf rt bp - - - name: Distribute release bundle - run: | - jf ds rbc ecosystem-artifactory-client-java $NEXT_VERSION --spec=./release/specs/prod-rbc-filespec.json --spec-vars="version=$NEXT_VERSION" --sign - jf ds rbd ecosystem-artifactory-client-java $NEXT_VERSION --site="releases.jfrog.io" --sync - - - name: Publish to Maven Central - env: ORG_GRADLE_PROJECT_sonatypeUsername: ${{ secrets.MVN_CENTRAL_USER }} ORG_GRADLE_PROJECT_sonatypePassword: ${{ secrets.MVN_CENTRAL_PASSWORD }} - ORG_GRADLE_PROJECT_signingPassword: ${{ secrets.MVN_CENTRAL_SIGNING_PASSWORD }} - run: | - export ORG_GRADLE_PROJECT_signingKey=$(echo "${{ secrets.MVN_CENTRAL_SIGNING_KEY }}" | base64 -d) - ./gradlew clean build publishToSonatype closeAndReleaseSonatypeStagingRepository -x test - - - name: Update next development version - run: | - git clean -fd - git checkout dev -f - git merge origin/master - sed -i "s/\(currentVersion=\).*\$/\1${NEXT_DEVELOPMENT_VERSION}/" gradle.properties - git commit -am "[artifactory-release] Next development version [skipRun]" - git push + run: .github/scripts/release.sh diff --git a/.github/workflows/snapshot.yml b/.github/workflows/snapshot.yml index fc92abe0..589d2982 100644 --- a/.github/workflows/snapshot.yml +++ b/.github/workflows/snapshot.yml @@ -46,29 +46,13 @@ jobs: # Deliberate behavior change from the original pipeline: the pipeline bootstrapped the CLI via # `curl -fL https://install-cli.jfrog.io | sh`; here we use the official setup action instead. - - name: Configure JFrog CLI - run: | - jf c rm --quiet - jf c add internal --url=${{ secrets.ARTIFACTORY_URL }} --user=${{ secrets.ARTIFACTORY_USER }} --password=${{ secrets.ARTIFACTORY_APIKEY }} - jf gradlec --use-wrapper --deploy-ivy-desc=false --deploy-maven-desc --uses-plugin --repo-resolve ecosys-maven-remote --repo-deploy ecosys-oss-snapshot-local - - - name: Run audit - run: jf audit - - - name: Delete former snapshots - # Ensures the release bundle will not contain stale artifacts from a previous snapshot. - run: | - jf rt del "ecosys-oss-snapshot-local/org/jfrog/artifactory/client/artifactory-java-client-api/*" --quiet - jf rt del "ecosys-oss-snapshot-local/org/jfrog/artifactory/client/artifactory-java-client-services/*" --quiet - jf rt del "ecosys-oss-snapshot-local/org/jfrog/artifactory/client/artifactory-java-client-httpClient/*" --quiet - - - name: Run install and publish - run: | - jf gradle clean aP -x test - jf rt bag && jf rt bce - jf rt bp - - - name: Distribute release bundle - run: | - jf ds rbc ecosystem-artifactory-java-client-snapshot ${{ github.run_number }} --spec=./release/specs/dev-rbc-filespec.json --sign - jf ds rbd ecosystem-artifactory-java-client-snapshot ${{ github.run_number }} --site="releases.jfrog.io" --sync + # Configures the JFrog CLI, audits, deletes stale snapshot artifacts, builds and publishes to + # Artifactory, then distributes the release bundle. + # See .github/scripts/snapshot.sh - the same script can be run locally by exporting the env vars below. + - name: Run snapshot + env: + ARTIFACTORY_URL: ${{ secrets.ARTIFACTORY_URL }} + ARTIFACTORY_USER: ${{ secrets.ARTIFACTORY_USER }} + ARTIFACTORY_APIKEY: ${{ secrets.ARTIFACTORY_APIKEY }} + RUN_NUMBER: ${{ github.run_number }} + run: .github/scripts/snapshot.sh From 73d638e17f1056f095f99a4586fa6d034205275f Mon Sep 17 00:00:00 2001 From: agrasth Date: Thu, 10 Sep 2026 14:23:46 +0530 Subject: [PATCH 3/4] Use --access-token instead of --user/--password for jf c add The /api/system/encrypt call triggered by --user/--password returns 403 on this instance even though the same credential works fine otherwise (confirmed via direct ping test). --access-token skips that call. Co-Authored-By: Claude Sonnet 5 --- .github/scripts/release.sh | 2 +- .github/scripts/snapshot.sh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/scripts/release.sh b/.github/scripts/release.sh index 29248056..3076cd2b 100755 --- a/.github/scripts/release.sh +++ b/.github/scripts/release.sh @@ -33,7 +33,7 @@ test -n "$NEXT_DEVELOPMENT_VERSION" -a "$NEXT_DEVELOPMENT_VERSION" != "0.0.x-SNA # Configure JFrog CLI jf c rm --quiet -jf c add internal --url=$ARTIFACTORY_URL --user=$ARTIFACTORY_USER --password=$ARTIFACTORY_APIKEY +jf c add internal --url=$ARTIFACTORY_URL --access-token=$ARTIFACTORY_APIKEY jf gradlec --use-wrapper --deploy-ivy-desc=false --deploy-maven-desc --uses-plugin --repo-resolve ecosys-maven-remote --repo-deploy ecosys-oss-release-local # Sync changes with dev diff --git a/.github/scripts/snapshot.sh b/.github/scripts/snapshot.sh index d228fb4f..914dca0d 100755 --- a/.github/scripts/snapshot.sh +++ b/.github/scripts/snapshot.sh @@ -15,7 +15,7 @@ set -euo pipefail # Configure JFrog CLI jf c rm --quiet -jf c add internal --url=$ARTIFACTORY_URL --user=$ARTIFACTORY_USER --password=$ARTIFACTORY_APIKEY +jf c add internal --url=$ARTIFACTORY_URL --access-token=$ARTIFACTORY_APIKEY jf gradlec --use-wrapper --deploy-ivy-desc=false --deploy-maven-desc --uses-plugin --repo-resolve ecosys-maven-remote --repo-deploy ecosys-oss-snapshot-local # Run audit From 0179dcf2ad597e5e51070e909c3706e8054b066b Mon Sep 17 00:00:00 2001 From: agrasth Date: Wed, 16 Sep 2026 12:17:26 +0530 Subject: [PATCH 4/4] Add --user alongside --access-token for jf c add Same fix as jfrog-azure-devops-extension: jf audit's Maven dependency- tree builder requires a username even with a valid access token, since ours is an opaque reference token. Applied to both release.sh and snapshot.sh for consistency, even though only release is wired into the central runner repo so far. Co-Authored-By: Claude Sonnet 5 --- .github/scripts/release.sh | 2 +- .github/scripts/snapshot.sh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/scripts/release.sh b/.github/scripts/release.sh index 3076cd2b..6223fcd7 100755 --- a/.github/scripts/release.sh +++ b/.github/scripts/release.sh @@ -33,7 +33,7 @@ test -n "$NEXT_DEVELOPMENT_VERSION" -a "$NEXT_DEVELOPMENT_VERSION" != "0.0.x-SNA # Configure JFrog CLI jf c rm --quiet -jf c add internal --url=$ARTIFACTORY_URL --access-token=$ARTIFACTORY_APIKEY +jf c add internal --url=$ARTIFACTORY_URL --user=$ARTIFACTORY_USER --access-token=$ARTIFACTORY_APIKEY jf gradlec --use-wrapper --deploy-ivy-desc=false --deploy-maven-desc --uses-plugin --repo-resolve ecosys-maven-remote --repo-deploy ecosys-oss-release-local # Sync changes with dev diff --git a/.github/scripts/snapshot.sh b/.github/scripts/snapshot.sh index 914dca0d..6a8ad80e 100755 --- a/.github/scripts/snapshot.sh +++ b/.github/scripts/snapshot.sh @@ -15,7 +15,7 @@ set -euo pipefail # Configure JFrog CLI jf c rm --quiet -jf c add internal --url=$ARTIFACTORY_URL --access-token=$ARTIFACTORY_APIKEY +jf c add internal --url=$ARTIFACTORY_URL --user=$ARTIFACTORY_USER --access-token=$ARTIFACTORY_APIKEY jf gradlec --use-wrapper --deploy-ivy-desc=false --deploy-maven-desc --uses-plugin --repo-resolve ecosys-maven-remote --repo-deploy ecosys-oss-snapshot-local # Run audit