1 回答
TA貢獻2051條經驗 獲得超10個贊
Buildbot 中的每個步驟都作為狀態返回SUCCESS, WARNINGS, SKIPPED, FAILURE, CANCELLED, EXCEPTION,RETRY
因此,如果MyCoolStep有效,它將構建狀態設置為SUCCESS,您可以檢查CommitWork它以執行它。
因為RollbackWorkflow您可以檢查構建是否處于FAILURE狀態并執行它。由于CommitWork在此狀態下被跳過,整體狀態不會升級到SKIPPED
如果兩個步驟都被隱藏,SKIPPED那么它們在不執行時不會污染 buildbot 輸出。
def success(build):
return build.getStatus() == SUCCESS
def failure(build):
return build.getStatus() == FAILURE
def skipped(results, build):
return results == SKIPPED
factory = util.BuildFactory()
factory.addStep(MyCoolStep())
factory.addStep(CommitWork(), doStepIf=success, hideStepIf=skipped)
factory.addStep(RollbackWork(), doStepIf=failure, hideStepIf=skipped)
添加回答
舉報
