簡體   English   中英

AWS CodeBuild 默認環境變量。

[英]AWS CodeBuild default environment variables.

我創建了一個管道,它從 CodeCommit 存儲庫中獲取代碼,通過 CodeBuild 構建它並將代碼推送到 S3 存儲桶。

對於我的 Codebuild,我使用的是 AWS 托管映像。 aws/codebuild/nodejs:7.0.0

如果我通過 CodeBuild 控制台手動開始構建並指定存儲庫,當我在構建規范中運行以下命令時,我會獲取存儲庫 URL

- printf ${CODEBUILD_SOURCE_REPO_URL}

但是如果 CodeBuild 是通過推送到存儲庫自動觸發的。 CODEBUILD_SOURCE_REPO_URL 不返回任何內容

如果您從 codepipeline 運行該進程,它將為空。

看看這個: https : //docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-env-vars.html

CODEBUILD_SOURCE_REPO_URL:輸入工件或源代碼存儲庫的 URL。 對於 Amazon S3,這是 s3:// 后跟存儲桶名稱和輸入工件的路徑。 對於 AWS CodeCommit 和 GitHub,這是存儲庫的克隆 URL。 如果構建源自 AWS CodePipeline,則這可能為空。

如果您通過 CodeCommit 進行連接,則可以使用以下方法拆分字符串以獲得更有用的值,例如 Account Id 和 Repo Name:

echo "Region = ${AWS_REGION}"
echo "Account Id = $(echo $CODEBUILD_BUILD_ARN | cut -f5 -d ':')"
echo "Repo Name = $(echo $CODEBUILD_SOURCE_VERSION | cut -f2 -d '/')"
echo "Commit Id = ${CODEBUILD_RESOLVED_SOURCE_VERSION}"

哪些輸出:

Region = us-west-2
Account Id = 0123456789
Repo Name = my-app
Commit Id = a46218c9160f932f2a91748a449b3f9818964642

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM