CodePipeline アクションタイプとの統合 - AWS CodePipeline

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

CodePipeline アクションタイプとの統合

このトピックの統合情報は、CodePipeline アクションの種類によって編成されます。

ソースアクションの統合

以下の情報は CodePipeline アクションの種類別に整理されていますので、CodePipeline を設定して以下のソースアクションプロバイダーとの統合に役立ちます。

Amazon ECR ソースアクション

Amazon ECR は Docker AWS イメージリポジトリサービスです。Docker イメージをリポジトリにアップロードするには、Docker のプッシュコマンドおよびプルコマンドを使用します。Amazon ECR リポジトリの URI とイメージは、ソースイメージ情報参照のために Amazon ECS タスク定義で使用されます。

詳細はこちら:

Amazon S3 ソースアクション

Amazon S3 はインターネット用のストレージサービスです。Simple Storage Service (Amazon S3) を使用すると、いつでもウェブ上の任意の場所から任意の量のデータを保存および取得できます。バージョン管理された Amazon S3 バケットをコードのソースアクションとして使用するように CodePipeline を設定できます。

注記

Amazon S3 は、デプロイアクションとしてパイプラインに含めることもできます。

詳細はこちら:

Bitbucket Cloud、GitHub (GitHub アプリ経由)、GitHub Enterprise Server、GitLab.com,GitLab セルフマネージドへの接続

接続 (CodeStarSourceConnection アクション) は、サードパーティーの Bitbucket Cloud、GitHub、GitHub Enterprise Server、GitLab.com、または GitLab セルフマネージドリポジトリへのアクセスに使用されます。

注記

この機能は、アジアパシフィック (香港)、アジアパシフィック (ハイデラバード)、アジアパシフィック (ジャカルタ)、アジアパシフィック (メルボルン)、アジアパシフィック (大阪)、アフリカ (ケープタウン)、中東 (バーレーン)、中東 (アラブ首長国連邦)、欧州 (スペイン)、欧州 (チューリッヒ)、イスラエル (テルアビブ)、または AWS GovCloud (米国西部) の各リージョンでは使用できません。利用可能なその他のアクションについては、「CodePipeline との製品とサービスの統合」を参照してください。欧州 (ミラノ) リージョンでのこのアクションに関する考慮事項については、「CodeStarSourceConnection (Bitbucket Cloud、GitHub、GitHub Enterprise Server、GitLab.com、および GitLab セルフマネージドアクションの場合)」の注意を参照してください。

Bitbucket Cloud

Bitbucket Cloud リポジトリをソースとして使用するように CodePipeline を設定することができます。これ以前に Bitbucket アカウントと少なくとも 1 つの Bitbucket Cloud リポジトリを作成しておく必要があります。Bitbucket Cloud リポジトリのソースアクションを追加するには、新しいパイプラインを作成するか、既存のパイプラインを編集します。

注記

Bitbucket Cloudリポジトリへの接続を作成できます。Bitbucket サーバーなど、インストールされている Bitbucket プロバイダーのタイプはサポートされていません。

パイプラインがサードパーティーのコードリポジトリにアクセスできるように、接続と呼ばれるリソースを設定できます。接続を作成する場合、コネクタアプリをサードパーティのコードリポジトリと共にインストールし、接続に関連付けます。

Bitbucket Cloud の場合は、コンソールの [Bitbucket] オプションまたは CLI の CodestarSourceConnection アクションを使用します。「Bitbucket Cloud への接続」を参照してください。

この 完全クローン作成 アクションのオプションを使用して、リポジトリの Git メタデータを参照して、ダウンストリームのアクションで Git コマンドを直接実行できるようにします。このオプションは、CodeBuild ダウンストリームアクションでのみ使用できます。

詳細はこちら:

GitHub または GitHub Enterprise Cloud

GitHub のリポジトリをソースとして使用するように CodePipeline を設定することができます。これ以前に GitHub アカウントと少なくとも 1 つの GitHub リポジトリを作成しておく必要があります。GitHub リポジトリのソースアクションを追加するには、新しいパイプラインを作成するか、既存のパイプラインを編集します。

