変数の操作 - AWS CodePipeline

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

変数の操作

CodePipeline 変数生成のアクションの中には、変数を生成するものがあります。変数を使用するには、次の手順に従います。

  • 名前空間をアクションに割り当てて、生成する変数をダウンストリームアクション設定で使用できるようにします。

  • ダウンストリームアクションは、アクションによって生成された変数を消費するよう設定します。

    各アクションの実行の詳細を表示して、実行時にアクションによって生成された各出力変数の値を確認できます。

step-by-step 変数を使用するための例を参照するには:

変数のアクションを設定する

パイプラインにアクションを追加すると、そのアクションに名前空間を割り当て、以前のアクションの変数を消費するように設定できます。

変数のアクションを設定する (コンソール)

この例では、 CodeCommit CodeBuild ソースアクションとビルドアクションを含むパイプラインを作成します。 CodeBuild アクションは、アクションによって生成された変数を消費するよう設定されています。 CodeCommit

名前空間が指定されていない場合、変数はアクション設定で参照できません。コンソールを使用してパイプラインを作成すると、各アクションの名前空間が自動的に生成されます。

変数を使用してパイプラインを作成するには
  1. にサインインしてAWS Management Console、http://console.aws.amazon.com/codesuite/codepipeline/home CodePipeline でコンソールを開きます。

  2. [パイプラインの作成] を選択します。パイプラインに名前を入力し、[Next (次へ)] を選択します。

  3. ソース」の「プロバイダー」で、を選択しますCodeCommit。 CodeCommit ソースアクションのリポジトリとブランチを選択し、[Next (次へ)] を選択します。

  4. ビルド」の「プロバイダ」で、を選択しますCodeBuild。 CodeBuild 既存のビルドプロジェクト名を選択するか、[Create project (プロジェクトを作成)] を選択します。「ビルド・プロジェクトの作成」で、ビルド・プロジェクトを作成し、「戻る」を選択します CodePipeline。

    [環境変数] の下で、[Add environment variables (環境変数を追加)] を選択します。たとえば、実行 ID#{codepipeline.PipelineExecutionId} を変数構文で入力し、コミット ID を変数構文で入力します#{SourceVariables.CommitId}

    注記

    変数構文は、ウィザードの任意のアクション設定フィールドに入力できます。

  5. [作成] を選択します。

  6. パイプラインが作成されたら、ウィザードによって作成された名前空間を表示できます。パイプラインで、名前空間を表示するステージのヘルプペインアイコンを選択します。この例では、ソースアクションの自動生成された名前空間、SourceVariables が表示されます。

    
                            例: アクション情報画面
既存のアクションの名前空間を編集するには
  1. にサインインしてAWS Management Console、http://console.aws.amazon.com/codesuite/codepipeline/home CodePipeline でコンソールを開きます。

  2. 編集するパイプラインを選択して [編集] を選択します。ソースステージで、[Edit stage (ステージを編集)] を選択します。 CodeCommit アクションを追加します。

  3. [アクションの編集] で、[Variable namespace (変数の名前空間)] フィールドを表示します。既存のアクションが以前に作成された場合、またはウィザードを使用せずに作成された場合は、名前空間を追加する必要があります。[Variable namespace (変数の名前空間)] に名前空間名を入力し、[Save (保存)] を選択します。

出力変数を表示するには
  1. にサインインしてAWS Management Console、http://console.aws.amazon.com/codesuite/codepipeline/home CodePipeline でコンソールを開きます。

  2. パイプラインが作成され、正常に実行できたら、アクションの実行詳細ページで変数の値を表示することもできます。詳細については、「変数を表示する (コンソール)」を参照してください。

変数のアクションを設定する (CLI)

create-pipeline コマンドを使用してパイプラインを作成するか、update-pipeline コマンドを使用してパイプラインを編集する場合は、アクションの設定で変数を参照したり、使用したりできます。

名前空間が指定されていない場合、アクションによって生成された変数は、ダウンストリームアクション設定で参照することはできません。

