我有一个大型的monorepo,里面有很多项目。我想要有许多构建工作,每个工作都使用 repo 中相关树中的构建规范。
例如,我有一个名为 Email 的 lambda 函数和一个名为 Web 的 java 应用程序。每个源树都是兄弟,我想在每个中放置一个构建规范,并让不同的作业使用不同的 buildspec.yml 文件。
我找不到一种方法来完成这项工作,因为作业中指定的 buildspec 文件的名称必须位于 repo 的根目录(它是一个 git repo)。
我有一个大型的monorepo,里面有很多项目。我想要有许多构建工作,每个工作都使用 repo 中相关树中的构建规范。
例如,我有一个名为 Email 的 lambda 函数和一个名为 Web 的 java 应用程序。每个源树都是兄弟,我想在每个中放置一个构建规范,并让不同的作业使用不同的 buildspec.yml 文件。
我找不到一种方法来完成这项工作,因为作业中指定的 buildspec 文件的名称必须位于 repo 的根目录(它是一个 git repo)。
您可以在Create/UpdateProject 或 StartBuild的buildspec
or参数中指定备用构建规范位置。buildspecOverride
buildspec 路径是相对于 Git 存储库的根目录的。所以你可以使用,例如,./subdir/buildspec.yml
现在有一种方法可以通过控制台更改 CodeBuild 项目的构建规范路径。编辑一个项目(控制台网址是https://[region-name].console.aws.amazon.com/codebuild/home?region=[region-name]#/projects)并在“环境:如何构建”下一个名为“Buildspec name”的参数。将其设置为 buildspec.yml 文件相对于根目录的路径。