name: Check Darktide source for VO changes on: schedule: - cron: "0 9 * * 1" # every Monday 09:00 UTC workflow_dispatch: # "Run workflow" button in the Actions tab permissions: contents: read issues: write jobs: check: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: actions/setup-python@v5 with: python-version: "3.x" - name: Compare mod commands against game source id: check env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} run: | set +e python3 tools/check_upstream.py --json report.json | tee report.txt echo "changed=$?" >> "$GITHUB_OUTPUT" - name: Open / update issue if something changed if: steps.check.outputs.changed == '1' env: GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} run: | TITLE="VO triggers changed in Darktide source" BODY="$(printf '%s\n\n```\n%s\n```\n\nRun `python3 tools/check_upstream.py` locally, add the new triggers to `VoxCaster_commands.lua` + `_localization.lua`, and re-run until it says *Up to date*.' "Automated check on $(date -u +%F)." "$(cat report.txt)")" EXISTING=$(gh issue list --state open --search "$TITLE in:title" --json number --jq '.[0].number') if [ -n "$EXISTING" ]; then gh issue comment "$EXISTING" --body "$BODY" else gh issue create --title "$TITLE" --body "$BODY" --label "upstream" fi