停止管線執行 CodePipeline - AWS CodePipeline

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

停止管線執行 CodePipeline

當管道執行開始透過管道執行時,其一次會進入一個階段,並在階段中的所有動作執行正在執行時鎖定階段。這些進行中的動作必須以某種方式處理,以便在管道執行停止時,允許完成或捨棄動作。

有兩種方式可以停止管道執行:

  • 停止等待:AWS CodePipeline 會等待停止執行,直到所有進行中的動作都完成為止 (也就是動作具有 SucceededFailed 狀態)。此選項會保留進行中的動作。執行會處於 Stopping 狀態,直到進行中的動作完成為止。然後執行會處於 Stopped 狀態。動作完成之後,階段就會解除鎖定。

    如果您選擇停止並等待,而且在執行仍處於 Stopping 狀態時改變主意,您可以選擇捨棄。

  • 停止並捨棄:AWS CodePipeline 停止執行,而不等待進行中的動作完成。當進行中的動作被捨棄時,執行會有非常短的時間處於 Stopping 狀態。在執行停止之後,當管道執行處於 Abandoned 狀態時,動作執行會處於 Stopped 狀態。階段會解除鎖定。

    對於處於 Stopped 狀態的管道執行,您可重試執行停止所在階段中的動作。

    警告

    此選項可能會導致工作失敗或工作失序。

停止管道執行 (主控台)

您可以使用控制台停止管道執行。選擇執行,然後選擇停止管線執行的方法。

注意

您也可以停止作為輸入執行的管道執行。若要深入瞭解如何停止輸入執行,請參閱停止輸入執行 (主控台)

  1. 請登入AWS Management Console並開啟 CodePipeline 主控台,網址為 http://console.aws.amazon.com/codesuite/codepipeline/home

  2. 執行下列任意一項:

    注意

    在您停止執行之前,我們建議您停用階段前面的轉換。如此一來,當階段由於停止執行而解除鎖定時,階段就不會接受後續的管道執行。

    • Name (名稱) 中,選擇您想停止執行的管道名稱。在管道詳細資訊頁面上,選擇 Stop execution (停止執行)

    • 選擇 View history (檢視歷程記錄)。在歷程記錄頁面上,選擇 Stop execution (停止執行)

  3. Stop execution (停止執行) 頁面的 Select execution (選取執行) 之下,選擇您要停止的執行。

    注意

    只有仍在進行中的執行才會顯示。不會顯示已經完成的執行。

  4. Select an action to apply to execution (選取要套用至執行的動作) 之下,選擇下列其中一項:

    • 若要確保在所有進行中的動作都完成前,執行不會停止,請選擇 Stop and wait (停止並等待)

      注意

      如果執行已處於 Stopping (停止中) 狀態,您就無法選擇停止並等待,但您可以選擇停止並捨棄。

    • 若要停止而不等待進行中的動作完成,請選擇 Stop and abandon (停止並捨棄)

      警告

      此選項可能會導致工作失敗或工作失序。

  5. (選擇性) 輸入註解。這些註解以及執行狀態會顯示在執行的歷程記錄頁面上。

  6. 選擇 Stop (停止)

    重要

    這個操作無法復原。

  7. 在管道視覺效果中檢視執行狀態,如下所示:

    • 如果您選擇停止並等待,則選取的執行會繼續進行,直到進行中的動作完成為止。

      • 成功橫幅訊息會顯示在主控台的頂端。

      • 在目前階段中,進行中的動作會以 InProgress 狀態繼續進行。當動作正在進行時,管道執行會處於 Stopping 狀態。

        動作完成 (也就是動作失敗或成功) 後,管道執行會變更為 Stopped 狀態,而動作會變更為 FailedSucceeded 狀態。您也可以在執行詳細資訊頁面上檢視動作狀態。您可以在執行歷程記錄頁面或執行詳細資訊頁面上檢視執行狀態。

      • 管道執行會短暫變更為 Stopping 狀態,然後變更為 Stopped 狀態。您可以在執行歷程記錄頁面或執行詳細資訊頁面上檢視執行狀態。

    • 如果您選擇停止並捨棄,則執行不會等待進行中的動作完成。

      • 成功橫幅訊息會顯示在主控台的頂端。

      • 在目前階段中,進行中的動作會變更為 Abandoned 狀態。您也可以在執行詳細資訊頁面上檢視動作狀態。

      • 管道執行會短暫變更為 Stopping 狀態,然後變更為 Stopped 狀態。您可以在執行歷程記錄頁面或執行詳細資訊頁面上檢視執行狀態。

    您可以在執行歷程記錄檢視和詳細歷程記錄檢視中檢視管道執行狀態。

