Amazon S3 ソースアクションリファレンス - AWS CodePipeline

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Amazon S3 ソースアクションリファレンス

新しいオブジェクトが、設定されたバケットとオブジェクトキーにアップロードされたときに、パイプラインをトリガーします。

注記

このリファレンストピックでは、CodePipeline の Amazon S3 ソースアクションについて説明します。ソース場所は、バージョニング用に設定された Amazon S3 バケットです。CodePipeline での Amazon S3 デプロイアクションのリファレンス情報については、「Amazon S3 デプロイアクションリファレンス」を参照してください。

Amazon S3 バケットを作成して、アプリケーションファイルのソース場所として使用できます。

注記

ソースバケットを作成するときは、バケットでバージョニングを有効にしてください。既存の Amazon S3 バケットを使用する場合は、「バージョニングの使用」を参照して、既存のバケットでバージョニングを有効にします。

コンソールを使用してパイプラインを作成または編集する場合、CodePipeline は S3 ソースバケットに変更が発生したときにパイプラインを開始する EventBridge ルールを作成します。

注記

Amazon ECR、Amazon S3、または CodeCommit ソースの場合、入力変換エントリを使用してソースオーバーライドを作成し、パイプラインイベントの EventBridge revisionValueで を使用することもできます。ここで、 revisionValueはオブジェクトキー、コミット、またはイメージ ID のソースイベント変数から派生します。詳細については、、Amazon ECR ソースアクションと EventBridge リソースイベントに対してソースを有効にした Amazon S3 ソースアクションへの接続または の手順に含まれる入力変換エントリのオプションステップを参照してくださいCodeCommit ソースアクションと EventBridge

Amazon S3 アクションを使用してパイプラインを接続する前に、Amazon S3 ソースバケットを作成し、ソースファイルを 1 つの ZIP ファイルとしてアップロードしておく必要があります。

注記

Amazon S3 がパイプラインのソースプロバイダーである場合、ソースファイルを 1 つの .zip に圧縮し、その .zip をソースバケットにアップロードできます。解凍されたファイルを 1 つアップロードすることもできます。ただし、.zip ファイルを想定するダウンストリームアクションは失敗します。

アクションタイプ

  • カテゴリ:Source

  • 所有者: AWS

  • プロバイダー: S3

  • バージョン: 1

設定パラメータ

S3 バケット

必須: はい

ソースの変更が検出される Amazon S3 バケットの名前。

S3ObjectKey

必須: はい

ソースの変更が検出される Amazon S3 オブジェクトキーの名前。

AllowOverrideForS3ObjectKey

必須: いいえ

AllowOverrideForS3ObjectKey は、StartPipelineExecution からのソースの上書きにより、ソースアクションに設定済みの S3ObjectKey を上書きできるかどうかを制御します。S3 オブジェクトキーを使用したソースの上書きの詳細については、「ソースリビジョンオーバーライドでパイプラインを開始する」を参照してください。

重要

AllowOverrideForS3ObjectKey を省略すると、CodePipeline は、このパラメータを false に設定して、ソースアクションで S3 オブジェクトキーを上書きできないようにします。

このパラメータの有効な値:

  • true: 設定すると、事前設定済みの S3 オブジェクトキーは、パイプラインの実行中にソースリビジョンの上書きによって上書きされる場合があります。

    注記

    新しいパイプラインの実行開始時に、事前設定済みの S3 オブジェクトキーを上書きすることをすべての CodePipeline ユーザーに許可する場合は、AllowOverrideForS3ObjectKeytrue に設定する必要があります。

  • false:

    設定すると、CodePipeline は、ソースリビジョンの上書きを使用して S3 オブジェクトキーを上書きすることを許可しません。これは、このパラメータのデフォルト値でもあります。

PollForSourceChanges

必須: いいえ

