您可以讓管線中的工作輸出根據所提供的條件判定執行或停止管線。若要根據工作輸出讓管線通過或失敗,請使用 [條件] 工作。

您可以使用條件工作作為管線中的決定點。透過將 [條件] 工作與提供的條件運算式搭配使用,您可以評估管線、階段和工作中的任何內容。

[條件] 工作的結果會決定管線中的下一個工作是否執行。

  • 條件為 true,則允許管線執行繼續。
  • 條件為 false,則停止管線。

如需有關如何透過將工作與 [條件] 工作繫結在一起,來將一個工作的輸出值用作下一個工作的輸入的範例,請參閱如何在 Code Stream 管線中使用變數繫結

表 1. [條件] 工作及其條件運算式與管線的關聯性
[條件] 工作 影響對象 執行的作業

[條件] 工作

管線

條件工作根據工作輸出為 true 或 false 來判定管線在當時是執行或停止。

條件運算式

[條件] 工作輸出

管線執行時,您在條件工作中包含的條件運算式會產生 true 或 false 輸出狀態。例如,條件運算式可能需要 [條件] 工作輸出狀態為已完成,或使用組建編號 74

條件運算式將顯示在 [條件] 工作中的 [工作] 索引標籤上。

條件運算式的支援建構將會出現,並為管線變數、工作輸出變數、值和運算子提供範例。

條件工作在功能和行為方面不同於其他工作類型中的依條件設定。

依條件設定可用於其他工作類型。

在其他工作類型中,依條件根據目前工作先決條件運算式的評估結果為 true 或 false,來判定目前工作是否執行,而不是連續執行工作。當管線執行時,依條件設定的條件運算式將針對目前工作產生 true 或 false 輸出狀態。依條件設定與其自己的條件運算式一起顯示在 [工作] 索引標籤上。

此範例使用 [條件] 工作。

必要條件

  • 確認管線存在,且包含階段和工作。

程序

  1. 在您的管線中,確定 [條件] 工作必須出現的決策點。
  2. 在相依於其通過或失敗狀態的工作之前新增 [條件] 工作。
  3. 向 [條件] 工作新增條件運算式。
    例如: "${Stage1.task1.output.status}" == "COMPLETED" || ${input.buildNumber} == 74
    在管線執行時,新增 [條件] 工作以及評估為 true 或 false 的條件運算式。
  4. 驗證工作。
  5. 儲存管線,然後啟用並執行此管線。

結果

觀察管線執行,並注意管線是繼續執行,還是在 [條件] 工作處停止。

下一步

如果要復原管線部署,也可以使用 [條件] 工作。例如,在復原管線中,[條件] 工作可協助 Code Stream 根據條件運算式標記管線失敗,並可以針對各種失敗類型觸發單一復原流程。

若要復原部署,請參閱如何在 Code Stream 中復原我的部署