From efabc1956954be2d58eda5ac5a2efc58f94ea315 Mon Sep 17 00:00:00 2001 From: Ivan Dlugos <6349682+vaind@users.noreply.github.com> Date: Fri, 8 Jul 2022 10:28:36 +0200 Subject: [PATCH] Fix/gradle updater (#2156) --- .github/workflows/update-deps.yml | 15 ++++++----- scripts/update-gradle.sh | 41 +++++++++++++++++++++++++++++++ 2 files changed, 48 insertions(+), 8 deletions(-) create mode 100755 scripts/update-gradle.sh diff --git a/.github/workflows/update-deps.yml b/.github/workflows/update-deps.yml index 41e29c17e0..7270ea84dd 100644 --- a/.github/workflows/update-deps.yml +++ b/.github/workflows/update-deps.yml @@ -20,11 +20,10 @@ jobs: api_token: ${{ secrets.CI_DEPLOY_KEY }} gradle-wrapper: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v3 - - - uses: gradle-update/update-gradle-wrapper-action@981c551b17dbcf1940b1b4435afdb79babb7c13a - with: - repo-token: ${{ secrets.CI_DEPLOY_KEY }} - labels: dependencies + uses: getsentry/github-workflows/.github/workflows/updater.yml@v1 + with: + path: scripts/update-gradle.sh + name: Gradle + pattern: '^v[0-9.]+$' # only match non-preview versions + secrets: + api_token: ${{ secrets.CI_DEPLOY_KEY }} diff --git a/scripts/update-gradle.sh b/scripts/update-gradle.sh new file mode 100755 index 0000000000..0c1305d96b --- /dev/null +++ b/scripts/update-gradle.sh @@ -0,0 +1,41 @@ +#!/usr/bin/env bash +set -euo pipefail + +cd $(dirname "$0")/../ + +case $1 in +get-version) + # `./gradlew` shows some info on the first run, breaking the parsing in the next step. + # Therefore, we run it once without checking any output. + ./gradlew --version > /dev/null + version="$(./gradlew --version | sed -E -n 's/.*Gradle +([0-9.]+).*/\1/p')" + echo "v$version" + ;; +get-repo) + echo "https://github.com/gradle/gradle.git" + ;; +set-version) + version=$2 + + # Remove leading "v" + if [[ "$version" == v* ]]; then + version="${version:1}" + fi + + # Remove trailing ".0" - gradlew expects '7.1' instead of '7.1.0' + if [[ "$version" == *".0" ]]; then + version="${version:0:${#version}-2}" + fi + echo "Setting gradle version to '$version'" + + # This sets version to gradle-wrapper.properties. + ./gradlew wrapper --gradle-version "$version" + + # Verify it works. + ./gradlew --version + ;; +*) + echo "Unknown argument $1" + exit 1 + ;; +esac