パイプラインがサードパーティーのコードリポジトリにアクセスできるように、接続と呼ばれるリソースを設定できます。接続を作成する場合、コネクタアプリをサードパーティのコードリポジトリと共にインストールし、接続に関連付けます。

コンソールの GitHub (GitHub アプリ経由) プロバイダーオプションまたは CLI の CodestarSourceConnectionアクションを使用します。「GitHub コネクション」を参照してください。

この 完全クローン作成 アクションのオプションを使用して、リポジトリの Git メタデータを参照して、ダウンストリームのアクションで Git コマンドを直接実行できるようにします。このオプションは、CodeBuild ダウンストリームアクションでのみ使用できます。

詳細はこちら:

GitHub Enterprise Server

コードのソースとして GitHub Enterprise Server リポジトリを使用するように CodePipeline を設定できます。これ以前に GitHub アカウントと少なくとも 1 つの GitHub リポジトリを作成しておく必要があります。GitHub Enterprise Server リポジトリのソースアクションを追加するには、新しいパイプラインを作成するか、既存のパイプラインを編集します。

パイプラインがサードパーティーのコードリポジトリにアクセスできるように、接続と呼ばれるリソースを設定できます。接続を作成する場合、コネクタアプリをサードパーティのコードリポジトリと共にインストールし、接続に関連付けます。

コンソールまたは CLI 内の CodestarSourceConnection アクションの にある GitHub (EnterpriseServer) プロバイダオプションを使用します。「GitHub Enterprise Server 接続」を参照してください。

この 完全クローン作成 アクションのオプションを使用して、リポジトリの Git メタデータを参照して、ダウンストリームのアクションで Git コマンドを直接実行できるようにします。このオプションは、CodeBuild ダウンストリームアクションでのみ使用できます。

詳細はこちら:

GitLab.com

GitLab.com リポジトリをソースとして使用するように CodePipeline を設定することができます。これ以前に GitLab.com アカウントと少なくとも 1 つの GitLab.com リポジトリを作成しておく必要があります。GitLab.com リポジトリのソースアクションを追加するには、新しいパイプラインを作成するか、既存のパイプラインを編集します。

コンソールの GitLab プロバイダーオプション、または CLI の CodestarSourceConnection アクションとGitLab プロバイダーを使用します。「GitLab.com への接続」を参照してください。

詳細はこちら:

GitLab セルフマネージド

GitLab セルフマネージドインストールをコードのソースとして使用するように CodePipeline を設定することができます。以前に GitLab アカウントを作成し、セルフマネージド GitLab (エンタープライズエディションまたはコミュニティエディション) のサブスクリプションを持っている必要があります。新しいパイプラインを作成するか、既存のパイプラインを編集することによって、GitLab セルフマネージドリポジトリのソースアクションを追加できます。

パイプラインがサードパーティーのコードリポジトリにアクセスできるように、接続と呼ばれるリソースを設定できます。接続を作成する場合、コネクタアプリをサードパーティのコードリポジトリと共にインストールし、接続に関連付けます。

コンソールまたは CLI 内の CodestarSourceConnection アクションにある GitHub セルフマネージドプロバイダーオプションを使用します。「GitLab セルフマネージドの接続」を参照してください。

この 完全クローン作成 アクションのオプションを使用して、リポジトリの Git メタデータを参照して、ダウンストリームのアクションで Git コマンドを直接実行できるようにします。このオプションは、CodeBuild ダウンストリームアクションでのみ使用できます。

詳細はこちら:

CodeCommit ソースアクション

CodeCommit は、クラウド内のアセット (ドキュメント、ソースコード、バイナリファイルなど) を非公開で保存および管理するために使用できるバージョン管理サービスです。コードのソースとして CodeCommit リポジトリ内のブランチを使用するように、CodePipeline を設定できます。リポジトリを作成し、ローカルマシン上の作業ディレクトリに関連付けます。次に、ステージのソースアクションの一部としてブランチを使用するパイプラインを作成できます。CodeCommit リポジトリに接続するには、新しいパイプラインを作成するか、既存のパイプラインを編集します。

この 完全クローン作成 アクションのオプションを使用して、リポジトリの Git メタデータを参照して、ダウンストリームのアクションで Git コマンドを直接実行できるようにします。このオプションは、CodeBuild ダウンストリームアクションでのみ使用できます。

