Skip to content

Commit 3e4a46b

Browse files
committed
WF
1 parent 12d949a commit 3e4a46b

1 file changed

Lines changed: 14 additions & 6 deletions

File tree

.github/workflows/build-release.yml

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff 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

0 commit comments

Comments
 (0)