name: Regenerate track maps # Monthly is a safety margin; layouts change between seasons. No change, no PR. on: schedule: - cron: "0 3 1 * *" workflow_dispatch: {} permissions: contents: read jobs: regenerate: runs-on: ubuntu-latest steps: - uses: actions/checkout@v7 with: persist-credentials: true # this workflow pushes with the checkout's credentials - uses: actions/setup-go@v7 with: go-version-file: go.mod - name: Generate track maps run: go run ./cmd/gentrackmaps # dnb-robot, not GITHUB_TOKEN: its PR triggers CI and auto-merge without # manual approval. - uses: actions/create-github-app-token@v3 id: app_token with: client-id: ${{ secrets.DNB_ROBOT_CLIENT_ID }} private-key: ${{ secrets.AUTOMATION_APP_PRIVATE_KEY }} permission-contents: write permission-pull-requests: write permission-issues: write owner: drumandbytes repositories: paddock-api - name: Open PR with any changes uses: peter-evans/create-pull-request@5f6978faf089d4d20b00c7766989d076bb2fc7f1 # v8.1.1 with: token: ${{ steps.app_token.outputs.token }} commit-message: "chore: regenerate track maps" title: "chore: regenerate track maps" body: | Monthly scheduled run of `cmd/gentrackmaps`. Only circuits whose rendered SVG actually changed are included - review the diff before merging to confirm it's a real layout change and not a data-source hiccup. Merging this alone doesn't publish a new image; that's still the existing manual build+push step. branch: chore/regenerate-track-maps add-paths: static/track_maps/**