Skip to content

Zotero Upstream Watch #104

Zotero Upstream Watch

Zotero Upstream Watch #104

name: Zotero Upstream Watch
on:
schedule:
- cron: "17 3 * * *"
workflow_dispatch:
permissions:
contents: write
pull-requests: write
concurrency:
group: zotero-upstream-watch
cancel-in-progress: false
jobs:
watch:
runs-on: ubuntu-latest
env:
GITHUB_TOKEN: ${{ github.token }}
steps:
- name: Checkout
uses: actions/checkout@v6
- name: Setup Python
uses: actions/setup-python@v5
with:
python-version: "3.11"
- name: Install uv
run: python -m pip install --upgrade uv
- name: Check Zotero upstream contracts
run: uv run python scripts/ci/check_zotero_upstream.py --update
- name: Validate workflow metadata
run: |
uv run python -m unittest discover scripts -p 'test_*.py'
uv run python scripts/ci/check_stop.py
- name: Create upstream watch PR
uses: peter-evans/create-pull-request@v8
with:
token: ${{ github.token }}
branch: chore/zotero-upstream-watch
delete-branch: true
title: "chore: update Zotero upstream watch"
commit-message: "chore: update Zotero upstream watch"
body-path: .workflow/upstream/zotero_upstream_report.md
labels: |
upstream-zotero
maintenance
add-paths: |
.workflow/upstream/zotero_watch_targets.json
.workflow/upstream/zotero_upstream_contract.json
.workflow/upstream/zotero_upstream_report.md
.workflow/milestones/*.json
.workflow/milestone_index.json
.workflow/project_snapshot.json