5
我有一個buildbot生成工廠有幾個步驟。其中一個步驟會定期超時,導致buildbot引發異常並退出。但是,即使在這種情況下,我希望能夠存儲生成的日誌。 一個選項是添加一個只在上一步超時時才運行的步驟。使用doStepIf
是可能的。但是,沒有辦法看到狀態爲TIMEOUT
只有SUCCESS, WARNINGS, FAILURE, or SKIPPED
。 解決這個問題的最好方法是什麼?如何運行一個條件步驟,如果以前超時
的doStepIf
函數的例子:
from buildbot.status.builder import Results, SUCCESS
def doStepIf(step):
allSteps = step.build.getStatus().getSteps()
lastStep = allSteps[-1]
rc = lastStep.getResults()[0] # returns a tuple of (rc, string)
# if the rc == SUCCESS then don't continue, since we don't want to run this step
return Results[rc] == Results[SUCCESS]
什麼'haltOnFailure'屬性值有你的腳步?如果它設置爲True,那麼進一步的步驟(例如日誌存儲)將被跳過,除非它們的'alwaysRun'屬性設置爲True。詳情請參閱http://docs.buildbot.net/latest/manual/cfg-buildsteps.html?highlight=haltonfailure#common-parameters – rutsky