詳細はこちら:

GitHub (OAuth アプリ経由) ソースアクション

GitHub (OAuth アプリ経由) アクションは、OAuth Apps で管理されるバージョン 1 の GitHub アクションです。サービス利用可能地域では、GitHub アプリで GitHub ソースアクションを管理するパイプライン内で CodeStarSourceConnection (Bitbucket Cloud、GitHub、GitHub Enterprise Server、GitLab.com、および GitLab セルフマネージドアクションの場合) ソースアクションを使用できます。GitHub (OAuth アプリ経由) アクションを使用するパイプラインがある場合は、 で GitHub (GitHub アプリ経由) アクションを使用するように更新するステップを参照してくださいGitHub (OAuth アプリ経由) ソースアクションを GitHub (GitHub アプリ経由) ソースアクションに更新する

注記

GitHub (OAuth アプリ経由) アクションを使用することはお勧めしませんが、GitHub (OAuth アプリ経由) アクションを持つ既存のパイプラインは、影響なしに引き続き機能します。

詳細はこちら:

ビルドアクションの統合

以下の情報は CodePipeline アクションの種類別に整理されていますので、CodePipeline を設定して以下のビルドアクションプロバイダーとの統合に役立ちます。

CodeBuild ビルドアクション

CodeBuild は完全マネージド型の構築サービスです。ソースコードのコンパイル、ユニットテストの実行、すぐにデプロイできるアーティファクトの生成を行います。

CodeBuild を、ビルドアクションとしてパイプラインのビルドステージに追加できます。詳細情報は、AWS CodeBuild ビルドおよびテストアクションリファレンス の CodePipeline アクション設定リファレンスを参照してください。

注記

CodeBuild は、ビルド出力の有無にかかわらず、テストアクションとしてパイプラインに含めることもできます。

詳細はこちら:

CloudBees ビルドアクション

CodePipeline を設定し、CloudBees を使用して、パイプラインの 1 つ以上のアクションでコードをビルドまたはテストできます。

詳細はこちら:

Amazon ECR のビルドアクションとパブリッシュアクション

Amazon ECR は Docker AWS イメージリポジトリサービスです。Docker イメージをリポジトリにアップロードするには、Docker のプッシュコマンドおよびプルコマンドを使用します。

パイプラインに ECRBuildAndPublishアクションを追加して、イメージの構築とプッシュを自動化できます。詳細については、 の CodePipeline Action 設定リファレンスを参照してくださいECRBuildAndPublish ビルドアクションリファレンス

Jenkins ビルドアクション

CodePipeline を設定し、Jenkins CI を使用して、パイプラインの 1 つ以上のアクションでコードを作成またはテストできます。これ以前に Jenkins プロジェクトを作成し、そのプロジェクト用に CodePipeline プラグインをインストールして設定しておく必要があります。Jenkins プロジェクトに接続するには、新しいパイプラインを作成するか、既存のパイプラインを編集します。

Jenkins のアクセスは、プロジェクトベースで設定されます。CodePipeline で使用する Jenkins インスタンスには、CodePipeline Plugin for Jenkins をインストールする必要があります。また、Jenkins プロジェクトへの CodePipeline のアクセスを設定する必要があります。HTTPS/SSL 接続のみを受け入れるように設定して、Jenkins プロジェクトを安全に保護します。Jenkins プロジェクトが Amazon EC2 インスタンスにインストールされている場合は、各インスタンス AWS CLI に をインストールして AWS 認証情報を提供することを検討してください。次に、接続に使用する認証情報を使用して、それらのインスタンスで AWS プロファイルを設定します。これは、Jenkins ウェブインターフェイスを介した追加と保存の代替手段です。

詳細はこちら:

TeamCity ビルドアクション

CodePipeline を設定し、TeamCity を使用して、パイプラインの 1 つ以上のアクションでコードを作成またはテストできます。

詳細はこちら:

テストアクションの統合

以下の情報は CodePipeline アクションの種類別に整理されていますので、CodePipeline を設定して以下のビルドアクションプロバイダーとの統合に役立ちます。

