diff --git a/.github/workflows/publish.yaml b/.github/workflows/publish.yaml deleted file mode 100644 index c5e5075d..00000000 --- a/.github/workflows/publish.yaml +++ /dev/null @@ -1,26 +0,0 @@ ---- -name: Publish to NPM - -# yamllint disable rule:truthy -on: - release: - types: [published] -jobs: - build: - runs-on: ubuntu-latest - permissions: - contents: write - id-token: write - steps: - - name: Checkout - uses: actions/checkout@v4 - - name: Setup bun - uses: oven-sh/setup-bun@v2 - - name: Install dependencies - run: bun install - - name: Build - run: bun build:lib - - name: Publish to NPM - env: - NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} - run: bun publish diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index a57390be..0985d345 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -6,19 +6,33 @@ on: push: tags: - "v[0-9]+.[0-9]+.[0-9]+" - +permissions: + contents: write + id-token: write + jobs: - release: + build: runs-on: ubuntu-latest - permissions: - contents: write - id-token: write steps: - name: Checkout uses: actions/checkout@v4 - - name: Create GitHub release - uses: Roang-zero1/github-create-release-action@v3 - with: - version_regex: ^v[[:digit:]]+\.[[:digit:]]+\.[[:digit:]]+ - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + - name: Setup bun + uses: oven-sh/setup-bun@v2 + - name: Install dependencies + run: bun install + - name: Build + run: bun build:lib + release: + runs-on: ubuntu-latest + needs: build + steps: + - name: Release + uses: go-semantic-release/action@v1 + id: semrel + with: + github-token: ${{ secrets.GITHUB_TOKEN }} + - name: Publish to NPM + if: steps.semrel.outputs.version != '' + env: + NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} + run: bun publish