我有一个节点应用程序,代码是在一个AWS代码提交库。要建立这个应用程序,我需要来自一个。env文件的参数。我把这个。env文件在另一个代码提交库。我想知道AWS codebuild是否可以从两个repos中提取代码,以便正确地构建应用程序,以及如何做到这一点。
8fq7wneg1#
我的印象是CodeBuild只能有一个源代码,管理多个CodeBuild作业的最佳方法是通过IaC。然而,似乎有可能有多种来源:https://docs.aws.amazon.com/codebuild/latest/userguide/sample-multi-in-out.html
gv8xihay2#
是的,可以将多个源代码添加到您的CodeBuild项目中。请转到您的项目-〉编辑-〉源代码-〉添加源代码。您需要为第二个源代码提供一个源代码标识符,并且可以使用buildspec中的环境变量$CODEBUILD_SRC_DIR_<sourceIdentifer>访问下载第二个源代码的文件夹。您可以添加第一个包含节点应用程序代码的codecommit源代码,并使用标识符CONFIG_REPO配置第二个源代码。在buildspec中,您可以通过执行以下操作将.env文件复制到节点应用程序代码的根目录:
$CODEBUILD_SRC_DIR_<sourceIdentifer>
CONFIG_REPO
version: 0.2 phases: build: commands: - ls -lart $CODEBUILD_SRC_DIR # lists your node repo - ls -lart $CODEBUILD_SRC_DIR_CONFIG_REPO # lists your config repo - cp $CODEBUILD_SRC_DIR_CONFIG_REPO/.env .
2条答案
按热度按时间8fq7wneg1#
我的印象是CodeBuild只能有一个源代码,管理多个CodeBuild作业的最佳方法是通过IaC。
然而,似乎有可能有多种来源:https://docs.aws.amazon.com/codebuild/latest/userguide/sample-multi-in-out.html
gv8xihay2#
是的,可以将多个源代码添加到您的CodeBuild项目中。请转到您的项目-〉编辑-〉源代码-〉添加源代码。
您需要为第二个源代码提供一个源代码标识符,并且可以使用buildspec中的环境变量
$CODEBUILD_SRC_DIR_<sourceIdentifer>
访问下载第二个源代码的文件夹。您可以添加第一个包含节点应用程序代码的codecommit源代码,并使用标识符
CONFIG_REPO
配置第二个源代码。在buildspec中,您可以通过执行以下操作将.env文件复制到节点应用程序代码的根目录: