本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
建置環境中的環境變數
AWS CodeBuild 提供多種環境變數,可讓您在組建命令中使用:
- AWS_DEFAULT_REGION
-
所以此AWS建置執行所在的區域 (例如
us-east-1
。此環境變數主要由 AWS CLI 使用。 - AWS_REGION
-
所以此AWS建置執行所在的區域 (例如
us-east-1
。此環境變數主要由 AWS 軟體開發套件使用。 - 代碼構建 _ 批處理構建 _ 標識符
-
批處理構建中生成的標識符。這是在批處理構建規範中指定的。如需詳細資訊,請參閱 Batch 量生成構建規範參考。
- 代碼構建構建
-
建置的 Amazon Resource Name (ARN) (例如
arn:aws:codebuild:
。region-ID
:account-ID
:build/codebuild-demo-project:b1e6661e-e4f2-4156-9ab9-82a19EXAMPLE - 代碼構建 _ 構建 ID
-
建置的 CodeBuild ID (例如
codebuild-demo-project:b1e6661e-e4f2-4156-9ab9-82a19EXAMPLE
。 - 代碼構建-構建圖像
-
代 CodeBuild 映像識別符 (例如
aws/codebuild/standard:2.0
。 - 代碼構建編號
-
項目的目前建置編號。
- 代碼構建 _ 構建成功
-
目前建置是否成功。設定為
0
表示建置失敗;設定為1
表示建置成功。 - 代碼構建啟動器
-
開始組建的實體。如果 CodePipeline 開始建置,則此為管道的名稱 (例如
codepipeline/my-demo-pipeline
。如果是由 IAM 使用者開始建置,則此為使用者的名稱 (例如MyUserName
。如果代 CodeBuild 置的 Jenkins 外掛程式開始建置,則此為字串CodeBuild-Jenkins-Plugin
。 - 代碼構建 KMS_KEY_ID
-
The identifier of the AWS KMS鍵,CodeBuild 用來加密建置輸出成品 (例如
arn:aws:kms:
或者region-ID
:account-ID
:key/key-ID
alias/
。key-alias
- 代碼構建日誌路徑
-
建置的 CloudWatch 日誌中建置的日誌串流名稱。
- 代碼構建 _ 公共構建網址
-
此版本在公共構建網站上的構建結果的 URL。僅當生成項目啟用了公共生成時,才會設置此變量。如需詳細資訊,請參閱 中的公共組建專案AWS CodeBuild。
- 代碼構建 _ 已解決的源代碼版本
-
建置來源碼的版本識別符。其內容取決於來源碼儲存庫:
- CodeCommit、GitHub Enterprise Server 和 Bitbucket
-
此變量包含提交 ID。
- CodePipeline
-
此變量包含由代碼代碼提供的源修訂版本。
如果 CodePipeline 無法解析源修訂版本,例如源是未啟用版本控制的 Amazon S3 存儲桶時,則不會設置此環境變量。
- Amazon S3
-
未設置此變量。
在適用的情況下,
CODEBUILD_RESOLVED_SOURCE_VERSION
變數僅在DOWNLOAD_SOURCE
階段。 - 代碼構建源代碼
-
輸入成品或來源碼儲存庫的 URL。對於 Amazon S3,這是
s3://
後接儲存貯體名稱和輸入成品路徑。對於 CodeCommit 和 GitHub,此為儲存庫的複製 URL。如果建置來自 CodePipeline,則此環境變數可能是空的。對於輔助源,輔助源資料庫 URL 的環境變量為
CODEBUILD_SOURCE_REPO_URL_
其中,<sourceIdentifier>
是您創建的源標識符。<sourceIdentifier>
- 代碼構建 _ 源代碼版本
-
值的格式取決於來源碼儲存庫。
-
對於 Amazon S3,它是與輸入成品相關聯的版本 ID。
-
對於 CodeCommit,它是與要建置的來源碼版本相關聯的遞交 ID 或分支名稱。
-
對於 GitHub、GitHub Enterprise Server 和 Bitbucket,它是與要建置的來源碼版本相關聯的遞交 ID、分支名稱或標籤名稱。
注意 對於由 Webhook 提取請求事件觸發的 GitHub 或 GitHub Enterprise Server 建置,它是
pr/
。pull-request-number
對於輔助源,輔助源版本的環境變量為
CODEBUILD_SOURCE_VERSION_
其中,<sourceIdentifier>
是您創建的源標識符。如需詳細資訊,請參閱 多個輸入來源和輸出成品範例。<sourceIdentifier>
-
- 代碼構建 _SRC_目錄
-
CodeBuild 使用的目錄路徑 (例如
/tmp/src123456789/src
。對於輔助源,輔助源目錄路徑的環境變量為
CODEBUILD_SRC_DIR_
其中,<sourceIdentifier>
是您創建的源標識符。如需詳細資訊,請參閱 多個輸入來源和輸出成品範例。<sourceIdentifier>
- 代碼構建時間
-
指定為 Unix 時間戳記的建置開始時間 (毫秒)。
- 代碼構建 _ 網絡掛鈎 _ 角色帳户編號
-
觸發 Webhook 事件的使用者帳户 ID。
- 代碼構建 _ 網絡掛鈎 _ 基礎 _ 參考
-
觸發目前建置的 Webhook 事件的基本參考名稱。對於提取請求,這是分支參考。
- 代碼構建 _ 網絡掛鈎事件
-
觸發目前建置的 Webhook 事件。
- 代碼構建 _ 網絡掛鈎 _ 合併提交
-
用於構建的合併提交的標識符。當 Bitbucket 拉取請求與擠壓策略合併並且拉取請求分支關閉時,會設置此變量。在這種情況下,原始的拉取請求提交不再存在,因此此環境變量包含壓縮合併提交的標識符。
- 代碼構建 _ 網絡掛鈎 _ 提交
-
在觸發目前建置的 Webhook 推送事件之前的最近遞交 ID。
- 代碼構建 _ 網絡掛鈎頭 _ 參考
-
觸發目前建置的 Webhook 事件的標頭參考名稱。它可以是分支參考或標籤參考。
- 代碼構建 _ 網絡掛鈎觸發器
-
顯示觸發建置的 Webhook 事件。此變數僅適用 Webhook 觸發的建置。此值的析來源是 GitHub Enterprise Server 或 Bitbucket 傳送到 CodeBuild 置的承載。該值的格式取決於觸發建置的事件類型。
-
對於提取請求觸發的建置,它是
pr/
。pull-request-number
-
對於建立新分支或將遞交推送至分支而觸發的建置,它是
branch/
。branch-name
-
對於將標籤推送到儲存庫而觸發的建置,它是
tag/
。tag-name
-
- 家
-
此環境變數一律設為
/root
。
您也可以為建置環境提供您自己的環境變數。如需詳細資訊,請參閱下列主題:
若要列出建置環境中所有可用的環境變數,您可以在建置期間執行 printenv
命令 (適用於 Linux 建置環境) 或 "Get-ChildItem Env:"
(適用於 Windows 建置環境)。除了上方列出的例外,以CODEBUILD_
適用於 CodeBuild 內部使用。因此,您不應將它們用在建置命令中。
我們非常不建議您使用環境變數來存放機密值,尤其是 AWS 存取金鑰 ID 和私密存取金鑰。您可以使用 CodeBuild 主控台和AWS CLI。
我們建議您將敏感值存放在 Amazon EC2 Systems Manager 參數存放區,然後透過 Buildspec 來獲取。要存儲敏感值,請參閲Systems Manager 參數存放區和演練:建立和測試 String 參數 (主控台)中的Amazon EC2 Systems Manager 使用指南。若要擷取這些值,請參閱 Buildspec 語法 中的 parameter-store
映射。