Merge pull request #2809 from pikasTech/docs/2809-cicd-stale-event-cancel
docs: 允许调试期取消旧 CI 事件
This commit is contained in:
@@ -286,6 +286,12 @@ bun scripts/cli.ts hwlab nodes control-plane legacy-cicd --help
|
||||
再由修复 PR 的手动 plan/trigger 交付;临时 patch 必须撤销或被声明式交付覆盖;
|
||||
- 只读 status/history/events/logs/debug-step 仍是默认定位入口,
|
||||
`closeout` 只属于显式 compatibility diagnostics,不得进入默认观察或恢复路径。
|
||||
- CI/CD 不稳定或首次部署调试阶段允许直接取消已确认的旧执行对象或旧事件:
|
||||
- 必须先用运行面 identity、source commit、创建时间和后继事件证明目标已经过时,且已有更新事件承担同一交付意图;
|
||||
- 取消只终止该旧 PipelineRun、TaskRun 或事件的继续执行和资源占用,不得删除业务数据、GitOps desired state、Argo Application、Secret 或 source/ref authority;
|
||||
- 旧对象仍占用 repository concurrency、阻塞更新事件或已知会执行错误参数时,无需等待其自然超时;
|
||||
- 优先使用现有受控取消入口;该入口不可用且控制面本身处于调试恢复期时,允许按 `$unidesk-daddev` P2 对精确对象执行一次直接取消,并记录取消前后状态;
|
||||
- 取消只是调试期队列解阻,不是交付成功证据;最终仍须由 owning YAML、正常 source event、PaC、GitOps/Argo 和 runtime 自动链收敛。
|
||||
- CI/CD、GitOps、rollout、PipelineRun、Argo、git-mirror 和 AgentRun 的观察、诊断与控制必须走受控 CLI;不要用裸 `kubectl`、`argo`、`tkn`、`curl` 当正式控制入口。PaC migrated consumer 只允许 `release plan` 后由 `release trigger --confirm` 发送 webhook。
|
||||
- CI/CD 校验默认不得阻塞交付:
|
||||
- 除非用户明确要求某项校验成为门禁,禁止新增会让 Pipeline、artifact、GitOps promote、Argo reconcile、runtime rollout 或 `/health` closeout 失败的配置一致性、版本、契约、schema、preflight 或跨对象校验;
|
||||
|
||||
@@ -116,6 +116,13 @@ bun scripts/cli.ts hwlab g14 control-plane cleanup-released-pvs \
|
||||
- 对象不存在返回 `target-pipelinerun-not-found`;
|
||||
- 对象未完成返回 `target-pipelinerun-not-terminal`。
|
||||
|
||||
- 调试期旧执行取消:
|
||||
- CI/CD 不稳定或首次部署调试期间,先核对对象的 repository、consumer、source commit、创建时间、状态和更新事件 identity;
|
||||
- 已被更新事件明确替代的旧 PipelineRun、TaskRun 或旧事件仍在占用并发槽、阻塞队列或执行已知错误输入时,可以直接取消,不必等待 hard timeout;
|
||||
- 取消必须精确到单个旧对象,只终止执行和释放资源,不删除 GitOps desired state、Argo Application、runtime workload、业务数据、Secret 或 source/ref;
|
||||
- 优先走受控取消入口;入口缺失或自身故障时,按 `$unidesk-daddev` P2 记录 identity、取消动作、终态和后继事件恢复证据;
|
||||
- 更新事件开始执行只证明队列解阻,最终验收仍以正常 PaC、GitOps/Argo 和 runtime 自动链收敛为准。
|
||||
|
||||
- 大型 PipelineRun 造成 Kine/SQLite 压力时:
|
||||
- cleanup 只属于控制面快速缓解;
|
||||
- 长期修复必须消除 renderer 中重复内联的 `taskSpec`,并通过 PR 合并后的 plan 与手动 webhook 验收;
|
||||
|
||||
@@ -214,6 +214,12 @@
|
||||
- patch 不得修改 source/ref authority、制造交付成功或替代终态;
|
||||
- 成立的变化必须写回 owning YAML/源码,经正常 PR 合并后重新 plan,并通过受控手动 webhook 交付;
|
||||
- 临时 patch 随后撤销或由声明式交付覆盖。
|
||||
- CI/CD 不稳定或首次部署调试阶段可以取消已确认的旧执行对象或旧事件:
|
||||
- 必须通过 repository、consumer、source commit、创建时间和后继事件 identity 证明目标已经过时;
|
||||
- 已被更新事件替代的旧对象若继续占用 concurrency、阻塞队列或执行已知错误输入,不必等待自然超时;
|
||||
- 取消只终止精确旧 PipelineRun、TaskRun 或事件,不删除 source/ref、GitOps desired state、Argo Application、runtime workload、Secret 或业务数据;
|
||||
- 优先使用受控取消入口;入口不可用且控制面处于调试恢复期时,允许按 `$unidesk-daddev` P2 直接取消并记录前后证据;
|
||||
- 取消只用于释放调试期队列,不能替代正常 PaC、GitOps/Argo 和 runtime 自动链验收。
|
||||
- Migrated consumer 的默认 help、status、`Next` 与 `REPAIR` 只能给 `status`、`history`、`events`、`logs`、只读单步下钻以及本节稳定引用。CLI 必须省略 mutation command,而不是只给命令加警告文字。`unknown` authority 同样 fail-closed。
|
||||
- 旧 `trigger-current`、`refresh` 和 mirror `sync|flush` 已退役,只能返回只读诊断,不得创建 Job、写 ref 或重建 runtime。平台 bootstrap、Secret 与配置维护属于独立职责,只在 `platform-bootstrap` 或 `platform-maintenance` scoped help 中展示,不能作为 source delivery recovery。
|
||||
- `closeout` 仅保留只读历史/诊断兼容入口,并且只能从 `compatibility-diagnostics` scoped help 发现。会 POST hook test 的 `webhook-test` mutation 入口已经删除;连通性只能通过真正只读的 status、GET 与 readiness 观察,禁止制造伪 push。
|
||||
|
||||
Reference in New Issue
Block a user