CodeBuild またはテストアクション

CodeBuild とは、クラウド上のフルマネージドビルドサービスです。CodeBuild はソースコードをコンパイルし、単体テストを実行して、すぐにデプロイできるアーティファクトを生成します。

テストアクションとしてパイプラインに CodeBuild を追加できます。詳細情報は、AWS CodeBuild ビルドおよびテストアクションリファレンス の CodePipeline アクション設定リファレンスを参照してください。

注記

CodeBuild は、必須ビルド出力アーティファクトを持つビルドアクションとしてパイプラインに含めることもできます。

詳細はこちら:

AWS Device Farm テストアクション

AWS Device Farm は、実際に電話やタブレットで、Android や iOS、およびウェブアプリを物理的にテストしてやり取りできるアプリテストサービスです。を使用して、パイプラインの 1 つ以上のアクションでコードをテスト AWS Device Farm するように CodePipeline を設定できます。 AWS Device Farm では、独自のテストをアップロードしたり、組み込みのスクリプトフリーの互換性テストを使用したりできます。テストは並列実行されるため、テストは複数のデバイスで数分のうちに開始されます。高レベルの結果、低レベルのログ、pixel-to-pixelスクリーンショット、パフォーマンスデータを含むテストレポートは、テストが完了すると更新されます。 は、PhoneGap、Titanium、Xamarin、Unity、およびその他のフレームワークで作成されたものを含む、ネイティブおよびハイブリッドの Android、iOS、および Fire OS アプリケーションのテスト AWS Device Farm をサポートします。Android アプリのリモートアクセスをサポートしているため、テストデバイスと直接やり取りすることができます。

詳細はこちら:

Ghost Inspector テストアクション

CodePipeline を設定し、Ghost Inspector を使用して、パイプラインの 1 つ以上のアクションでコードをテストできます。

詳細はこちら:

OpenText LoadRunner Cloud テストアクション

パイプラインの 1 つ以上のアクションで OpenText LoadRunner Cloud を使用するように CodePipeline を設定できます。

詳細はこちら:

デプロイアクションの統合

以下の情報は CodePipeline アクションの種類別に整理されていますので、CodePipeline を設定して以下のデプロイアクションプロバイダーとの統合に役立ちます。

Amazon S3 デプロイアクション

Amazon S3 はインターネット用のストレージサービスです。Simple Storage Service (Amazon S3) を使用すると、いつでもウェブ上の任意の場所から任意の量のデータを保存および取得できます。デプロイプロバイダーとして Amazon S3 を使用するパイプラインにアクションを追加できます。

注記

ソースアクションとして Amazon S3 をパイプラインに含めることもできます。

詳細はこちら:

AWS AppConfig デプロイアクション

AWS AppConfig は、アプリケーション設定を作成、管理、迅速にデプロイ AWS Systems Manager する の機能です。AppConfig は、EC2 インスタンス、コンテナ AWS Lambda、モバイルアプリケーション、または IoT デバイスでホストされているアプリケーションで使用できます。

詳細はこちら:

AWS CloudFormation デプロイアクション

AWS CloudFormation を使用すると、開発者やシステム管理者は、 テンプレートを使用して関連 AWS リソースのコレクションを簡単に作成および管理し、それらのリソースをプロビジョニングおよび更新できます。サービスのサンプルテンプレートを使用することも、独自のテンプレートを作成することもできます。テンプレートは、アプリケーションの実行に必要な AWS リソースと依存関係またはランタイムパラメータを記述します。

AWS サーバーレスアプリケーションモデル (AWS SAM) は を拡張 AWS CloudFormation して、サーバーレスアプリケーションを定義およびデプロイするための簡単な方法を提供します。 AWS SAM は、Amazon API Gateway APIs、 AWS Lambda 関数、および Amazon DynamoDB テーブルをサポートしています。CodePipeline を および SAM AWS とともに AWS CloudFormation 使用して、サーバーレスアプリケーションを継続的に配信できます。

