將動作配置為依賴其他動作 - Amazon CodeCatalyst

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

將動作配置為依賴其他動作

依預設,當您將動作新增至工作流程時,會在視覺化編輯器中並排新增這些動作。這表示當您啟動工作流程執行時,動作將 parallel 執行。如果您希望動作依序執行 (並在視覺化編輯器中垂直顯示),您必須設定它們之間的相依性。例如,您可以將動作設定為依賴TestBuild作,以便在建置動作之後執行測試動作。

您可以設定動作和動作群組之間的相依性。您還可以配置 one-to-many 依賴關係,以便一個動作依賴於其他多個動作才能啟動。請參閱設定相依性的準則以確保您的相依性設定符合工作流程的 YAML 語法。

設定動作之間的相依性

請使用下列指示來設定工作流程中動作之間的相依性。

Visual
若要使用視覺化編輯器設定相依性
  1. 請在以下位置開啟 CodeCatalyst 主控台。 https://codecatalyst.aws/

  2. 選擇您的專案。

  3. 在瀏覽窗格中,選擇 CI/CD,然後選擇 [工作流程]。

  4. 選擇工作流程的名稱。您可以依定義工作流程的來源儲存庫或分支名稱進行篩選,或依工作流程名稱進行篩選。

  5. 選擇編輯

  6. 選擇 [視覺]。

  7. 在工作流程圖中,選擇將取決於其他動作的動作。

  8. 選擇輸入索引標籤。

  9. 取決於-選用中,執行下列動作:

    指定必須成功執行的動作、動作群組或閘道,才能執行此動作。

    如需有關「依賴」功能的詳細資訊,請參閱。將動作配置為依賴其他動作

  10. (選擇性) 選擇 [驗證],在認可之前驗證工作流程的 YAML 程式碼。

  11. 選擇「確認」,輸入確認訊息,然後再次選擇「確認」。

YAML
若要使用 YAML 編輯器設定相依性
  1. 請在以下位置開啟 CodeCatalyst 主控台。 https://codecatalyst.aws/

  2. 選擇您的專案。

  3. 在瀏覽窗格中,選擇 CI/CD,然後選擇 [工作流程]。

  4. 選擇工作流程的名稱。您可以依定義工作流程的來源儲存庫或分支名稱進行篩選,或依工作流程名稱進行篩選。

  5. 選擇編輯

  6. 選擇 YAML

  7. 在將依賴於另一個動作中,添加類似以下內容的代碼:

    action-name: DependsOn: - action-1

    如需更多範例,請參閱如何設定動作之間的相依性範例。如需一般指導方針,請參閱設定相依性的準則。如需詳細資訊,請參閱「」中針對您的動作工作流程 YAML 定義DependsOn屬性說明。

  8. (選擇性) 選擇 [驗證],在認可之前驗證工作流程的 YAML 程式碼。

  9. 選擇「確認」,輸入確認訊息,然後再次選擇「確認」。

設定相依性的準則

配置依賴關係時,請遵循以下準則:

  • 如果動作位於群組內,則該動作只能依賴同一群組內的其他動作。

  • 動作和動作群組可以依賴於 YAML 階層中相同層級的其他動作和動作群組,但依賴於不同層級。

如何設定動作之間的相依性範例

下列範例顯示如何在工作流程定義檔案中配置動作與群組之間的相依性。

範例:設定簡單的相依性

下列範例顯示如何將Test動作設定為依賴使用該DependsOn內容的Build動作。

Actions: Build: Identifier: aws/build@v1 Configuration: ... Test: DependsOn: - Build Identifier: aws/managed-test@v1 Configuration: ...

範例:將動作群組配置為依賴動作

下列範例顯示如何將DeployGroup動作群組設定為依賴FirstAction動作。請注意,動作和動作群組位於同一層級。

Actions: FirstAction: #An action outside an action group Identifier: aws/github-actions-runner@v1 Configuration: ... DeployGroup: #An action group containing two actions DependsOn: - FirstAction Actions: DeployAction1: ... DeployAction2: ...

範例:將動作群組配置為依賴另一個動作群組

下列範例顯示如何將DeployGroup動作群組設定為依賴BuildAndTestGroup動作群組。請注意,動作群組位於同一層級。

Actions: BuildAndTestGroup: # Action group 1 Actions: BuildAction: ... TestAction: ... DeployGroup: #Action group 2 DependsOn: - BuildAndTestGroup Actions: DeployAction1: ... DeployAction2: ...

範例:將動作群組配置為依賴多個動作

下列範例顯示如何將DeployGroup動作群組配置為依賴FirstActionSecondAction作、動作以及BuildAndTestGroup動作群組。請注意DeployGroup,與FirstActionSecondAction和位於相同層級BuildAndTestGroup

Actions: FirstAction: #An action outside an action group ... SecondAction: #Another action ... BuildAndTestGroup: #Action group 1 Actions: Build: ... Test: ... DeployGroup: #Action group 2 DependsOn: - FirstAction - SecondAction - BuildAndTestGroup Actions: DeployAction1: ... DeployAction2: ...