我有一个创建.zip包和projectName.SetParameters.xml我想用我的脚本在此改变中的projectName.SetParameters.xml文件中的参数构建TFS-2017 - 添加了一步输入的用户名和密码
我有一个powershell脚本与Mandotary参数,我希望用户输入他们的用户名和密码,然后才可以部署到TFS IIS我按照本指南link 更新:REALESE构建工作,但它不要求用户输入用户名和密码,我是不是要手动设置在PowerShell的步骤参数箱内?
在我的TFS我有一个PowerShell的步骤i将添加的参数-paramsFilePath C:/ somepath /.../.../ projectName.SetParameters.xml
param(
[string]$paramsFilePath,
[Parameter(Mandatory=$true)]
[string]$username,
[Parameter(Mandatory=$true)]
$password
)
Write-Verbose -Verbose "Entering script setParameters.ps1"
Write-Verbose -Verbose ("Path to Parameters: {0}" -f $paramsFilePath)
# get the environment variables
$vars = Get-ChildItem -path env:*
# read in the setParameters file
$contents = Get-Content -Path $paramsFilePath
# perform a regex replacement
$newContents = "";
$contents | % {
$line = $_
if ($_ -match "__Username__") {
$setting = Get-ChildItem -path env:* | ? { $_.Name -eq $Matches[1] }
if ($setting) {
Write-Verbose -Verbose ("Replacing key {0} with value from environment" -f $username.Name)
$line = $_ -replace "__Username__", $username.Value
}
}
$newContents = $line
}
Write-Verbose -Verbose "Overwriting SetParameters file with new values"
Set-Content $paramsFilePath -Value $newContents
Write-Verbose -Verbose "Exiting script setParameters.ps1"
这里是我的parameters.xml代码
<!--?xml version="1.0" encoding="utf-8" ?-->
<parameters>
<parameter name="machineURL" description="Please enter the name of the Environment" defaultvalue="_UrlValue_" tags="">
<parameterentry kind="XmlFile" scope="\\web.config$" match="/configuration/appSettings/add[@key='machineURL']/@value">
</parameterentry>
</parameter>
<parameter name="username" description="Please enter the username" defaultvalue="__UserName__" tags="">
<parameterentry kind="XmlFile" scope="\\web.config$" match="/configuration/appSettings/add[@key='username']/@value">
</parameterentry>
</parameter>
<parameter name="password" description="Please enter the password" defaultvalue="__Password__" tags="">
<parameterentry kind="XmlFile" scope="\\web.config$" match="/configuration/appSettings/add[@key='password']/@value">
</parameterentry>
</parameter>
</parameters>
嗨,我现在得到这个错误'不能绑定参数参数'用户名' –
您是否在您的释放定义创建变量? – k7s5a
是的,我得到它排序,但我有另一个问题一切似乎工作,但在我的setParameters.xml文件中,它只捕获第一个参数'