名前空間でアクションを設定するには
  1. でパイプラインを作成 CodePipeline」の手順 に従って、CLI を使用してパイプラインを作成します。入力ファイルを起動して、create-pipeline コマンドに --cli-input-json パラメータを指定します。パイプライン構造で、namespace パラメータを追加し、SourceVariables などの名前を指定します。

    . . . { "inputArtifacts": [], "name": "Source", "region": "us-west-2", "namespace": "SourceVariables", "actionTypeId": { "category": "Source", "owner": "AWS", "version": "1", "provider": "CodeCommit" }, "outputArtifacts": [ . . .
  2. MyPipeline.json のような名前でファイルを保存します。

  3. ターミナル (Linux、macOS、UNIX) またはコマンドプロンプト (Windows) で、create-pipelineコマンドを実行し、パイプラインを作成します。

    create-pipeline コマンドを実行したときに作成したファイルを呼び出します。例:

    aws codepipeline create-pipeline --cli-input-json file://MyPipeline.json
変数を消費するダウンストリームアクションを設定するには
  1. 入力ファイルを編集して、update-pipeline コマンドに --cli-input-json パラメータを指定します。ダウンストリームアクションで、そのアクションの設定に変数を追加します。変数は、ピリオドで区切られた名前空間とキーで構成されます。たとえば、パイプライン実行 ID とソースコミット ID の変数を追加するには、変数 #{codepipeline.PipelineExecutionId} に変数の名前空間 codepipeline を指定します。変数の #{SourceVariables.CommitId} 名前空間 SourceVariables を指定します。

    { "name": "Build", "actions": [ { "outputArtifacts": [ { "name": "BuildArtifacts" } ], "name": "Build", "configuration": { "EnvironmentVariables": "[{\"name\":\"Execution_ID\",\"value\":\"#{codepipeline.PipelineExecutionId}\",\"type\":\"PLAINTEXT\"},{\"name\":\"Commit_ID\",\"value\":\"#{SourceVariables.CommitId}\",\"type\":\"PLAINTEXT\"}]", "ProjectName": "env-var-test" }, "inputArtifacts": [ { "name": "SourceArtifact" } ], "region": "us-west-2", "actionTypeId": { "provider": "CodeBuild", "category": "Build", "version": "1", "owner": "AWS" }, "runOrder": 1 } ] },
  2. MyPipeline.json のような名前でファイルを保存します。

  3. ターミナル (Linux、macOS、UNIX) またはコマンドプロンプト (Windows) で、create-pipelineコマンドを実行し、パイプラインを作成します。

    create-pipeline コマンドを実行したときに作成したファイルを呼び出します。例:

    aws codepipeline create-pipeline --cli-input-json file://MyPipeline.json

出力変数を表示する

アクション実行の詳細を表示して、各実行に固有のアクションの変数を表示できます。

変数を表示する (コンソール)

コンソールを使用して、アクションの変数を表示できます。

  1. にサインインしてAWS Management Console、http://console.aws.amazon.com/codesuite/codepipeline/home CodePipeline でコンソールを開きます。

    AWS アカウントに関連付けられているすべてのパイプラインの名前が表示されます。

  2. [Name] で、パイプラインの名前を選択します。

  3. [View history (履歴の表示)] を選択します。

  4. パイプラインが正常に実行されると、ソースアクションによって生成された変数を表示できます。[View history (履歴の表示)] を選択します。パイプライン実行のアクションリストで [ソース] を選択して、アクションのアクション実行の詳細を表示します。 CodeCommit アクションの詳細画面で、[Output variables (出力変数)] の下の変数を表示します。

    
                            例: ソース出力変数
  5. パイプラインが正常に実行されると、ビルドアクションによって消費される変数を表示できます。[View history (履歴の表示)] を選択します。パイプライン実行のアクションリストで、[ビルド] を選択して、アクションのアクション実行の詳細を表示します。 CodeBuild アクションの詳細ページで、[アクション設定] の下にある変数を表示します。自動生成された名前空間が表示されます。

    
                            例: アクション設定変数

    デフォルトでは、[アクション設定] には変数の構文が表示されます。[Show resolved configuration (解決された設定を表示)] を選択して、アクションの実行中に生成された値を表示するようにリストを切り替えることができます。

    
                            例: 解決済みアクション設定変数

変数を表示する (CLI)

list-action-executions コマンドを使用して、アクションの変数を表示できます。

  1. 以下のコマンドを使用します。

    aws codepipeline list-action-executions

    出力には、次に示すように outputVariables パラメータが表示されます。

    "outputVariables": { "BranchName": "main", "CommitMessage": "Updated files for test", "AuthorDate": "2019-11-08T22:24:34Z", "CommitId": "d99b0083cc10EXAMPLE", "CommitterDate": "2019-11-08T22:24:34Z", "RepositoryName": "variables-repo" },
  2. 以下のコマンドを使用します。

    aws codepipeline get-pipeline --name <pipeline-name>

    アクションのアクション設定で CodeBuild 、変数を表示できます。

    { "name": "Build", "actions": [ { "outputArtifacts": [ { "name": "BuildArtifact" } ], "name": "Build", "configuration": { "EnvironmentVariables": "[{\"name\":\"Execution_ID\",\"value\":\"#{codepipeline.PipelineExecutionId}\",\"type\":\"PLAINTEXT\"},{\"name\":\"Commit_ID\",\"value\":\"#{SourceVariables.CommitId}\",\"type\":\"PLAINTEXT\"}]", "ProjectName": "env-var-test" }, "inputArtifacts": [ { "name": "SourceArtifact" } ], "region": "us-west-2", "actionTypeId": { "provider": "CodeBuild", "category": "Build", "version": "1", "owner": "AWS" }, "runOrder": 1 } ] },

例: 手動承認で変数を使用する

アクションの名前空間を指定し、そのアクションが出力変数を生成する場合、承認メッセージに変数を表示する手動承認を追加できます。この例では、手動承認メッセージに可変構文を追加する方法を示します。

  1. にサインインしてAWS Management Console、http://console.aws.amazon.com/codesuite/codepipeline/home CodePipeline でコンソールを開きます。

    AWS アカウントに関連付けられているすべてのパイプラインの名前が表示されます。承認を追加するパイプラインを選択します。

  2. パイプラインを編集するには、[編集] を選択します。ソースアクションの後に、手動承認を追加します。[アクション名] に、承認処理の名前を入力します。

  3. [アクションプロバイダ] で、[手動承認] を選択します。

  4. レビュー用 URL」で、の変数構文を CodeCommit URLCommitId に追加します。ソースアクションに割り当てられた名前空間をかならず使用してください。たとえば、デフォルトの名前空間である SourceVariables を持つ CodeCommit アクションに対する変数構文は、#{SourceVariables.CommitId} です。

    コメント」にCommitMessage、コミットメッセージを入力します。

    Please approve this change. Commit message: #{SourceVariables.CommitMessage}
  5. パイプラインが正常に実行されると、承認メッセージに変数の値を表示できます。

例: BranchName CodeBuild 変数を環境変数と共に使用する

CodeBuild パイプラインにアクションをパイプラインに追加する場合、 CodeBuild BranchName環境変数を使用してアップストリームソースアクションから出力変数を参照することができます。のアクションからの出力変数を使用して CodePipeline、 CodeBuildビルドコマンドで使用する独自の環境変数を作成できます。

この例では、 GitHub CodeBuild ソースアクションから出力変数構文を環境変数に追加する方法を示します。この例の出力変数構文は、 GitHub のソースアクション出力変数を表しますBranchName。アクションが正常に実行されると、変数が解決され、 GitHub ブランチ名が表示されます。

  1. にサインインしてAWS Management Console、http://console.aws.amazon.com/codesuite/codepipeline/home CodePipeline でコンソールを開きます。

    AWS アカウントに関連付けられているすべてのパイプラインの名前が表示されます。承認を追加するパイプラインを選択します。

  2. パイプラインを編集するには、[編集] を選択します。 CodeBuild アクションを含むステージで、[ステージの編集] を選択します。

  3. CodeBuild アイコンを選択してアクションを編集します。

  4. [編集アクション] ページの 環境変数 で、次のように入力します。

    • [名前]に、環境変数の名前を入力します。

    • []に、パイプライン出力変数の変数構文を入力します。これには、ソースアクションに割り当てられた名前空間が含まれます。たとえば、デフォルトの名前空間で GitHub NamespaceSourceVariables の出力変数構文は、です#{SourceVariables.BranchName}

    • [タイプ]に、プレーンテキストを選択します。

  5. パイプラインが正常に実行されると、解決された出力変数が環境変数の値になることがわかります。次のいずれかを選択します。

    • CodePipeline console: パイプラインを選択してから、[History] を選択します。最新のパイプライン実行を選択します。

      • [タイムライン]で、[送信元] のセレクタを選択します。これは、 GitHub 出力変数を生成するソースアクションです。View execution details (実行の詳細を表示)を選択 [出力変数]で、このアクションによって生成された出力変数のリストを表示します。

      • [タイムライン]で、[ビルド]のセレクタを選択します。これは、 CodeBuild ビルドプロジェクトの環境変数を指定するビルドアクションです。View execution details (実行の詳細を表示)を選択 アクション設定で、 CodeBuild環境変数を表示します。解決済み設定を表示 を選択。環境変数値は、BranchName GitHub ソースアクションから解決された出力変数です。この例では、この値は main です。

        詳細については、「変数を表示する (コンソール)」を参照してください。

    • CodeBuild console: ビルドプロジェクトを選択し、ビルド実行のリンクを選択します。[環境変数] の場合、 CodeBuild 解決された出力変数が環境変数の値です。この例では、環境変数 NameBranchName はで、ValueBranchName GitHub はソースアクションからの解決済み出力変数です。この例では、この値は main です。