翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
パイプラインのステージは、失敗時に自動的にロールバックするように設定できます。ステージは、失敗すると、最後の成功した実行にロールバックされます。パイプラインは、以前の実行が現在のパイプライン構造バージョンで開始されている場合にのみ、以前の実行にロールバックできます。自動ロールバック設定はパイプライン定義の一部であるため、成功したパイプライン実行がパイプラインステージ内に既に存在する場合にのみ、パイプラインステージが自動ロールバックされます。
ステージの自動ロールバックを設定する (コンソール)
ステージは、指定した以前の成功した実行にロールバックできます。詳細については、「CodePipeline API ガイド」の「RollbackStage」を参照してください。
ステージの自動ロールバックを設定する (コンソール)
にサインイン AWS Management Console し、「https://http://console.aws.amazon.com/codesuite/codepipeline/home
.com」で CodePipeline コンソールを開きます。 AWS アカウントに関連付けられているすべてのパイプラインの名前とステータスが表示されます。
-
[名前] で、編集するパイプラインの名前を選択します。
-
パイプライン詳細ページで、[編集] を選択します。
-
[編集] ページで、編集するアクションに関連する [ステージを編集する] を選択します。
-
[自動ステージ設定]、[ステージ障害時の自動ロールバックを設定] の順に選択します。パイプラインに変更を保存します。
ステージの自動ロールバックを設定する (CLI)
を使用して、最後に成功した実行に自動的にロールバックするように失敗したステージ AWS CLI を設定するには、 コマンドを使用して、 パイプライン、ステージ、アクションを作成するおよび で説明されているようにパイプラインを作成または更新しますCodePipeline でパイプラインを編集する。
-
ターミナル (Linux、macOS、Unix) またはコマンドプロンプト (Windows) を開きます。次に AWS CLI を使用し、パイプライン構造の失敗条件を指定して
update-pipeline
コマンドを実行します。次の例では、S3Deploy
という名前のステージの自動ロールバックを設定します。{ "name": "S3Deploy", "actions": [ { "name": "s3deployaction", "actionTypeId": { "category": "Deploy", "owner": "AWS", "provider": "S3", "version": "1" }, "runOrder": 1, "configuration": { "BucketName": "static-website-bucket", "Extract": "false", "ObjectKey": "SampleApp.zip" }, "outputArtifacts": [], "inputArtifacts": [ { "name": "SourceArtifact" } ], "region": "us-east-1" } ],
"onFailure": { "result": "ROLLBACK"
} }ステージロールバックの失敗条件の設定の詳細については、「CodePipeline API リファレンス」の「FailureConditions」を参照してください。
ステージの自動ロールバックを設定する (AWS CloudFormation)
AWS CloudFormation を使用して、障害時に自動的にロールバックするようにステージを設定するには、 OnFailure
パラメータを使用します。失敗すると、ステージは自動的に最新の成功した実行にロールバックされます。
OnFailure:
Result: ROLLBACK
-
次のスニペットに示すように、テンプレートを更新します。次の例では、
Release
という名前のステージの自動ロールバックを設定します。AppPipeline: Type: AWS::CodePipeline::Pipeline Properties: RoleArn: Ref: CodePipelineServiceRole Stages: - Name: Source Actions: - Name: SourceAction ActionTypeId: Category: Source Owner: AWS Version: 1 Provider: S3 OutputArtifacts: - Name: SourceOutput Configuration: S3Bucket: Ref: SourceS3Bucket S3ObjectKey: Ref: SourceS3ObjectKey RunOrder: 1 - Name: Release Actions: - Name: ReleaseAction InputArtifacts: - Name: SourceOutput ActionTypeId: Category: Deploy Owner: AWS Version: 1 Provider: CodeDeploy Configuration: ApplicationName: Ref: ApplicationName DeploymentGroupName: Ref: DeploymentGroupName RunOrder: 1 OnFailure: Result: ROLLBACK ArtifactStore: Type: S3 Location: Ref: ArtifactStoreS3Location EncryptionKey: Id: arn:aws:kms:useast-1:ACCOUNT-ID:key/KEY-ID Type: KMS DisableInboundStageTransitions: - StageName: Release Reason: "Disabling the transition until integration tests are completed" Tags: - Key: Project Value: ProjectA - Key: IsContainerBased Value: 'true'
ステージロールバックの失敗条件の設定の詳細については、「AWS CloudFormation ユーザーガイド」で「
StageDeclaration
」の「OnFailure」を参照してください。