feat(#60): 一键部署编排与回滚引擎
纯标准库实现,对齐 PRD 5.6「⑥ 部署底座」(不真执行 k8s/helm,模拟编排): - deploy_plan.py:DeployStep(4 类:pre_check/deploy/health_check/post_check) + DeployPlan(顺序约束自动校验,default_helm_release 默认 4 步计划)+ DeployOrchestrator(按序执行,必需步骤失败即中止并标记 needs_rollback, deploy/health_check 为回滚检查点,pre_check 失败无需回滚)+ HealthCheckContract(对齐 deploy/k8s/healthz 99.8% 目标)。 - rollback.py:RollbackPoint(部署前快照,values_hash SHA1 检测漂移)+ RollbackManager(快照栈 + rollback_to_latest/rollback(n),失败压回栈顶 保持一致性,FIFO 淘汰,支持回滚后健康检查)+ RollbackResult(4 状态)。 - tests:30 用例覆盖计划构造/顺序约束、全成功/各类失败、回滚检查点判定、 action 异常、dry_run、空计划、快照压栈/FIFO、回滚成功/失败/多版本/空栈/ 异常、健康检查契约、values 漂移、报告序列化。 - _sanity_check.py:冒烟验证快照→部署成功→部署失败→回滚全流程。
This commit is contained in:
@@ -0,0 +1,42 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
"""一键部署编排 + 回滚引擎包(Issue #60 / PRD 5.6「⑥ 部署底座」)。
|
||||
|
||||
把部署与回滚落为**可测试的纯标准库编排引擎**——不真执行 k8s/helm,但模拟
|
||||
完整编排序列(pre_check → deploy → health_check → post_check)+ 部署前快照
|
||||
+ 失败回滚。零运行时依赖,与 iAOP 部署底座一致。
|
||||
"""
|
||||
from .deploy_plan import (
|
||||
DeployOrchestrator,
|
||||
DeployOutcome,
|
||||
DeployPlan,
|
||||
DeployReport,
|
||||
DeployStep,
|
||||
DeployStepKind,
|
||||
DeployStepResult,
|
||||
DeployStatus,
|
||||
HealthCheckContract,
|
||||
)
|
||||
from .rollback import (
|
||||
RollbackManager,
|
||||
RollbackPoint,
|
||||
RollbackResult,
|
||||
RollbackStatus,
|
||||
)
|
||||
|
||||
__all__ = [
|
||||
# deploy_plan
|
||||
"DeployPlan",
|
||||
"DeployStep",
|
||||
"DeployStepKind",
|
||||
"DeployStepResult",
|
||||
"DeployStatus",
|
||||
"DeployOutcome",
|
||||
"DeployReport",
|
||||
"DeployOrchestrator",
|
||||
"HealthCheckContract",
|
||||
# rollback
|
||||
"RollbackPoint",
|
||||
"RollbackManager",
|
||||
"RollbackResult",
|
||||
"RollbackStatus",
|
||||
]
|
||||
Reference in New Issue
Block a user