デプロイプロバイダー AWS CloudFormation として を使用するパイプラインにアクションを追加できます。をデプロイプロバイダー AWS CloudFormation として使用すると、パイプラインの実行の一部として AWS CloudFormation スタックと変更セットに対してアクションを実行できます。 は、パイプラインの実行時にスタックと変更セットを作成、更新、置換、削除 AWS CloudFormation できます。その結果、 AWS CloudFormation テンプレート AWS とパラメータ定義で指定した仕様に従って、パイプラインの実行中にカスタムリソースを作成、プロビジョニング、更新、終了できます。

詳細はこちら:

AWS CloudFormation StackSets デプロイアクション

AWS CloudFormation を使用すると、複数のアカウントと AWS リージョンにリソースをデプロイできます。

で CodePipeline を使用して AWS CloudFormation 、スタックセット定義を更新し、インスタンスに更新をデプロイできます。

パイプラインに次のアクションを追加して、 AWS CloudFormation StackSets をデプロイプロバイダーとして使用できます。

  • CloudFormations スタックセット

  • CloudFormations スタックインスタンス

詳細はこちら:

Amazon ECS デプロイアクション

Amazon ECS は、スケーラビリティに優れた高性能なコンテナ管理サービスであり、 AWS クラウドでコンテナベースのアプリケーションを実行することができます。パイプラインを作成すると、デプロイプロバイダとして Amazon ECS を選択できます。ソースコントロールリポジトリのコードを変更すると、パイプラインが新しい Docker イメージを作成し、コンテナレジストリにプッシュし、更新されたイメージを Amazon ECS にデプロイします。また、CodePipeline の ECS (Blue/Green) プロバイダアクションを使用して、CodeDeploy でトラフィックを Amazon ECS にルーティングおよびデプロイすることもできます。

詳細はこちら :

Elastic Beanstalk デプロイアクション

Elastic Beanstalk は、Java、.NET、PHP、Node.js、Python、Ruby、Go、Docker で開発されたウェブアプリケーションとサービスを、Apache、Nginx、Passenger、IIS などの一般的なサーバーにデプロイしてスケーリングするサービスです。Elastic Beanstalk を使用してコードをデプロイするように CodePipeline を設定できます。パイプライン作成前、または パイプライン の作成ウィザードを使用する際、ステージのデプロイアクションで使用する Elastic Beanstalk アプリケーションと環境を作成できます。

注記

この機能は、アジアパシフィック (ハイデラバード)、アジアパシフィック (メルボルン)、中東 (アラブ首長国連邦)、欧州 (スペイン)、または欧州 (チューリッヒ) リージョンでは利用できません。利用可能なその他のアクションについては、「CodePipeline との製品とサービスの統合」を参照してください。

詳細はこちら:

AWS OpsWorks デプロイアクション

AWS OpsWorks は、Chef を使用してあらゆる形状とサイズのアプリケーションを設定および運用するのに役立つ設定管理サービスです。を使用すると AWS OpsWorks Stacks、パッケージのインストール、ソフトウェア設定、ストレージなどのリソースなど、アプリケーションのアーキテクチャと各コンポーネントの仕様を定義できます。CodePipeline を設定 AWS OpsWorks Stacks して、 でカスタム Chef クックブックやアプリケーションと組み合わせてコードをデプロイできます AWS OpsWorks。

  • カスタム Chef クックブック – Chef クックブック AWS OpsWorks を使用して、パッケージのインストールと設定、アプリケーションのデプロイなどのタスクを処理します。

  • アプリケーション – AWS OpsWorks アプリケーションは、アプリケーションサーバーで実行するコードで構成されます。アプリケーションコードは、Amazon S3 バケットなどのリポジトリに格納されています。

パイプラインを作成する前に、 AWS OpsWorks スタックとレイヤーを作成します。パイプラインを作成する前、またはパイプラインの作成ウィザードを使用するときに、ステージのデプロイアクションで使用する AWS OpsWorks アプリケーションを作成できます。

の CodePipeline サポート AWS OpsWorks は現在、米国東部 (バージニア北部) リージョン (us-east-1) でのみ利用できます。

詳細はこちら:

Service Catalog のデプロイアクション

Service Catalog を使用すると、組織は での使用が承認された製品のカタログを作成および管理できます AWS。

