diff --git a/.github/workflows/release-please.yml b/.github/workflows/release-please.yml index 50d0c38..741ed0f 100644 --- a/.github/workflows/release-please.yml +++ b/.github/workflows/release-please.yml @@ -26,3 +26,5 @@ jobs: needs: release-please if: ${{ needs.release-please.outputs.release_created == 'true' }} uses: ./.github/workflows/release.yml + with: + tag_name: ${{ needs.release-please.outputs.tag_name }} diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 2a269c5..2f45f6e 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -3,6 +3,11 @@ name: Release on: workflow_dispatch: workflow_call: + inputs: + tag_name: + description: Release tag name (e.g., v1.0.0-beta.1) + type: string + default: '' jobs: publish: @@ -28,5 +33,16 @@ jobs: - name: Build run: pnpm build + - name: Determine npm tag + id: npm-tag + env: + TAG_NAME: ${{ inputs.tag_name }} + run: | + if [[ "$TAG_NAME" == *"-"* ]]; then + echo "tag=beta" >> "$GITHUB_OUTPUT" + else + echo "tag=latest" >> "$GITHUB_OUTPUT" + fi + - name: Publish - run: npm publish --tag latest --access public --provenance + run: npm publish --tag ${{ steps.npm-tag.outputs.tag }} --access public --provenance diff --git a/release-please-config.json b/release-please-config.json index 7dcb33a..3bfa5dc 100644 --- a/release-please-config.json +++ b/release-please-config.json @@ -6,7 +6,9 @@ "release-type": "node", "bump-minor-pre-major": true, "changelog-path": "CHANGELOG.md", - "versioning": "default" + "versioning": "default", + "prerelease": true, + "prerelease-type": "beta" } } }