小编Ill*_*lia的帖子

如何在 devops Azure 管道中设置 process.env.var

我的任务是将 aspnet 核心 React 应用程序部署到 2 个不同的环境:开发环境和生产环境。每个环境都应单独配置。

我将 Azure DevOps 用于 CI/CD

AspNet 项目包含以下用于构建应用程序的命令

    <Exec WorkingDirectory="$(SpaRoot)" Command="npm install" />
    <Exec WorkingDirectory="$(SpaRoot)" Command="npm run build" />
Run Code Online (Sandbox Code Playgroud)

我使用 adal 进行授权,这就是为什么我必须传递一些对于 Dev 和 Prod 不同的秘密变量

const adalConfig = {
    tenant: process.env.REACT_APP_TENANT,
    clientId: process.env.REACT_APP_CLIENT_ID,
    redirectUri: process.env.REACT_APP_REDIRECT_URI,
Run Code Online (Sandbox Code Playgroud)

在 Azure devops 中,我使用以下命令设置参数:

echo ##vso[task.setvariable variable=REACT_APP_TENANT;isOutput=true]c00000-00ce-000-0f00-0000000004000
Run Code Online (Sandbox Code Playgroud)

在 azure devops 中,我有下一个用于 aspnet 核心构建应用程序的标准命令

  • .Net 核心安装程序
  • 资源
  • 运行命令(设置环境变量)
  • 建造
  • 发布

问题:

  1. 未设置环境变量。
  2. 我什至不知道如何为生产而不是为开发构建另一个人工制品。

也许您已经有将核心反应应用程序部署到 2 个不同环境的任务?或者,如果我需要更改部署策略,请提供建议。

我发现的唯一解决方案是使用 .env 文件,但我必须将此文件提交给 git - 从 master 部署它。而且我仍然不知道如何为 dev 和 prod 使用不同的文件。

azure-devops asp.net-core create-react-app

8
推荐指数
1
解决办法
3011
查看次数