如何在不同的目录中有多个CodeBuild buildspec文件?
我有一个很大的monorepo,里面有很多项目。我想要有许多构建作业,每个构建作业都使用repo中相关树中的buildspec。如何在不同的目录中有多个CodeBuild buildspec文件?
例如,我有一个名为Email的lambda函数和一个名为Web的java应用程序。每个源代码树都是兄弟姐妹,我想在每个代码中放置一个buildspec,并让不同的作业使用不同的buildspec.yml文件。
我找不到工作的方法,因为作业中指定的buildspec文件的名称必须位于repo的根目录(这是一个git repo)。
您可以在创建/更新项目或开始构建的buildspec
或buildspecOverride
参数中指定替代构建规格位置。
buildspec路径是相对于你的Git仓库的根。所以,你可以使用,例如,./subdir/buildspec.yml
你可以在这里找到的文档:https://docs.aws.amazon.com/codebuild/latest/userguide/build-spec-ref.html#build-spec-ref-name-storage
现在有通过控制台更改CodeBuild项目的buildspec路径的方式。编辑一个项目(控制台url为https://[region-name].console.aws.amazon.com/codebuild/home?region=[region-name]#/projects),在“Environment:How to build”下有一个名为“Buildspec name”的参数。将其设置为相对于根目录的buildspec.yml文件的路径。
那么,你知道的。我要么没有找到那个特定的页面,要么设法完全覆盖第二段中提到的位置。 谢谢指出! –
我没有找到,如何使用不同的文件名作为构建规范。所以,我使用'buildspec-dev.yml'。现在,我想说使用'buildspec-dev.yml'构建命令的codeBuild。上面的链接并没有说如何有不同的文件名。任何人都可以指示我在控制台中使用不同的buildSpec文件名称? –
@LakshmanDiwaakar您目前无法在控制台中执行此操作。您必须使用API或CloudFormation。 – Unsigned