ステップ 5 : CodePipeline でパイプラインを作成する - AWS OpsWorks

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

ステップ 5 : CodePipeline でパイプラインを作成する

重要

AWS OpsWorks Stacks は新規顧客を受け付けなくなりました。既存のお客様は、2024 年 5 月 26 日までは OpsWorks コンソール、 API、 CLI、および CloudFormation リソースを通常どおり使用できますが、その時点でこれらのリソースは廃止されます。この移行に備えて、できるだけ早くスタックを AWS Systems Manager に移行することをおすすめします。詳細については、AWS OpsWorks Stacks サポート終了に関する FAQ および AWS Systems Manager アプリケーションマネージャへの AWS OpsWorks Stacks アプリケーションの移行 を参照してください。

スタックにレイヤーを設定し、AWS OpsWorks スタックにインスタンスを 1 つ以上設定した後に、プロバイダーとして AWS OpsWorks スタックを使用して CodePipeline にパイプラインを作成し、アプリケーションまたは Chef クックブックを AWS OpsWorks スタックリソースにデプロイします。

パイプラインを作成するには
  1. CodePipeline コンソール (https://console.aws.amazon.com/codepipeline/) を開きます。

  2. [パイプラインの作成] を選択します。

  3. [Getting started with CodePipeline] (コードパイプラインの使用開始) ページで、タイプ [MyOpsWorksPipeline] など、アカウントに一意なパイプライン名を入力した後、[Next step] (次のステップ) を選択します。

  4. [Source Location] (送信元の場所) ページで、[Source provider] (送信元のプロバイダー) ドロップダウンリストからの [Amazon S3] を選択します。

  5. [Amazon S3 details] (Amazon S3 詳細) 領域で、使用する Amazon S3 バケットパスを s3://bucket-name/file name という形式で入力します。ステップ 3: アプリケーションコードを Amazon S3 バケットにアップロードする のステップ 9で記したリンクを参照してください。このウォークスルーでは、パスは s3://my-appbucket/opsworks-nodejs-demo-app.zip になります。[次のステップ] を選択します。

    
            AWS CodePipeline のソースとプロバイダ
  6. [Build] ページのドロップダウンリストで、[No Build]、[Next step] の順に選択します。

  7. [デプロイ] ページで、デプロイプロバイダーとして [AWS OpsWorks Stacks] を選択します。

  8. [Stack] フィールドに、CodePipelineDemo または ステップ 1: AWS OpsWorks スタックでスタック、レイヤー、インスタンスを作成する で作成したスタックの名前を入力します。

  9. [Layer] (レイヤー) フィールドに、「Node.js App Server」と入力するか、「ステップ 1: AWS OpsWorks スタックでスタック、レイヤー、インスタンスを作成する」で作成したレイヤーの名前を入力します。

  10. [App] (アプリケーション) フィールドで、ステップ 3: アプリケーションコードを Amazon S3 バケットにアップロードする で Amazon S3 にアップロードしたアプリケーションを選択してから、[Next step] (次のステップ) を選択します。

  11. AWSサービスロール ページで、ロールの作成 を選択します。

    ユーザーに作成されるロール (AWS-CodePipeline-Service) を説明する IAM コンソールページとともに新しいページが開きます。[Policy name] ドロップダウンリストで、[Create new policy] を選択します。ポリシードキュメントに次のコンテンツがあることを確認します。[Edit] を選択し、必要に応じてポリシードキュメントを変更します。

    { "Statement": [ { "Action": [ "s3:GetObject", "s3:GetObjectVersion", "s3:GetBucketVersioning" ], "Resource": "*", "Effect": "Allow" }, { "Action": "opsworks:*", "Resource": "*", "Effect": "Allow" } ] }

    ポリシードキュメントへの変更が完了したら、[Allow] を選択します。変更が IAM コンソールに表示されます。

    注記

    ロールの作成に失敗した場合は、[AWS-CodePipeline-Service] (AWS-CodePipeline サービス) という名前の IAM ロールがすでにある可能性があります。2016 年 5 月以前から [AWS-CodePipeline-Service] を使用している場合、そのロールには AWS OpsWorks スタックをデプロイメントプロバイダーとして使用する権限がない可能性があります。この場合、このステップで見たようにポリシーステートメントを更新する必要があります。エラーメッセージが表示された場合は、この手順の最初に戻ってから、[Create role] (ロールの作成) の代わりに [Use existing role] (既存のロールを使用する) を選択します。既存のロールを使用する場合は、このステップに示される権限を含むポリシーがロールにアタッチされている必要があります。サービス ロールとそのポリシーステートメントの詳細については、IAM サービスロールのポリシーを編集するを参照してください。

  12. ロール作成プロセスが成功すると、IAM ページが閉じ、AWSサービスロール ページに戻ります。[次のステップ] を選択します。

  13. [Review your pipeline] ページで、ページに表示される選択肢を確認した後、[Create pipeline] を選択します。

  14. 準備ができたパイプラインは、自動的にソースコードを見つけ、アプリケーションをスタックにデプロイし始めます。この処理には数分かかることもあります。