name: "Deploy Documentation"

on:
  push:
    branches:
      - main

jobs:
  install:
    name: "Install"
    runs-on: ubuntu-latest
    steps:
      - name: "🛎 Checkout"
        uses: actions/checkout@v4
      - name: "🧶 Setup Yarn Dependencies"
        uses: ./.github/actions/use-yarn-dependencies

  deploy:
    name: "Deploy"
    needs: install
    permissions:
      contents: write # to be able to push to the gh-pages branch
    runs-on: ubuntu-latest
    steps:
      - name: "🛎 Checkout"
        uses: actions/checkout@v4
      - name: "🧶 Setup Yarn Dependencies"
        uses: ./.github/actions/use-yarn-dependencies
      - name: "🏗️ Build"
        run: npm run docs:build
      - name: "🚀 Deploy"
        uses: peaceiris/actions-gh-pages@v3
        with:
          github_token: ${{ secrets.GH_READ_AND_WRITE_REPOS_TOKEN }}
          publish_dir: ./.docs
          user_name: nearbuilder
          user_email: tech@nearbuilders.org
