チュートリアル:フルクローンをCodeCommitパイプラインソース - AWS CodePipeline

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

チュートリアル:フルクローンをCodeCommitパイプラインソース

以下に適した完全複製オプションを選択できます。CodeCommitのソースアクションCodePipeline。このオプションを使用して許可しますCodeBuildパイプラインビルドアクションの Git メタデータにアクセスします。

このチュートリアルでは、以下にアクセスするパイプラインを作成します。CodeCommitリポジトリでは、ソースデータに完全複製オプションを使用して、CodeBuildリポジトリをクローンし、そのリポジトリの Git コマンドを実行するビルド。

注記

CodeBuildGit clone オプションで利用可能な Git メタデータの使用をサポートするダウンストリームのアクションはアクションだけです。また、パイプラインにはクロスアカウントアクションを含めることができますが、CodeCommitアクションとCodeBuildフルクローニングオプションが成功するには、アクションが同じアカウントにある必要があります。

前提条件

始める前に、以下を作成する必要があります。CodeCommit同じ場所にリポジトリAWSアカウントとリージョンをパイプラインとして使用します。

ステップ 1 : README ファイルを作成する

これらのステップを使用して、README ファイルをソースリポジトリに追加します。README ファイルには、のサンプルソースファイルが記載されています。CodeBuildダウンストリームアクションによる読み取り。

README ファイルを追加するには
  1. リポジトリにログインし、リポジトリを選択します。

  2. 新規のファイルを作成するには、ファイルの追加 > ファイルの作成 を選択します。ファイル README.md に名前を付け、ファイルを作成し、次のテキストを追加します。

    This is a CodeCommit repository!
  3. [Commit changes] (変更のコミット) を選択します。

    README.md ファイルがリポジトリのルートレベルにあることを確認してください。

ステップ 2: パイプラインを作成してプロジェクトをビルドする

このセクションでは、次のアクションを使用してパイプラインを作成します。

  • の付いたソースステージCodeCommitソースアクション。

  • AWS CodeBuild ビルドアクションを含むビルドステージ。

ウィザードを使用してパイプラインを作成するには
  1. にサインインします。CodePipelineのコンソールhttps://console.aws.amazon.com/codepipeline/

  2. [ようこそ] ページ、[Getting started] (開始方法) ページ、または [パイプライン] ページで、[パイプラインの作成] を選択します。

  3. [ステップ 1: パイプラインの設定を選択する] の [パイプライン名] に「MyCodeCommitPipeline」と入力します。

  4. [Service role (サービスロール)] で、次のいずれかの操作を行います。

    • [Existing service role (既存のサービスロール)] を選択します。

    • 既存のものを選択してください。CodePipelineサービスロールです。このロールには、サービスロールポリシーに対する codecommit:GetRepository IAM 許可が必要です。を参照してください。への権限の追加CodePipelineサービスロール

  5. 未満[詳細設定]、デフォルトのままにします。[次へ] をクリックします。

  6. ステップ 2: ソースステージの追加 ページで、次を行います。

    1. [ソースプロバイダ] で、CodeCommit を選択します。

    2. リポジトリ名 で、 リポジトリの名前を選択します。

    3. ブランチ名 で、ブランチ名を選択します。

    4. 確認してくださいソースコードが変更されたらパイプラインを起動します。オプションが選択されている。

    5. 未満出力アーティファクトフォーマット、選択フルクローンソースリポジトリの Git クローンオプションを有効にします。によって提供されるアクションのみCodeBuildGit クローンオプションを使用できます。

    [次へ] をクリックします。

  7. 構築ステージの追加 で、次を行います。

    1. [ビルドプロバイダ] で、[AWS CodeBuild] を選択します。[リージョン] がデフォルトでパイプラインリージョンになることを許可します。

    2. [Create project] (プロジェクトの作成) を選択します。

    3. [プロジェクト名] に、このビルドプロジェクトの名前を入力します。

    4. [環境イメージ] で、[Managed image (マネージド型イメージ)] を選択します。[Operating system] で、[Ubuntu] を選択します。

    5. [ランタイム] で、[Standard (標準)] を選択します。[イメージ] で、[aws/codebuild/standard:5.0] を選択します。

    6. [サービスロール] で、[New service role (新しいサービスロール)] を選択します。

      注記

      あなたの名前を書き留めてくださいCodeBuildサービスロール。このチュートリアルの最後のステップでは、ロール名が必要になります。

    7. [Buildspec] の Build specifications (ビルド仕様) で、[Insert build commands] (ビルドコマンドの挿入) を選択します。エディタに切り替え を選択し、構築コマンド の下に次のコードを貼り付けます。

      version: 0.2 env: git-credential-helper: yes phases: install: #If you use the Ubuntu standard image 2.0 or later, you must specify runtime-versions. #If you specify runtime-versions and use an image other than Ubuntu standard image 2.0, the build fails. runtime-versions: nodejs: 12 # name: version #commands: # - command # - command pre_build: commands: - ls -lt - cat README.md build: commands: - git log | head -100 - git status - ls - git describe --all #post_build: #commands: # - command # - command #artifacts: #files: # - location #name: $(date +%Y-%m-%d) #discard-paths: yes #base-directory: location #cache: #paths: # - paths
    8. 選択してください。続行CodePipeline。これで、に戻ります。CodePipelineコンソールを作成し、CodeBuildビルドコマンドを使用して設定するプロジェクト。ビルドプロジェクトはサービスロールを使用して管理します。AWS のサービス権限。このステップには数分かかる場合があります。

    9. [次へ] をクリックします。

  8. [Step 4: Add deploy stage (ステップ 4: デプロイステージの追加)] ページで、[Skip deploy stage (デプロイステージのスキップ)] を選択し、[スキップ] を選択して警告メッセージを受け入れます。[次へ] をクリックします。

  9. [Step 5: Review (ステップ 5: 確認)] で、[パイプラインの作成] を選択します。

ステップ 3: をアップデートするCodeBuildリポジトリを複製するサービスロールポリシー

更新が必要なため、最初のパイプライン実行は失敗します。CodeBuildリポジトリからプルする権限を持つサービスロール。

codecommit:GitPull IAM 許可をサービスロールポリシーに追加します。IAM コンソールでポリシーを更新する手順については、追加CodeBuild GitCloneの権限CodeCommitソースアクション を参照してください。

ステップ 4: 構築出力でリポジトリコマンドを表示する

ビルド出力 を表示するには
  1. サービスロールが正常に更新されたら、[再試行]で、失敗したCodeBuildステージ。

  2. パイプラインが正常に実行されたら、デプロイステージで 詳細 を選択します。

    未満実行詳細、表示するCodeBuildビルド出力。コマンドは以下を出力します。README.mdファイルの内容、ディレクトリ内のファイルの表示、リポジトリのクローン、ログの表示、実行git describe --all