【问题标题】:Read parameter from XAML Post build argument into Powershell Script从 XAML Post 构建参数读取参数到 Powershell 脚本
【发布时间】:2018-01-01 07:40:25
【问题描述】:

我有一个 powershell 脚本,它根据 XML 属性文件中的“类型”读取节点值,现在我想从 TFS Git XAML 构建过程中读取一个参数“类型”节点值。如何在 XAML 中声明一个参数构建过程并在构建到脚本时读取它?

$env="Read from XAML build Process"

$xmlDocPath="D:\*****\ScriptsConfig.xml";
[xml]$xmlFile = Get-Content $xmlDocPath;
$PathToDropUIcssandjss=$xml.Objects.Object | Where-Object {$_.type -eq $env} | Select-Object -ExpandProperty PathToDropUIcssandjss
$DeployingPackageBranchFolderName=$xml.Objects.Object | Where-Object {$_.type -eq $args[0]} | Select-Object -ExpandProperty DeployingPackageBranchFolderName
$BranchName=$xml.Objects.Object | Where-Object {$_.type -eq $env} | Select-Object -ExpandProperty BranchName
$ProjectName=$xml.Objects.Object | Where-Object {$_.type -eq $env} | Select-Object -ExpandProperty ProjectName
$Automation=$xml.Objects.Object | Where-Object {$_.type -eq $env} | Select-Object -ExpandProperty Automation
$DeploymentEnvironment=$xml.Objects.Object | Where-Object {$_.type -eq $env} | Select-Object -ExpandProperty DeploymentEnvironment

【问题讨论】:

  • 您的意思是要在 TFS 构建过程中在 PowerShell 脚本中分配变量吗?你在使用 InvokeProcess 活动吗?
  • 我的 Git 模板中没有调用进程

标签: xml git powershell xaml tfs


【解决方案1】:

我现在可以通过以下命令从 TFS 读取参数

  [CmdletBinding()]
    param([string]$args)

    $env=[string]$args

但参数 $env 在下面显示的命令中不起作用,但如果我单独显示它,它在此块之外工作

$SourceDir = $Env:TF_BUILD_SOURCESDIRECTORY
$xmlDocPath="$SourceDir\ScriptsConfig.xml";
[xml]$xmlFile = Get-Content $xmlDocPath;
$PathToDropUIcssandjss=$xml.Objects.Object | Where-Object {$_.type -eq $env} | Select-Object -ExpandProperty PathToDropUIcssandjss
$DeployingPackageBranchFolderName=$xml.Objects.Object | Where-Object {$_.type -eq $env} | Select-Object -ExpandProperty DeployingPackageBranchFolderName
$BranchName=$xml.Objects.Object | Where-Object {$_.type -eq $env} | Select-Object -ExpandProperty BranchName
$ProjectName=$xml.Objects.Object | Where-Object {$_.type -eq $env} | Select-Object -ExpandProperty ProjectName
$Automation=$xml.Objects.Object | Where-Object {$_.type -eq $env} | Select-Object -ExpandProperty Automation
$DeploymentEnvironment=$xml.Objects.Object | Where-Object {$_.type -eq $env} | Select-Object -ExpandProperty DeploymentEnvironment

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-11-13
    • 1970-01-01
    • 1970-01-01
    • 2015-12-18
    • 2014-08-25
    • 2021-12-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多