From 787a7431ef9f6407ae986005c50c633dd79d1124 Mon Sep 17 00:00:00 2001 From: "Daniel Doubrovkine (dB.)" Date: Tue, 4 Jan 2022 19:26:01 +0000 Subject: [PATCH] Auto-increment version on new release tags. (#106) Signed-off-by: dblock --- .github/workflows/ci.yml | 4 ++-- .github/workflows/version.yml | 42 +++++++++++++++++++++++++++++++++++ 2 files changed, 44 insertions(+), 2 deletions(-) create mode 100644 .github/workflows/version.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index badeafda..c35e0c0a 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -28,11 +28,11 @@ jobs: # common-utils - name: Build and Test run: | - ./gradlew build -Dopensearch.version=1.3.0-SNAPSHOT + ./gradlew build - name: Publish to Maven Local run: | - ./gradlew publishToMavenLocal -Dopensearch.version=1.3.0-SNAPSHOT + ./gradlew publishToMavenLocal - name: Upload Coverage Report uses: codecov/codecov-action@v1 diff --git a/.github/workflows/version.yml b/.github/workflows/version.yml new file mode 100644 index 00000000..196a690d --- /dev/null +++ b/.github/workflows/version.yml @@ -0,0 +1,42 @@ +name: Increment Version + +on: + push: + tags: + - '*.*.*.*' + +jobs: + build: + runs-on: ubuntu-latest + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + steps: + - uses: actions/checkout@v2 + - name: Fetch Tag and Version Information + run: | + TAG=$(echo "${GITHUB_REF#refs/*/}") + CURRENT_VERSION_ARRAY=($(echo "$TAG" | tr . '\n')) + BASE=$(IFS=. ; echo "${CURRENT_VERSION_ARRAY[*]:0:2}") + CURRENT_VERSION=$(IFS=. ; echo "${CURRENT_VERSION_ARRAY[*]:0:3}") + CURRENT_VERSION_ARRAY[2]=$((CURRENT_VERSION_ARRAY[2]+1)) + NEXT_VERSION=$(IFS=. ; echo "${CURRENT_VERSION_ARRAY[*]:0:3}") + echo "TAG=$TAG" >> $GITHUB_ENV + echo "BASE=$BASE" >> $GITHUB_ENV + echo "CURRENT_VERSION=$CURRENT_VERSION" >> $GITHUB_ENV + echo "NEXT_VERSION=$NEXT_VERSION" >> $GITHUB_ENV + - uses: actions/checkout@v2 + with: + ref: ${{ env.BASE }} + - name: Increment Version + run: | + echo Incrementing $CURRENT_VERSION to $NEXT_VERSION + sed -i "s/$CURRENT_VERSION-SNAPSHOT/$NEXT_VERSION-SNAPSHOT/g" build.gradle + - name: Create Pull Request + uses: peter-evans/create-pull-request@v3 + with: + base: ${{ env.BASE }} + commit-message: Incremented version to ${{ env.NEXT_VERSION }} + delete-branch: true + title: '[AUTO] Incremented version to ${{ env.NEXT_VERSION }}.' + body: | + I've noticed that a new tag ${{ env.TAG }} was pushed, and incremented the version from ${{ env.CURRENT_VERSION }} to ${{ env.NEXT_VERSION }}.