name: Release on: push: tags: - 'v*' # Push events to matching v*, i.e. v1.0, v20.15.10 jobs: test: uses: ./.github/workflows/test.yml release: # prevents this action from running on forks if: github.repository == 'vuejs/core' needs: [test] runs-on: ubuntu-latest permissions: contents: write id-token: write # Use Release environment for deployment protection environment: Release steps: - name: Checkout uses: actions/checkout@v5 - name: Install pnpm uses: pnpm/action-setup@v4 - name: Install Node.js uses: actions/setup-node@v5 with: node-version-file: '.node-version' registry-url: 'https://registry.npmjs.org' cache: 'pnpm' - name: Install deps run: pnpm install - name: Update npm run: npm i -g npm@latest - name: Build and publish id: publish run: | pnpm release --publishOnly - name: Create GitHub release id: release_tag uses: yyx990803/release-tag@master env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: tag_name: ${{ github.ref }} body: | For stable releases, please refer to [CHANGELOG.md](https://github.com/vuejs/core/blob/main/CHANGELOG.md) for details. For pre-releases, please refer to [CHANGELOG.md](https://github.com/vuejs/core/blob/minor/CHANGELOG.md) of the `minor` branch.