![](/img/trans.png)
[英]Azure DevOps - React App - Set Environment Variables in Release Pipeline
[英]How to set .env for react app deployed with azure devops pipeline on app service
我在 azure Devops 上开发了一个带有 CI/CD 的管道,用于在 Azure web 应用程序服务上部署 React 应用程序。 我在本地使用的是一个 .env 文件,这个文件是 on.gitignore。 我想知道如何设置 the.env 以便在生产环境中阅读它。
您可以查看以下文档:
.env
文件应该被检入源代码管理(不包括.env*.local
)。
如果您不想将.env
文件签入 DevOps,您可以在管道变量中添加变量:
另外,更多建议可以参考以下案例:
许多与此问题相关的建议解决方案可能不起作用,但我通过以下方式解决了它。 但是,首先让我解释一下为什么其他解决方案可能不会(不应该)起作用(如果我错了请纠正我)
所以这是我的解决方案 -
第一步:将所有这些.env 文件作为安全文件添加到 azure devops 库中。 您可以使用DownloadSecureFile@1
管道任务 (yml) 在构建机器中下载这些安全文件。 通过这种方式,我们确保在管道中的任务yarn build --mode development
之前在构建机器中提供了正确的 env 文件。
第 2 步:在您的 azure yml 管道中适当的位置添加以下任务。 如果您想查看完整示例,我已经创建了一个 github 存储库https://github.com/mail4hafij/react-yarn-azure-pipeline 。
# Download secure file from azure library
- task: DownloadSecureFile@1
inputs:
secureFile: '.env.development'
# Copy the .env file
- task: CopyFiles@2
inputs:
sourceFolder: '$(Agent.TempDirectory)'
contents: '**/*.env.development'
targetFolder: '$(YOUR_DEFINED_PROJECT_ROOT_FOLDER_VARIABLE)'
cleanTargetFolder: false
请注意,无法编辑安全文件,但您可以随时重新上传。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.