name: Release on: push: branches: - master - main - next - next-major - alpha - beta jobs: release: name: release runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v5 - name: Semantic Release uses: ./ id: semantic with: branches: | [ '+([0-9])?(.{+([0-9]),x}).x', 'master', 'main', 'next', 'next-major', { name: 'beta', prerelease: true }, { name: 'alpha', prerelease: true } ] extra_plugins: | @semantic-release/git @semantic-release/changelog env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} NPM_TOKEN: ${{ secrets.NPM_TOKEN }} - name: Setup Node.js with GitHub Package Registry uses: actions/setup-node@v5 with: node-version: 24 registry-url: 'https://npm.pkg.github.com' scope: 'cycjimmy' - name: Publish To GitHub Package Registry if: steps.semantic.outputs.new_release_published == 'true' run: npm publish env: NODE_AUTH_TOKEN: ${{secrets.GITHUB_TOKEN}} - name: Push updates to branch for major version if: steps.semantic.outputs.new_release_published == 'true' run: "git push https://x-access-token:${GITHUB_TOKEN}@github.com/${GITHUB_REPOSITORY}.git HEAD:refs/heads/v${{steps.semantic.outputs.new_release_major_version}}" env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}