翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Amazon S3 ソースの EventBridge ルールを作成する (AWS CloudFormation テンプレート)
AWS CloudFormation を使用してルールを作成するには、次に示すようにテンプレートを更新します。
Amazon S3 をイベントソースおよびターゲット CodePipeline とする EventBridge ルールを作成し、アクセス許可ポリシーを適用するには
-
テンプレートの で
Resources
、AWS::IAM::Role
AWS CloudFormation リソースを使用して、イベントがパイプラインを開始できるようにするIAMロールを設定します。このエントリによって、2 つのポリシーを使用するロールが作成されます。-
最初のポリシーでは、ロールを引き受けることを許可します。
-
2 つめのポリシーでは、パイプラインを開始するアクセス権限が付与されます。
この変更を行う理由
AWS::IAM::Role
リソースを追加する AWS CloudFormation と、 は のアクセス許可を作成できます EventBridge。このリソースは AWS CloudFormation スタックに追加されます。 -
-
AWS::Events::Rule
AWS CloudFormation リソースを使用して EventBridge ルールを追加します。このイベントパターンは、Amazon S3 ソースバケットでのCopyObject
、PutObject
、およびCompleteMultipartUpload
をモニタリングするイベントを作成します。さらに、パイプラインのターゲットも含めます。CopyObject
、PutObject
、またはCompleteMultipartUpload
が発生すると、このルールは、ターゲットパイプラインでStartPipelineExecution
を呼び出します。この変更を行う理由
AWS::Events::Rule
リソースを追加すると、 AWS CloudFormation は イベントを作成できます。このリソースは AWS CloudFormation スタックに追加されます。 -
このスニペットを最初のテンプレートに追加して、クロススタック機能を有効にします。
-
更新されたテンプレートをローカルコンピュータに保存し、 AWS CloudFormation コンソールを開きます。
スタックを選択し、[既存スタックの変更セットの作成] を選択します。
更新されたテンプレートをアップロードし、 AWS CloudFormationに示された変更を表示します。これらがスタックに加えられる変更です。新しいリソースがリストに表示されています。
[実行] を選択します。
パイプラインの PollForSourceChanges パラメータを編集するには
重要
このメソッドを使用してパイプラインを作成すると、PollForSourceChanges
パラメータはデフォルトで true になります (ただし、明示的に false に設定した場合は除きます)。イベントベースの変更検出を追加する場合は、このパラメータを出力に追加する必要があります。ポーリングを無効にするには、このパラメータを false に設定します。そうしないと、1 つのソース変更に対してパイプラインが 2 回起動されます。詳細については、「PollForSourceChanges パラメータの有効な設定」を参照してください。
-
テンプレートで、
PollForSourceChanges
をfalse
に変更します。パイプライン定義にPollForSourceChanges
が含まれていなかった場合は、追加してfalse
に設定します。この変更を行う理由
PollForSourceChanges
パラメータをfalse
に変更すると、定期的チェックがオフになるため、イベントベースの変更検出のみ使用することができます。
Amazon S3 パイプラインのリソース用に 2 番目のテンプレートを作成するには CloudTrail
-
別のテンプレートの で
Resources
、、AWS::S3::Bucket
、およびAWS::CloudTrail::Trail
AWS CloudFormation リソースを使用してAWS::S3::BucketPolicy
、 のシンプルなバケット定義と証跡を提供します CloudTrail。この変更を行う理由 現在の 1 アカウントあたり 5 つの証跡の制限を考慮すると、 CloudTrail 証跡は個別に作成および管理する必要があります。(「 の制限 AWS CloudTrail」を参照してください。) ただし、1 つの証跡に複数の Amazon S3 バケットを含めることができるため、いったん証跡を作成してから、必要に応じて他のパイプライン用に Amazon S3 バケットを追加できます。2 番目のサンプルテンプレートファイルに以下のコードを貼り付けます。