name: Ruby Documentation CI

on:
  push:
    branches:
      - master
  pull_request:

permissions:
  contents: read

env:
  HOMEBREW_DEVELOPER: 1
  HOMEBREW_NO_AUTO_UPDATE: 1
  HOMEBREW_NO_ENV_HINTS: 1
  HOMEBREW_BOOTSNAP: 1
  HOMEBREW_NO_INSTALL_CLEANUP: 1

jobs:
  rubydoc:
    if: github.repository == 'Homebrew/brew'
    runs-on: ubuntu-22.04
    env:
      BUNDLE_GEMFILE: ${{ github.workspace }}/rubydoc/Gemfile
    steps:
      - name: Set up Homebrew
        id: set-up-homebrew
        uses: Homebrew/actions/setup-homebrew@master
        with:
          core: false
          cask: false
          test-bot: false

      - name: Checkout Homebrew/rubydoc.brew.sh
        uses: actions/checkout@v4
        with:
          repository: Homebrew/rubydoc.brew.sh
          path: rubydoc

      - name: Install Ruby
        uses: ruby/setup-ruby@ff740bc00a01b3a50fffc55a1071b1060eeae9dc # v1.180.0
        with:
          bundler-cache: true
          working-directory: rubydoc

      - name: Process rubydoc comments
        working-directory: ${{ steps.set-up-homebrew.outputs.repository-path }}/Library/Homebrew
        run: bundle exec yard doc --no-output --fail-on-warning
