angular - 有没有办法在构建 Angular 应用程序时在 Azure CI 构建管道中提供environment.prod.ts 文件?

标签 angular azure azure-devops

我正在寻找将 environment.prod.ts 文件提供到 Azure CI 构建管道中的可能方法,因为我们不会 checkin 那些特定于环境的文件 (environment.prod.ts或environment.dev.ts)文件到存储库中。

是否有特定的 YAML 任务?如何确保 Azure CI 管道可以获取此文件以构建 Angular 应用程序。

提前致谢!

最佳答案

您可以使用 echo 等常规 Linux 命令动态创建文件。在这种情况下,请确保您的环境文件夹 (src/environments) 不为空(即使是空的 readme.md 文件也会工作)。

如果它为空,则 Azure CI 在克隆存储库时可能不会创建此目录。

之后,您可以在 azure-pipelines 脚本中使用 echo 命令,它将如下所示:-

# Node.js with Angular
# Build a Node.js project that uses Angular.
# Add steps that analyze code, save build artifacts, deploy, and more:
# https://learn.microsoft.com/azure/devops/pipelines/languages/javascript

trigger:
- main

pool:
  vmImage: ubuntu-latest

steps:
- task: NodeTool@0
  inputs:
    versionSpec: '14.x'
  displayName: 'Install Node.js'

- script: |
   echo $DEV_ENVIRONMENT>src/environments/environment.ts
   echo $PROD_ENVIRONMENT>src/environments/environment.prod.ts
   npm install -g @angular/cli
   npm install
   ng build --prod
 displayName: 'npm install and build'

检查脚本下的 echo 命令。

我已将 environment.tsenvironment.prod.ts 的内容存储在 DEV_ENVIRONMENTPROD_ENVIRONMENT 中这样开发人员就不知道文件里面有什么。

关于angular - 有没有办法在构建 Angular 应用程序时在 Azure CI 构建管道中提供environment.prod.ts 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67554305/

相关文章:

angular - @ngrx/效果 : testing an effect returns empty()

angular - 如何防止 Angular 中用户角色的操作

css - 如何添加垂直面板并将其用作 Angular 中的切换器?

angular - RXJS 将 Observable 转换为 bool 值

Azure Functions 未显示在门户的 Function 应用程序中

Azure 数据工厂参数 - 新手问题

azure - 机器人 channel 注册在迁移后自动分配位置 "global"

azure-devops - 有没有办法将页面从 "Confluence"传输到 "Azure Devops Wiki"

azure-devops - Azure Pipelines:将变量作为参数传递给模板

github - 使用 Azure DevOps 构建公共(public) GitHub 存储库