停止輸入執行 (主控台)

您可以使用控制台停止輸入執行。輸入執行是一種管線執行,正在等待進入停用轉換的階段。啟用轉換時,會InProgress繼續進入階段的輸入執行。未進入階段Stopped的輸入執行。

注意

入站執行停止後,無法重試。

如果您沒有看到輸入執行,則在停用的階段轉換中沒有擱置的執行。

  1. 請登入AWS Management Console並開啟 CodePipeline 主控台,網址為 http://console.aws.amazon.com/codesuite/codepipeline/home

    將會顯示所有與您 AWS 帳戶建立關聯的管道名稱。

  2. 選擇您要停止輸入執行的管道名稱,請執行下列其中一個動作:

    • 在「管線」檢視中,選擇輸入執行 ID,然後選擇停止執行。

    • 選擇管線,然後選擇檢視歷史記錄。在執行歷史記錄中,選擇輸入執行 ID,然後選擇停止執行。

  3. 停止執行模式中,請按照上述部分中的步驟選取執行 ID 並指定 stop 方法。

    使用get-pipeline-state命令檢視輸入執行的狀態。

停止管道執行 (CLI)

若要使用 AWS CLI 手動停止管道,請使用 stop-pipeline-execution 命令搭配下列參數:

  • 執行 ID (必要)

  • 註解 (選擇性)

  • 管道名稱 (必要)

  • 捨棄旗標 (選擇性,預設值為 false)

命令格式:

aws codepipeline stop-pipeline-execution --pipeline-name Pipeline_Name –-pipeline-execution-id Execution_ID [--abandon | --no-abandon] [--reason STOP_EXECUTION_REASON]
  1. 開啟終端機 (Linux、macOS 或 Unix) 或命令提示 (Windows)。

  2. 若要停止管道執行,請選擇下列其中一項:

    • 若要確保在所有進行中的動作都完成前,執行不會停止,請選擇停止並等待。您可以納入 no-abandon 參數來完成此操作。如果您未指定參數,則命令會預設為停止並等待。使用 AWS CLI 執行 stop-pipeline-execution 命令,並指定管道名稱和執行 ID。例如,若要以指定的停止並等待選項來停止名為 MyFirstPipeline 的管道:

      aws codepipeline stop-pipeline-execution --pipeline-name MyFirstPipeline --pipeline-execution-id d-EXAMPLE --no-abandon

      例如,若要停止名為 MyFirstPipeline 的管道、預設為停止並等待選項,並選擇包含註解:

      aws codepipeline stop-pipeline-execution --pipeline-name MyFirstPipeline --pipeline-execution-id d-EXAMPLE --reason "Stopping execution after the build action is done"
      注意

      如果執行已處於 Stopping (停止中) 狀態,您就無法選擇停止並等待。您可以選擇停止並捨棄已處於 Stopping (停止中) 狀態的執行。

    • 若要停止而不等待進行中的動作完成,請選擇停止並捨棄。納入 abandon 參數。使用 AWS CLI 執行 stop-pipeline-execution 命令,並指定管道名稱和執行 ID。

      例如,若要停止名為 MyFirstPipeline 的管道、指定捨棄選項,並選擇包含註解:

      aws codepipeline stop-pipeline-execution --pipeline-name MyFirstPipeline --pipeline-execution-id d-EXAMPLE --abandon --reason "Stopping execution for a bug fix"

停止輸入執行 (CLI)

您可以使用 CLI 停止輸入執行。輸入執行是一種管線執行,正在等待進入停用轉換的階段。啟用轉換時,會InProgress繼續進入階段的輸入執行。未進入階段Stopped的輸入執行。

注意

入站執行停止後,無法重試。

如果您沒有看到輸入執行,則在停用的階段轉換中沒有擱置的執行。

若要使用AWS CLI手動停止輸入執行,請使用具有下列參數的stop-pipeline-execution命令:

  • 輸入執行 ID (必要)

  • 註解 (選擇性)

  • 管道名稱 (必要)

  • 捨棄旗標 (選擇性,預設值為 false)

命令格式:

aws codepipeline stop-pipeline-execution --pipeline-name Pipeline_Name –-pipeline-execution-id Inbound_Execution_ID [--abandon | --no-abandon] [--reason STOP_EXECUTION_REASON]

按照上述程序中的步驟輸入命令並指定 stop 方法。

使用get-pipeline-state命令檢視輸入執行的狀態。