on:
  schedule:
    - cron: "0 0 * * 1" # Every Monday at midnight UTC
  workflow_dispatch:

name: "Vouch - Sync CODEOWNERS"

concurrency:
  group: vouch-manage
  cancel-in-progress: false

jobs:
  sync:
    runs-on: namespace-profile-ghostty-xsm
    steps:
      - uses: actions/create-github-app-token@1b10c78c7865c340bc4f6099eb2f838309f1e8c3 # v3.1.1
        id: app-token
        with:
          app-id: ${{ secrets.VOUCH_APP_ID }}
          private-key: ${{ secrets.VOUCH_APP_PRIVATE_KEY }}

      - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
        with:
          token: ${{ steps.app-token.outputs.token }}

      - uses: mitchellh/vouch/action/sync-codeowners@c6d80ead49839655b61b422700b7a3bc9d0804a9 # v1.4.2
        with:
          repo: ${{ github.repository }}
          pull-request: "true"
          merge-immediately: "true"
        env:
          GITHUB_TOKEN: ${{ steps.app-token.outputs.token }}
