Repository navigation
58 lines (53 loc) · 2.21 KB
/
Copy pathcache-dit-examples.yml
File metadata and controls
58 lines (53 loc) · 2.21 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
# cache-dit examples guard - project thin trigger.
#
# Calls the common engine .github/workflows/examples-template.yml;
# this file only declares what varies per project: schedule,
# concurrency, upstream repo, dispatch input forwarding, and matrix
# parallelism. The guard loop (release-only monitor / manifest-check /
# run-example matrix / validate-results / save-monitor-state) lives in
# the engine. See docs/examples-guard-engine.md for the design.
name: cache-dit-examples
concurrency:
# schedule runs serialize; each manual run gets its own group so a
# dispatch is never blocked behind a scheduled run.
group: ${{ github.event_name == 'schedule' && 'cache-dit-examples-schedule' || format('manual-{0}', github.run_id) }}
# false: a run cancelled mid-way loses its outcome writeback, and the
# outcome is what drives the next cycle's retry.
cancel-in-progress: false
on:
schedule:
- cron: '35 0 * * *'
workflow_dispatch:
inputs:
target_ref:
description: Branch, tag, or SHA to test (empty = latest upstream release; falls back to main on API failure)
required: false
default: ''
type: string
# PR trigger: changes to the guard assets (examples-guards/cache-dit/**)
# or this workflow file re-run the guard against the latest upstream
# release so a regression is caught before merge. paths filter avoids
# burning the self-hosted NPU runner on unrelated PRs. `pull_request`
# (not `pull_request_target`): contents: read is enough, no write-token
# risk. Mirrors the peft-quick-start example.
pull_request:
branches: [main]
paths:
- 'examples-guards/cache-dit/**'
- '.github/workflows/cache-dit-examples.yml'
# Engine jobs query the GitHub Job API (validate-results); called
# workflows run with the caller's GITHUB_TOKEN permissions.
permissions:
actions: read
contents: read
jobs:
cache-dit-examples:
uses: ./.github/workflows/examples-template.yml
with:
# Namespaces cache keys (examples-monitor-state-cache-dit_*),
# artifact names and the scheduling paths under
# examples-guards/cache-dit.
project: cache-dit
upstream_repo: vipshop/cache-dit
target_ref: ${{ inputs.target_ref }}
max_parallel: 4