AWS CodeBuild
ユーザーガイド (API バージョン 2016-10-06)

このガイドの手順では、新しいコンソールデザインがサポートされています。古いバージョンのコンソールを選択すると、古い概念が反映され、本ガイドの基本的な手順がそのまま適用されます。新しいコンソールのヘルプにアクセスするには、情報アイコンを選択します。

ビルド環境の環境変数

CodeBuild には、ビルドコマンドで使用できるいくつかの環境変数が用意されています。

  • AWS_DEFAULT_REGION: ビルドが実行されている AWS リージョン (例: us-east-1)。この環境変数は、AWS CLI で主に使用されます。

  • AWS_REGION: ビルドが実行されている AWS リージョン (例: us-east-1)。この環境変数は、AWS SDK で主に使用されます。

  • CODEBUILD_BUILD_ARN: ビルドの Amazon リソースネーム (ARN) (例:arn:aws:codebuild:region-ID:account-ID:build/codebuild-demo-project:b1e6661e-e4f2-4156-9ab9-82a19EXAMPLE)。

  • CODEBUILD_BUILD_ID: ビルドの CodeBuild ID (例: codebuild-demo-project:b1e6661e-e4f2-4156-9ab9-82a19EXAMPLE)。

  • CODEBUILD_BUILD_IMAGE: CodeBuild ビルドイメージ識別子 (例: aws/codebuild/java:openjdk-8)。

  • CODEBUILD_BUILD_SUCCEEDING: 現在のビルドが成功かどうか。ビルドが失敗の場合は 0 に設定され、成功の場合は 1 に設定されます。

  • CODEBUILD_INITIATOR: ビルドを開始したエンティティ。CodePipeline でビルドが開始された場合は、パイプラインの名前を表します (例: codepipeline/my-demo-pipeline)。IAM ユーザーがビルドを開始した場合は、ユーザーの名前を表します (例: MyUserName)。CodeBuild の Jenkins プラグインがビルドを開始した場合、これは文字列 CodeBuild-Jenkins-Plugin です。

  • CODEBUILD_KMS_KEY_ID: CodeBuild がビルド出力アーティファクトを暗号化するために使用している AWS KMS キーの識別子 (例: arn:aws:kms:region-ID:account-ID:key/key-ID または alias/key-alias)。

  • CODEBUILD_LOG_PATH: CloudWatch Logs でのビルドのログストリーム名。

  • CODEBUILD_RESOLVED_SOURCE_VERSION: ビルドのソースコードのバージョンの識別子。その形式は、ソースコードリポジトリによって異なります。

    • CodeCommit、GitHub、GitHub Enterprise、Bitbucket では、コミット ID です。これらのリポジトリの場合、CODEBUILD_RESOLVED_SOURCE_VERSIONDOWNLOAD_SOURCE フェーズ後にのみ使用できます。

    • CodePipeline では、ソースリビジョンは CodePipeline により提供されます。CodePipeline では、CODEBUILD_RESOLVED_SOURCE_VERSION 環境変数が常に使用できるとは限りません。

    • Amazon S3 では、これは当てはまりません。

  • CODEBUILD_SOURCE_REPO_URL: 入力アーティファクトまたはソースコードリポジトリの URL。Amazon S3 では、これは s3:// の後にバケット名と入力アーティファクトへのパスが続きます。CodeCommit および GitHub の場合、これはリポジトリのクローン URL です。CodePipeline から生成されたビルドの場合は空の場合があります。

  • CODEBUILD_SOURCE_VERSION: 値の形式は、ソースコードリポジトリによって異なります。

    • Amazon S3 では、入力アーティファクトに関連付けられたバージョン ID です。

    • CodeCommit では、ビルドするソースコードのバージョンに関連付けられたコミット ID またはブランチ名です。

    • GitHub、GitHub Enterprise、Bitbucket の場合、ビルドするソースコードのバージョンに関連付けられたコミット ID、ブランチ名、またはタグ名です。

      注記

      Webhook プルリクエストイベントによりトリガーされた GitHub または GitHub Enterprise ビルドの場合、pr/pull-request-number です。

  • CODEBUILD_SRC_DIR: CodeBuild がビルドに使用するディレクトリパス (例: /tmp/src123456789/src)。

  • CODEBUILD_START_TIME: ビルドの開始時間。

  • CODEBUILD_WEBHOOK_TRIGGER: ビルドをトリガーした Webhook イベントを表示します。この変数は、Webhook によってトリガーされるビルドにのみ使用できます。値は、Github、Github Enterprise、または Bitbucket により CodeBuild に送信されたペイロードから解析されます。値の形式は、ビルドをトリガーしたイベントのタイプによって異なります。

    • プルリクエストによってトリガーされたビルドの場合、pr/pull-request-number です。

    • 新しいブランチを作成するか、ブランチにコミットをプッシュすることでトリガーされたビルドの場合、branch/branch-name です。

    • タグをリポジトリにプッシュすることでトリガーされたビルドの場合、tag/tag-name です。

  • HOME: この環境変数は常に /root に設定されます。

独自の環境変数を持つビルド環境を提供することもできます。詳細については、次のトピックを参照してください。

ビルド環境で使用できる環境変数を一覧表示するには、構築時に printenv コマンド (Linux ベースのビルド環境) または "Get-ChildItem Env:" (Windows ベースのビルド環境) を実行できます。前述のものを除いて、CODEBUILD_ で始まる環境変数は、CodeBuild の内部使用のためのものです。それらはビルドコマンドで使用できません。

重要

機密情報、特に AWS アクセスキー ID とシークレットアクセスキーを格納する場合には、環境変数を使用しないことを強くお勧めします。環境変数は、CodeBuild コンソールや AWS CLI などのツールを使用してプレーンテキストで表示できます。

重要な値は Amazon EC2 Systems Manager パラメータストアに保存後、ビルド仕様から取得することをお勧めします。重要な値を保存するには、『Amazon EC2 Systems Manager ユーザーガイド』の「Systems Manager パラメータストア」および「Systems Manager パラメータストアコンソールのチュートリアル」を参照してください。それらを取得するには、「ビルド仕様の構文」の parameter-store マッピングを参照してください。