我正在寻找将 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.ts 和 environment.prod.ts 的内容存储在 DEV_ENVIRONMENT 和 PROD_ENVIRONMENT 中这样开发人员就不知道文件里面有什么。
关于angular - 有没有办法在构建 Angular 应用程序时在 Azure CI 构建管道中提供environment.prod.ts 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67554305/