diff --git a/.github/workflows/build-wheel-release-upload.yml b/.github/workflows/build-wheel-release-upload.yml index cac995b..e07714d 100644 --- a/.github/workflows/build-wheel-release-upload.yml +++ b/.github/workflows/build-wheel-release-upload.yml @@ -4,10 +4,27 @@ on: workflow_dispatch: push: tags: - - '*.*.*' + - '*' # Trigger on all tags initially jobs: + tag-check: + runs-on: ubuntu-latest + outputs: + tag_valid: ${{ steps.tag-check.outputs.tag_valid }} + steps: + - name: Extract and validate tag for (pre)-release + id: tag-check + run: | + TAG_NAME=${GITHUB_REF#refs/tags/} + + # Check if the tag matches the pattern, e.g. 3.1.32 or 0.1.3rc0 + if [[ "$TAG_NAME" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]] || [[ "$TAG_NAME" =~ ^[0-9]+\.[0-9]+\.[0-9]+rc[0-9]+$ ]]; then + echo "tag_valid=true" >> $GITHUB_OUTPUT + fi + release: + needs: tag-check + if: needs.tag-check.outputs.tag_valid == 'true' permissions: contents: write uses: Billingegroup/release-scripts/.github/workflows/_build-wheel-release-upload.yml@v0 diff --git a/news/tag-check-workflow.rst b/news/tag-check-workflow.rst new file mode 100644 index 0000000..2d1c9f2 --- /dev/null +++ b/news/tag-check-workflow.rst @@ -0,0 +1,23 @@ +**Added:** + +* + +**Changed:** + +* Added tag check for release + +**Deprecated:** + +* + +**Removed:** + +* + +**Fixed:** + +* + +**Security:** + +*