【问题标题】:How to write devapp property to deploy.properties file如何将 devapp 属性写入 deploy.properties 文件
【发布时间】:2019-03-06 08:43:07
【问题描述】:

我们有一个实施了 BTDF 的 biztalk 解决方案。我们正在使用 Urban 代码进行自动化。我们正在尝试将 prebuild.ps1 文件中的一个属性设置为 deploy.properties 文件。我怎样才能做到这一点?我尝试了在prebuild.ps1 文件中添加的以下代码,但没有运气。

$DeployPropertiesSrcdeploy.propeties 文件的路径
$versionToUse → 版本

echo “deployApps=@(Projectname -$versionToUse)” >> $DeployPropertiesSrc    

还尝试将一个属性从使用 PowerShell 脚本复制到属性文件:

echo “deployApps=@(Projectname)” >> $DeployPropertiesSrc 

【问题讨论】:

  • 定义“不走运”。你期待什么结果?你实际得到了什么结果?
  • 附带说明:您可能希望避免在脚本中使用印刷引号。尽管它们大部分时间都在工作,但它们偶尔也会引起问题。

标签: powershell biztalk


【解决方案1】:

示例 1

假设在脚本文件中定义了$DeployPropertiesSrc$versionToUse 变量,您可以在该脚本中添加以下内容:

$DeployPropertiesSrc = "<FolderPath>\deploy.properties"
$versionToUse = "10.0.2"
"deployApps=@(Projectname -$versionToUse)" | Add-Content $DeployPropertiesSrc

以下是运行代码后deploy.properties文件的内容:

Get-Content $DeployPropertiesSrc
deployApps=@(Projectname -10.0.2)

示例 2

如果变量值在您当前的范围内并且您不希望它们存储在脚本文件中,那么您可以更新您的脚本文件以使用传递给它的参数。请记住,为简单起见,我在这里使用未声明的参数。

prebuild.ps1的内容:

"deployApps=@(Projectname -$($args[0]))" | Add-Content $args[1]

然后您可以使用如下参数调用上述脚本:

& .\prebuild.ps1 "10.8" ".\deploy.properties"

或者:

$versionToUse = "7.10.3"
$DeployPropertiesSrc = "some_path\deploy.properties"
& .\prebuild.ps1 $versionToUse $DeployPropertiesSrc
  • 如果决定参数路由,我个人会选择使用 命名参数。如果命名参数未设置为强制, 您可以控制该代码块是否执行,甚至可以为参数分配默认值。如果将这部分脚本制作成一个函数,您将获得另一个级别的控制权。使用 没有任何参数检查的未声明参数,可以 导致不必要的错误。有时您可能希望不带参数调用脚本,如果仅在我的示例 2 中添加代码块,则会出现错误。

【讨论】:

    猜你喜欢
    • 2011-04-06
    • 1970-01-01
    • 2023-04-01
    • 1970-01-01
    • 2017-12-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-08
    相关资源
    最近更新 更多