name: Publish
on:
    workflow_run:
        workflows: [CI]
        branches: [main]
        types: [completed]

concurrency: ${{ github.workflow }}-${{ github.ref }}

permissions:
    contents: write
    pull-requests: write

jobs:
    publish:
        if: ${{ github.event.workflow_run.conclusion == 'success' }}
        runs-on: ubuntu-latest
        steps:
            - uses: actions/checkout@v3
              with:
                  node-version: 20.x
            - uses: pnpm/action-setup@v2
              with:
                  version: 9
                  node-version: 20.x
            - uses: actions/setup-node@v3
              with:
                  node-version: 20.x
                  cache: 'pnpm'

            - run: pnpm install --frozen-lockfile
            - name: Create Release Pull Request or Publish
              id: changesets
              uses: changesets/action@v1
              with:
                  publish: pnpm run release
              env:
                  GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
                  NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
