name: Publish packages

on:
  push:
    branches: [v2]
  workflow_dispatch:

permissions:
  contents: write
  pull-requests: write

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

jobs:
  build:
    runs-on: ubuntu-latest
    if: github.repository == 'microsoft/TypeScript-Website'

    steps:
      - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
        with:
          fetch-depth: 0
          filter: blob:none
          token: ${{ secrets.TS_BOT_TOKEN }}
      - uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
        with:
          node-version: "20.x"
          registry-url: "https://registry.npmjs.org/"
      - uses: pnpm/action-setup@903f9c1a6ebcba6cf41d87230be49611ac97822e # v6.0.3

      - name: Prepare website v2
        run: |
          pnpm install
          pnpm bootstrap
          pnpm build

      - uses: changesets/action@6a0a831ff30acef54f2c6aa1cbbc1096b066edaf # v1.7.0
        with:
          publish: pnpm ci:publish
        env:
          GITHUB_TOKEN: ${{ secrets.TS_BOT_TOKEN }}
          NODE_AUTH_TOKEN: ${{ secrets.NPM_PUBLISH_TOKEN }} 
