mirror of
https://github.com/hanzoai/datastore.git
synced 2026-09-26 13:55:07 +00:00
Refactor job dependency model to clearly separate hard dependencies from ordering-only dependencies: - requires: hard deps (artifact names or job names). Artifacts are downloaded; for job names the artifact report is downloaded. These affect the job digest and cache key, and trigger re-runs when changed. - run_after: ordering-only deps (job names). Listed jobs run first, but nothing is downloaded and they do not affect the digest or filtering. This replaces the needs_jobs_from_requires flag with a clean structural distinction. set_dependency is renamed to set_run_after (all existing callers were ordering-only), and set_requires is added for hard deps. Also removes ENABLE_ARTIFACTS_REPORT setting — artifact reports are now always generated for jobs that provide artifacts. Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
30 lines
730 B
Python
30 lines
730 B
Python
from praktika import Workflow
|
|
|
|
from ci.defs.defs import BASE_BRANCH, DOCKERS, SECRETS, ArtifactConfigs
|
|
from ci.defs.job_configs import JobConfigs
|
|
|
|
workflow = Workflow.Config(
|
|
name="OptimizeToolchain",
|
|
event=Workflow.Event.DISPATCH,
|
|
branches=[BASE_BRANCH],
|
|
jobs=[
|
|
*JobConfigs.toolchain_build_jobs,
|
|
JobConfigs.update_toolchain_dockerfile_job.set_run_after(
|
|
[j.name for j in JobConfigs.toolchain_build_jobs]
|
|
),
|
|
],
|
|
dockers=DOCKERS,
|
|
secrets=SECRETS,
|
|
artifacts=[
|
|
ArtifactConfigs.toolchain_pgo_bolt_amd,
|
|
ArtifactConfigs.toolchain_pgo_bolt_arm,
|
|
],
|
|
enable_cache=True,
|
|
enable_report=True,
|
|
enable_cidb=True,
|
|
)
|
|
|
|
WORKFLOWS = [
|
|
workflow,
|
|
]
|