狀態機版本 - AWS Step Functions

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

狀態機版本

版本是狀態機器的編號、不可變的快照集。您可以從對該狀態機器進行的最新修訂版本中發佈版本。每個版本都有一個唯一的 Amazon 資源名稱(ARN)。此 ARN 是狀態機 ARN 和版本號以冒號 (:) 分隔的組合。下列範例顯示狀態機器版本 ARN 的格式。

arn:partition:states:region:account-id:stateMachine:myStateMachine:1

若要開始使用狀態機版本,您必須發佈第一個版本。發佈版本後,您可以使用 ARN 版本叫用 StartExecutionAPI 動作。您無法編輯版本,但可以更新狀態機器並發佈新版本。您也可以發佈多個版本的狀態機器。


            狀態機定義的版本。當您更新狀態機時,它會建立新的狀態機器修訂版本。您可以從修訂版發佈狀態機器版本。

當您發佈狀態機器的新版本時,Step Functions 會為其指派版本號碼。版本號碼從 1 開始,每個新版本都會單調增加。版本號不會重複用於給定的狀態機器。如果您刪除狀態機器的版本 10,然後發佈新版本,Step Functions 會將其發佈為版本 11。

對於狀態機的所有版本,以下屬性都相同:

  • 狀態機的所有版本都共用相同類型 (標準或快速)

  • 您無法在版本之間變更狀態機器的名稱或建立日期。

  • 標籤會全域套用至狀態機器。您可以使用TagResourceUntagResourceAPI 動作管理狀態機器的標籤。

狀態機器也包含屬於每個版本和的屬性revision,但這些屬性在兩個指定版本或修訂之間可能會有所不同。這些內容包括狀態機器定義IAM 角色追蹤組態記錄組態

發佈狀態機器版本 (主控台)

您最多可以發佈 1000 個版本的狀態機器。若要要求提高此軟限制,請使用中的「Sup port 中心」頁面AWS Management Console。您可以從控制台手動刪除未使用的版本,也可以通過調用 DeleteStateMachineVersionAPI 操作來手動刪除。

發佈狀態機器版本的步驟
  1. 開啟 Step Functions 主控台,然後選擇現有的狀態機器。

  2. 狀態機器詳細資料頁面上,選擇編輯

  3. 視需要編輯狀態機定義,然後選擇 [儲存]。

  4. 選擇 Publish version (發佈版本)

  5. (選擇性) 在顯示之對話方塊的「描述」欄位中,輸入有關狀態機器版本的簡短說明。

  6. 選擇 Publish (發佈)。

注意

當您發佈狀態機器的新版本時,Step Functions 會為其指派版本號碼。版本號碼從 1 開始,每個新版本都會單調增加。版本號不會重複用於給定的狀態機器。如果您刪除狀態機器的版本 10,然後發佈新版本,Step Functions 會將其發佈為版本 11。

使用 Step Functions API 作業管理版本

Step Functions 提供下列 API 作業來發佈和管理狀態機版本:

若要從名為的狀態機器的目前版本中發佈新版本 AWS Command Line Interface,請myStateMachine使用以下publish-state-machine-version指令:

aws stepfunctions publish-state-machine-version --state-machine-arn arn:aws:states:us-east-1:123456789012:stateMachine:myStateMachine

回應會傳回 stateMachineVersionArn。例如,上一個指令會傳回的回應arn:aws:states:us-east-1:123456789012:stateMachine:myStateMachine:1

注意

當您發佈狀態機器的新版本時,Step Functions 會為其指派版本號碼。版本號碼從 1 開始,每個新版本都會單調增加。版本號不會重複用於給定的狀態機器。如果您刪除狀態機器的版本 10,然後發佈新版本,Step Functions 會將其發佈為版本 11。

從主控台執行狀態機器版本

若要開始使用狀態機版本,您必須先從目前狀態機器發佈版本revision。若要發佈版本,請使用「Step Functions」主控台或叫用 PublishStateMachineVersionAPI 動作。您也可以使用名為的選用參數叫用 UpdateStateMachineAliasAPI 動作,publish以更新狀態機器並發佈其版本。

您可以使用主控台或叫用 StartExecutionAPI 動作並提供版本 ARN 來啟動版本的執行。您也可以使用別名來啟動版本的執行。根據其路由組態,別名會將流量路由至特定版本。

如果您在不使用版本的情況下啟動狀態機器執行,則 Step Functions 會使用狀態機器的最新修訂版本來執行。如需有關「Step Functions 式」如何將執行與版本相關聯的資訊,請參閱將執行與版本或別名相關聯

若要使用狀態機版本開始執行
  1. 開啟 Step Functions 主控台,然後選擇您已針對其發佈一或多個版本的現有狀態機器。若要瞭解如何發佈版本,請參閱發佈狀態機器版本 (主控台)

  2. 狀態機器詳細資料頁面上,選擇本索引標籤。

  3. 在「本」區段中,執行下列操作:

    1. 選取您要開始執行的版本。

    2. 選擇 Start execution (開始執行)

  4. (選擇性) 在 [開始執行] 對話方塊中,輸入執行項目的名稱。

  5. (選擇性),輸入執行輸入,然後選擇 [開始執行]。