name: Release and Publish on: push: tags: - 'v*' jobs: release: runs-on: ubuntu-latest permissions: contents: write packages: write id-token: write steps: - uses: actions/checkout@v4 - uses: actions/setup-node@v4 with: node-version: '20' - name: Install dependencies run: npm ci - name: Install Playwright run: npx playwright install webkit - name: Build run: npm run build - name: Run checks run: npm run check - name: Create GitHub Release uses: softprops/action-gh-release@v2 with: generate_release_notes: true # Publish to npm as @saiden/browse - uses: actions/setup-node@v4 with: node-version: '20' registry-url: 'https://registry.npmjs.org' - name: Publish to npm run: npm publish --provenance --access public env: NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} # Publish to GitHub Packages as @saiden-dev/browse - uses: actions/setup-node@v4 with: node-version: '20' registry-url: 'https://npm.pkg.github.com' scope: '@saiden-dev' - name: Publish to GitHub Packages run: | npm pkg set name='@saiden-dev/browse' npm publish env: NODE_AUTH_TOKEN: ${{ secrets.GITHUB_TOKEN }}