git - AWS Codebuild - 可以从 codebuild buildspec 访问最后一个 git commit 消息吗?
问题描述
在我的一些代码管道中,我使用 cypress/mocha/mochawesome-reporter 设置了 E2E 测试,以便在我的代码构建的构建后部分运行测试。然后,我添加了一个 --recursive 行(见下文)将所有报告材料从构建中取出并将它们移动到时间戳中(见:"$(date +"%Y%m%d-%H%M" )") s3 存储桶中的目录。我想知道是否有办法访问最后一条提交消息(可能作为环境变量或其他方式?)并将其添加到我的时间戳目录的名称中。我已经阅读了很多文档,但只看到允许您提取 git ID/Hash 的环境变量。
我知道您可以在代码管道的“源”部分(通过 webhook)中看到最后一条提交消息,所以也许有一种方法可以将该信息传播到构建部分?
更多信息:代码管道由 webhook 触发,看到新的推送到我的仓库。
已阅读文档。尝试在代码构建中添加“printenv”,然后当我看到尾部日志进入时,我没有看到任何可以拉出的提交消息。
post_build:
commands:
- npm run ci
- aws s3 mv mochawesome-report s3://XXX-BUCKET/reports/XXX-PRODUCT/$(date +"%Y%m%d-%H%M") --recursive
我希望可能有一些可能的方法来提取最后一个 git commit 消息,也许我的代码示例中的最后一行看起来像:
- aws s3 mv mochawesome-report s3://XXX-BUCKET/reports/XXX-PRODUCT/$(date +"%Y%m%d-%H%M")CODEBUILD_SRC_GIT_COMMIT_MSG?? --递归
解决方案
脚本https://github.com/thii/aws-codebuild-extras在 CodeBuild 中提供了其他环境变量,包括一个用于 CODEBUILD_GIT_MESSAGE 的环境变量。也许类似的东西会在 CodePipeline 中起作用?
推荐阅读
- sharepoint - Microsoft Graph API PUT OneDrive/SharePoint
- c++ - 如何拥有类似于 unsigned char 但不允许别名的类型?
- python - Selenium webdriver:单击在python中不起作用
- javascript - 如何将进度条宽度显示为十进制?
- javascript - 停止游戏和查看/显示获胜者的功能逻辑
- css - CSS ::之前不显示位置:相对
- php - 未找到 Laravel swagger api-docs json 文件
- saleor - 销售员:最新版本中没有反应
- python - tkinter Toplevel:试图了解关闭窗口的怪癖
- java - 从java中的流api调用方法