name: Check Stable Prep Items

on:
  schedule:
    - cron:  '0 */12 * * *'
  workflow_dispatch:

permissions: {}

jobs:
  check-stable-prep-items:
    name: Check Stable Prep Items
    runs-on: ubuntu-latest
    steps:
      - name: Generate GitHub App token
        uses: electron/github-app-auth-action@384fd19694fe7b6dcc9a684746c6976ad78228ae # v1.1.1
        id: generate-token
        with:
          creds: ${{ secrets.RELEASE_BOARD_GH_APP_CREDS }}
          org: electron
      - name: Find Newest Release Project Board
        id: find-project-number
        env:
          GITHUB_TOKEN: ${{ steps.generate-token.outputs.token }}
        run: |
          set -eo pipefail
          PROJECT_NUMBER=$(gh project list --owner electron --format json | jq -r '.projects | map(select(.title | test("^[0-9]+-x-y$"))) | max_by(.number) | .number')
          echo "PROJECT_NUMBER=$PROJECT_NUMBER" >> "$GITHUB_OUTPUT"
      - name: Update Completed Stable Prep Items
        uses: dsanders11/project-actions/completed-by@82e99438bd44a14ad18d92d036dbc25cbfb9a8c4 # v1.2.0
        with:
          field: Prep Status
          field-value: ✅ Complete
          project-number: ${{ steps.find-project-number.outputs.PROJECT_NUMBER }}
          token: ${{ steps.generate-token.outputs.token }}
