File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -38,13 +38,23 @@ jobs:
3838 INPUT_TAG : ${{ inputs.tag || '' }}
3939 REF_TYPE : ${{ github.ref_type }}
4040 REF_NAME : ${{ github.ref_name }}
41- HEAD_SHA : ${{ github.sha }}
4241 shell : bash
4342 run : |
4443 set -euo pipefail
4544 git fetch --force --tags
4645
47- SHOULD_PUBLISH="true"
46+ PACKAGE_VERSION="$(node -p "require('./package.json').version")"
47+ PACKAGE_VERSION="$(echo "$PACKAGE_VERSION" | xargs)"
48+ if [ -z "$PACKAGE_VERSION" ]; then
49+ echo "::error::package.json version is empty."
50+ exit 1
51+ fi
52+ if [[ ! "$PACKAGE_VERSION" =~ ^[0-9]+\.[0-9]+\.[0-9]+([-.][0-9A-Za-z.-]+)?$ ]]; then
53+ echo "::error::Invalid package.json version: '$PACKAGE_VERSION'"
54+ exit 1
55+ fi
56+
57+ PACKAGE_TAG="v${PACKAGE_VERSION}"
4858 PRERELEASE="false"
4959
5060 if [ "$EVENT_NAME" = "workflow_dispatch" ]; then
@@ -58,14 +68,12 @@ jobs:
5868 TAG="$REF_NAME"
5969 git checkout --detach "refs/tags/${TAG}"
6070 else
61- TAG="snapshot-${HEAD_SHA::7}"
62- PRERELEASE="true"
63- echo "::notice::Branch push detected (${REF_NAME}); publishing prerelease ${TAG}."
71+ TAG="$PACKAGE_TAG"
72+ echo "::notice::Branch push detected (${REF_NAME}); publishing release ${TAG} from package.json."
6473 fi
6574
6675 echo "tag=${TAG}" >> "$GITHUB_OUTPUT"
6776 echo "commit=$(git rev-parse HEAD)" >> "$GITHUB_OUTPUT"
68- echo "should_publish=${SHOULD_PUBLISH}" >> "$GITHUB_OUTPUT"
6977 echo "prerelease=${PRERELEASE}" >> "$GITHUB_OUTPUT"
7078
7179 - name : Setup pnpm
You can’t perform that action at this time.
0 commit comments