製品テンプレートの更新とバージョンを Service Catalog にデプロイするように CodePipeline を設定できます。デプロイアクションで使用する Service Catalog 製品を作成したら、[パイプラインを作成する] ウィザードを使用してパイプラインを作成できます。

詳細はこちら:

Amazon Alexa デプロイアクション

Amazon Alexa Skills Kit を使用すると、クラウドベースのスキルをビルドし、Alexa 対応デバイスのユーザーに配布できます。

注記

この特徴は、アジアパシフィック (香港) またはヨーロッパ (ミラノ) リージョンでは使用できません。当該地域で使用可能な他のデプロイアクションを使用する場合、デプロイアクションの統合 を参照してください。

デプロイプロバイダとして Alexa Skills Kit を使用するパイプラインにアクションを追加できます。パイプラインによってソースの変更が検出され、更新が Alexa サービスの Alexa スキルにデプロイされます。

詳細はこちら:

CodeDeploy デプロイアクション

CodeDeploy は、Amazon EC2/オンプレミスインスタンス、Amazon Elastic Container Service コンピューティングプラットフォーム、サーバーレス AWS Lambda コンピューティングプラットフォームへのアプリケーションのデプロイを調整します。CodePipeline を設定して、 CodeDeploy でコードをデプロイすることができます。パイプラインを作成する前または [パイプラインの作成] ウィザードを使用するときに、デプロイアクションで使用できる CodeDeploy アプリケーション、デプロイおよびデプロイグループを作成できます。

詳細はこちら:

XebiaLabs デプロイアクション

CodePipeline を設定し、 XebiaLabs を使用して、パイプラインの 1 つ以上のアクションでコードをデプロイできます。

詳細はこちら:

Amazon Simple Notification Service との承認アクションの統合

Amazon SNS は、高速かつ柔軟な完全マネージド型のプッシュ通知サービスです。このサービスを使用すると、個々のメッセージを送信したり、多数の受信者にメッセージをファンアウトしたりできます。Amazon SNS により、簡単かつコスト効率の高い方法で、モバイルデバイスユーザーおよびメール受信者にプッシュ通知を送信したり、他の分散サービスにメッセージを送信したりできます。

CodePipeline で手動承認リクエストを作成する場合は、必要に応じて Amazon SNS にトピックを発行して、サブスクライブしているすべての IAM ユーザーに承認アクションを確認する準備ができたことが通知されます。

詳細はこちら:

呼び出しアクションの統合

以下の情報は CodePipeline アクションの種類別に整理されていますので、CodePipeline を設定して、以下の呼び出しアクションプロバイダーとの統合に役立ちます。

Amazon Inspector 呼び出しアクション

Amazon Inspector は、ワークロードを自動的に検出し、ソフトウェアの脆弱性や意図しないネットワークへの露出を継続的にスキャンする脆弱性管理サービスです。Amazon Inspector は tar や war などの複数のアーカイブ形式をサポートし、Amazon Inspector は Rust や Go バイナリなどのバイナリをサポートします。

CodePipeline InspectorScanアクションを設定して、ソースコードまたは Amazon ECR イメージリポジトリの脆弱性のスキャンを自動化できます。

詳細はこちら:

Lambda 呼び出しアクション

Lambda を使用することで、サーバーのプロビジョニングや管理をすることなく、コードを実行できます。Lambda 関数を使用してパイプラインに柔軟性と機能性を追加するように CodePipeline を設定できます。パイプライン作成前、または パイプライン作成 ウィザードを使用する際、ステージにアクションとして追加する Lambda 関数を作成できます。

詳細はこちら:

Snyk 呼び出しアクション

CodePipeline を設定して Snyk を使用することで、セキュリティ脆弱性の検出と修正、アプリケーションコードやコンテナイメージの依存関係の更新を行い、オープンソース環境のセキュリティを維持することができます。また、CodePipeline の Snyk アクションを使用して、パイプラインのセキュリティテスト制御を自動化することもできます。

詳細はこちら:

Step Functions アクション呼び出し

Step Functions では、ステートマシンの作成と設定ができます。CodePipeline では、ステップファンクションでアクションを呼び出し、ステートマシンの実行をトリガーするように設定できます。

詳細はこちら: