【问题标题】:update source code of react through azure pipeline通过 azure 管道更新 react 的源代码
【发布时间】:2020-12-23 11:42:42
【问题描述】:
我在 .env 文件中创建了一个反应环境变量,并且能够通过命令提示符或 power shell 更新它现在我的目标是通过 azure 管道更新它,所以添加一个 powershell 脚本。但我无法弄清楚如何通过 azure pipeline powershell 脚本在 .env 文件中读取或写入数据。我希望更改不同环境开发阶段产品的基本 url (base_url_dev = https://projectName.dev.azurewebsites.net/)。如果有其他方法请告诉我
【问题讨论】:
标签:
reactjs
powershell
azure-devops
【解决方案1】:
你会像这样提交你的文件:
base_url = '#{base_url}#'(永远不要将环境特定的值提交到源代码中)
然后将每个 AzDo Stage 中的 base_url 变量设置为实际值。 (也可以使用阶段范围的变量组)
在每个阶段,使用replacetokens 步骤并将.env 文件作为目标,将#{base_url}# 替换为您为每个阶段声明的实际值。
【解决方案2】:
通过 azure pipeline 更新 react 源代码
我们可以从.env文件中删除base url,然后使用内联powershell任务通过Logging Command设置base url:
Write-Host "##vso[task.setvariable variable=REACT_BASE_URL;]$(REACT_BASE_URL)"
然后在变量标签中为不同阶段定义不同值的变量REACT_BASE_URL:
或者,就像 michiel 说的,我们可以使用任务Replace Tokens 来更新.env 文件中的值。
更改base_urls values to #{REACT_BASE_URL}#`:
REACT_BASE_URL = #{REACT_BASE_URL}#
然后,还在“变量”选项卡中为不同阶段定义了具有不同值的变量REACT_BASE_URL。
并在管道中添加任务 Replace Tokens: