From a7e243db8a0d5ed43f35321b1b3d20cde82db4b3 Mon Sep 17 00:00:00 2001 From: ying-jeanne <74549700+ying-jeanne@users.noreply.github.com> Date: Thu, 11 Mar 2021 15:38:58 +0100 Subject: [PATCH] update bump-version.yml (#31542) * update bump-version.yml * Update bump-version.yml --- .github/workflows/bump-version.yml | 38 ++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/.github/workflows/bump-version.yml b/.github/workflows/bump-version.yml index 36215dc5a19..48057a900f0 100644 --- a/.github/workflows/bump-version.yml +++ b/.github/workflows/bump-version.yml @@ -9,6 +9,44 @@ jobs: main: runs-on: ubuntu-latest steps: + # This is a basic workflow to help you get started with Actions + - uses: actions-ecosystem/action-regex-match@v2 + id: regex-match + with: + text: ${{ github.event.inputs.version }} + regex: '^(\d+.\d+).\d+(?:-beta.\d+)?$' + + - name: Validate input version + if: ${{ steps.regex-match.outputs.match == '' }} + run: | + echo "The input version format is not correct, please respect:\ + major.minor.patch or major.minor.patch-beta.number format. \ + example: 7.4.3 or 7.4.3-beta.1" + exit 1 + - uses: actions/checkout@v2 + + - name: Set intermedia variables + id: intermedia + run: | + echo "::set-output name=short_ref::${GITHUB_REF#refs/*/}" + echo "::set-output name=check_passed::false" + echo "::set-output name=branch_name::v${{steps.regex-match.outputs.group1}}" + echo "::set-output name=branch_exist::$(git ls-remote --heads https://github.com/grafana/grafana.git v${{ steps.regex-match.outputs.group1 }}.x | wc -l)" + + - name: Check input version is aligned with branch(not master) + if: steps.intermedia.outputs.branch_exist != '0' && !contains(steps.intermedia.outputs.short_ref, steps.intermedia.outputs.branch_name) + run: | + echo " You need to run the workflow on branch v${{steps.regex-match.outputs.group1}}.x + exit 1 + + - name: Check input version is aligned with branch(master) + if: steps.intermedia.outputs.branch_exist == '0' && !contains(steps.intermedia.outputs.short_ref, 'main') + run: | + echo "When you want to deliver a new new minor version, you might want to create a new branch first \ + with naming convention v[major].[minor].x, and just run the workflow on that branch. \ + Run the workflow on master only when needed" + exit 1 + - name: Checkout Actions uses: actions/checkout@v2 with: