我希望将create-react应用程序部署为AWS S3的静态站点。正在使用CodePipeline协调生成。
我们的代码库有REACT_APP_***变量,这些变量在构建过程中被注入。如何为管道的QA和Prod阶段注入不同的变量。这些变量指向后端和身份验证系统的不同配置。
作为管道的一部分,CodeBuild只运行一次,因此无法找出如何为QA和Prod.注入不同的变量
在构建规范文件中,您可以使用构建列表来定义具有不同环境变量的QA和Prod并行运行的构建。
batch:
build-list:
- identifier: qa_build
env:
variables:
REACT_APP_VAR1: qa_val_1
REACT_APP_VAR2: qa_val_2
REACT_APP_VAR3: qa_val_3
- identifier: prod_build
env:
variables:
REACT_APP_VAR1: prod_val_1
REACT_APP_VAR2: prod_val_2
REACT_APP_VAR3: prod_val_3
由于每个构建都有自己独立的工件,因此需要配置管道来处理此问题。此文档页面提供了此类配置的示例。