是否有任何类型的 AWS CodeBuild 环境变量可以帮助在构建工件上标记版本信息?. 即 Bamboo 的等价物,例如bamboo_buildNumber
. 理想情况下,我想要内部版本号和 SCM 号。
文档谈论CODEBUILD_x
内部使用的变量,但我无法找到它们的列表。
是否有任何类型的 AWS CodeBuild 环境变量可以帮助在构建工件上标记版本信息?. 即 Bamboo 的等价物,例如bamboo_buildNumber
. 理想情况下,我想要内部版本号和 SCM 号。
文档谈论CODEBUILD_x
内部使用的变量,但我无法找到它们的列表。
此处列出了 CodeBuild 提供的用于消费的环境变量的参考:http: //docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref.html#build-env-ref-env-vars
对于内部版本号相关信息,您可以使用 CODEBUILD_BUILD_ID 或 CODEBUILD_BUILD_ARN。对于源相关信息,取决于构建的触发方式和构建的输入参数是什么(例如,如果您在开始构建时指定了源版本 --参考),您还可以使用 CODEBUILD_SOURCE_VERSION 或 CODEBUILD_SOURCE_REPO_URL 环境变量。
CodeBuild 文档尚未使用这些更新的环境变量的详细信息进行更新。
谢谢!
Amazon 最近添加了一个 BuildNumber 环境变量。
根据https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-env-vars.html
CODEBUILD_BUILD_NUMBER: The current build number for the project.
有很多环境变量,但根据我的经验,它们不是很可靠,因为它们取决于构建的触发方式。最有用的似乎是:
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