入力および出力アーティファクト - AWS CodePipeline

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

入力および出力アーティファクト

CodePipeline は、 開発ツールと統合してコードの変更をチェックし、継続的デリバリープロセスのすべての段階で構築およびデプロイします。アーティファクトは、パイプライン内のアクションによって処理されるファイルであり、アプリケーションコードが含まれるファイルやフォルダ、インデックスページファイル、スクリプトなどが該当します。例えば、Amazon S3 ソースアクションアーティファクトは、パイプラインソースアクション用にアプリケーションのソースコードファイルが提供されるファイル名 (またはファイルパス) であり、ファイルは一般的に ZIP ファイルとして提供されます。例えば、アーティファクト名: SampleApp_Windows.zip の例です。ソースアクションの出力アーティファクトであるアプリケーションソースコードファイルは、ソースアクションからの出力アーティファクトであり、ビルドアクションなどの次のアクションの入力アーティファクトでもあります。別の例として、ビルドアクションでは、ソースアクションからのアプリケーションソースコードファイル (入力アーティファクト) に対して、アプリケーションソースコードをコンパイルするビルドコマンドを実行する場合があります。アクションの など、アーティファクトパラメータの詳細については、特定のアクションAWS CodeBuildの CodeBuild アクション設定リファレンスページを参照してください。

アクションは、pipeline. CodePipeline zips の作成時に選択した Amazon S3 アーティファクトバケットに保存されている入力アーティファクトと出力アーティファクトを使用し、ステージのアクションタイプに応じて入力アーティファクトまたは出力アーティファクトのファイルを転送します。

注記

アーティファクトバケットは、ソースアクションとして S3 が選択されているパイプラインのソースファイルの場所として使用されるバケットとは異なります。

例:

  1. CodePipeline は、ソースリポジトリへのコミットがあるときにパイプラインを実行するようにトリガーし、ソースステージからの出力アーティファクト (構築されるファイル) を提供します。

  2. 前のステップの出力アーティファクト (ビルドする任意のファイル) は、ビルドステージに入力アーティファクトとして取り込まれます。ビルドステージからの出力アーティファクト (ビルドされたアプリケーション) は、更新されたアプリケーションまたは更新された Docker イメージ (コンテナへのビルド済み) である場合があります。

  3. 前のステップの出力アーティファクト (ビルドされたアプリケーション) は、デプロイステージ ( AWS クラウドのステージング環境や本稼働環境など) に入力アーティファクトとして取り込まれます。アプリケーションをデプロイのフリートにデプロイすることも、ECS クラスターで実行するタスクにコンテナベースのアプリケーションをデプロイすることもできます。

アクションを作成または編集するときは、アクションの入力および出力アーティファクトを指定します。例えば、ソースステージとデプロイステージを含む 2 ステージのパイプラインに対し、[アクションの編集] で、デプロイアクションの入力アーティファクトに対するソースアクションのアーティファクト名を選択します。

  • コンソールを使用して最初のパイプラインを作成すると、 は同じ AWS アカウント と に Amazon S3 バケット CodePipeline を作成し AWS リージョン 、すべてのパイプラインの項目を保存します。コンソールを使用してそのリージョンに別のパイプラインを作成するたびに、 はそのパイプラインのフォルダをバケットに CodePipeline 作成します。このフォルダを使用して、自動リリースプロセスの実行時にパイプラインのアイテムを格納します。このバケットの名前は codepipeline-region -12345EXAMPLEです。ここで、region はパイプラインを作成した AWS リージョンで、12345EXAMPLE はバケット名が一意であることを保証する 12 桁の乱数です。

    注記

    パイプラインを作成するリージョンに codepipeline-region で始まるバケットが既にある場合、 は CodePipeline それをデフォルトのバケットとして使用します。また、辞書式順序に従います。例えば、codepipeline-region-abcexample は、codepipeline-region-defexample の前に選択されます。

    CodePipeline はアーティファクト名を切り捨てます。これにより、一部のバケット名が類似しているように表示される可能性があります。アーティファクト名が切り捨てられているように見えても、 は切り捨てられた名前のアーティファクトの影響を受けない方法でアーティファクトバケットに CodePipeline マッピングします。パイプラインは正常に動作します。これは、フォルダやアーティファクトでは問題となりません。パイプライン名には 100 文字の制限があります。アーティファクトフォルダ名は、短縮されたように見えても、パイプラインに対して依然として一意です。

    パイプラインを作成または編集するときは、パイプライン AWS アカウント と にアーティファクトバケットが必要です。また AWS リージョン、アクションを実行する予定のリージョンごとに 1 つのアーティファクトバケットが必要です。コンソールを使用してパイプラインまたはクロスリージョンアクションを作成する場合、デフォルトのアーティファクトバケットは、アクションがあるリージョン CodePipeline で によって設定されます。

    を使用してパイプライン AWS CLI を作成する場合、そのバケットがパイプラインと同じ AWS アカウント と にある限り、その AWS リージョン パイプラインのアーティファクトを任意の Amazon S3 バケットに保存できます。アカウントに許可されている Amazon S3 バケットの制限を超えることが懸念される場合は、これを行うことができます。を使用してパイプライン AWS CLI を作成または編集し、クロスリージョンアクション (パイプラインとは異なるリージョンの AWS プロバイダーとのアクション) を追加する場合は、アクションを実行する予定の追加のリージョンごとにアーティファクトバケットを指定する必要があります。

  • すべてのアクションには種類があります。種類に応じて、アクションは次のいずれかまたは両方を持つ場合があります。

    • アクションが実行されている間に消費または動作するアーティファクトである入力アーティファクト。

    • アクションの出力である出力アーティファクト。

    パイプラインの各出力アーティファクトには一意の名前が必要です。アクションのすべての入力アーティファクトは、そのアクションがステージのアクションの直前であるか、あるいはいくつか前のステージで実行されているかどうかにかかわらず、パイプラインの以前のアクションの出力アーティファクトと一致していなければなりません。

    アーティファクトは、複数のアクションによって処理することができます。