Files
climperor/.gitea/workflows/web-patch.yml
T
vosonandCursor b01552ee6e v0.5.84: matches origin filter, mobile gate, refresh reliability.
Ship Web refresh cache/lock, mobile demand gate, matches 职业/国服 filter, and related site updates through 0.5.84.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-29 18:31:55 +08:00

63 lines
1.9 KiB
YAML

# Periodic patch-list check; fetch details + version-linked data only when new.
# Repo secrets: CLOUDFLARE_EMAIL, CLOUDFLARE_API_KEY,
# OSS_ACCESS_KEY_ID, OSS_ACCESS_KEY_SECRET
# (STRATZ not required for this tier)
name: web-patch
on:
schedule:
# Every 6 hours UTC
- cron: "0 */6 * * *"
workflow_dispatch:
concurrency:
group: climperor-web-patch-refresh
cancel-in-progress: false
jobs:
refresh:
runs-on: self-hosted
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Restore refresh cache
uses: actions/cache@v4
with:
path: web/.refresh-cache
key: web-refresh-${{ runner.os }}-${{ hashFiles('web/data/patches.json') }}-${{ github.run_id }}
restore-keys: |
web-refresh-${{ runner.os }}-${{ hashFiles('web/data/patches.json') }}-
web-refresh-${{ runner.os }}-
- name: Install deps
run: |
set -e
PYTHON=python3
command -v python3 >/dev/null || PYTHON=python
command -v node >/dev/null || { echo "node/npx required for wrangler deploy"; exit 1; }
"$PYTHON" -m pip install -q -r web/requirements.txt
- name: Refresh patch tier
env:
REFRESH_CACHE_ENABLED: "1"
REFRESH_RUN_ID: ${{ github.run_id }}
CLOUDFLARE_EMAIL: ${{ secrets.CLOUDFLARE_EMAIL }}
CLOUDFLARE_API_KEY: ${{ secrets.CLOUDFLARE_API_KEY }}
OSS_ACCESS_KEY_ID: ${{ secrets.OSS_ACCESS_KEY_ID }}
OSS_ACCESS_KEY_SECRET: ${{ secrets.OSS_ACCESS_KEY_SECRET }}
run: |
set -e
PYTHON=python3
command -v python3 >/dev/null || PYTHON=python
"$PYTHON" web/refresh_web.py --tier patch
- name: Save refresh summary
if: always()
uses: actions/upload-artifact@v4
with:
name: web-patch-refresh-${{ github.run_id }}
path: web/.refresh/summary.json
if-no-files-found: warn