PollForSourceChanges は、ソースの変更について CodePipeline が Amazon S3 ソースバケットをポーリングするかどうかを制御します。代わりに CloudWatch Events と CloudTrail を使用してソースの変更を検出することをお勧めします。CloudWatch Events の設定についての詳細は、「S3 ソースと CloudTrail 証跡を使用してポーリングパイプラインを移行する (CLI)」または「S3 ソースと CloudTrail 証跡 (AWS CloudFormation テンプレート) を使用してポーリングパイプラインを移行する」を参照してください。

重要

CloudWatch Events ルールを設定する場合、パイプラインの重複実行を避けるために PollForSourceChangesfalse に設定する必要があります。

このパラメータの有効な値:

  • true: 設定されている場合、CodePipeline はソースの変更についてソースの場所をポーリングします。

    注記

    PollForSourceChanges を省略すると、 CodePipeline はソースの変更についてデフォルトでソースの場所をポーリングします。この動作は、PollForSourceChanges が含まれており、true に設定されている場合と同じです。

  • false: 設定されている場合、CodePipeline はソースの変更についてソースの場所をポーリングしません。CloudWatch Events ルールを設定してソース変更を検出する場合は、この設定を使用します。

入力アーティファクト

  • アーティファクトの数: 0

  • 説明: 入力アーティファクトは、このアクションタイプには適用されません。

出力アーティファクト

  • アーティファクトの数: 1

  • 説明: パイプラインに接続するように設定されたソースバケットで使用可能なアーティファクトを提供します。バケットから生成されたアーティファクトは、Amazon S3 アクションの出力アーティファクトです。Amazon S3 オブジェクトメタデータ (ETag とバージョン ID) が、トリガーされたパイプライン実行のソースリビジョンとして CodePipeline で表示されます。

出力変数

このアクションを設定すると、パイプライン内のダウンストリームアクションのアクション設定によって参照できる変数が生成されます。このアクションは、アクションに名前空間がない場合でも、出力変数として表示できる変数を生成します。名前空間を使用してアクションを設定し、これらの変数をダウンストリームアクションの設定で使用できるようにします。

CodePipeline における変数の詳細については、変数リファレンス を参照してください。

BucketName

パイプラインをトリガーしたソース変更に関連する Amazon S3 バケットの名前。

ETag

パイプラインをトリガーしたソース変更に関連するオブジェクトのエンティティタグ。ETag は、オブジェクトの MD5 ハッシュです。ETag は、オブジェクトのコンテンツに加えた変更のみを反映し、メタデータに加えた変更は反映しません。

ObjectKey

パイプラインをトリガーしたソース変更に関連する Amazon S3 オブジェクトキーの名前。

VersionId

パイプラインをトリガーしたソース変更に関連するオブジェクトのバージョンのバージョン ID。

アクションの宣言

YAML
Name: Source Actions: - RunOrder: 1 OutputArtifacts: - Name: SourceArtifact ActionTypeId: Provider: S3 Owner: AWS Version: '1' Category: Source Region: us-west-2 Name: Source Configuration: S3Bucket: amzn-s3-demo-source-bucket S3ObjectKey: my-application.zip PollForSourceChanges: 'false' InputArtifacts: []
JSON
{ "Name": "Source", "Actions": [ { "RunOrder": 1, "OutputArtifacts": [ { "Name": "SourceArtifact" } ], "ActionTypeId": { "Provider": "S3", "Owner": "AWS", "Version": "1", "Category": "Source" }, "Region": "us-west-2", "Name": "Source", "Configuration": { "S3Bucket": "amzn-s3-demo-source-bucket", "S3ObjectKey": "my-application.zip", "PollForSourceChanges": "false" }, "InputArtifacts": [] } ] },

このアクションを利用する際に役立つ関連リソースは以下の通りです。

  • チュートリアル: シンプルなパイプラインを作成する (S3 バケット) - このチュートリアルでは、サンプルアプリケーション仕様ファイル、サンプル CodeDeploy アプリケーションおよびデプロイグループを提供します。このチュートリアルを参照して、Amazon EC 2 インスタンスにデプロイする Amazon S3 ソースを持つパイプラインを作成します。