Powershell Split功能在VSTS Release管道中不起作用

时间:2019-04-22 08:54:57

标签: powershell

我编写了一个powershell脚本,该脚本以多个webapp(以逗号分隔)作为输入。 我正在使用Powershell拆分功能拆分这些webapp,并使用for-each循环遍历每个webapp,从而配置webapp。 在Powershell编辑器中一切正常,但是当我为VSTS发布管道配置相同的脚本时,分割功能不起作用,并导致失败。

输入:devopstestwebapp1,devopstestwebapp2

代码:$ WebAppName = $ WebAppName.Split(',')

输出(拆分后):devopstestwebapp1 devopstestwebapp2

错误:资源'Microsoft.Web / sites / devopstestwebapp1 找不到资源组“ DevOpsResourseGroup”下的“ devopstestwebapp2”。

以下是我的powershell脚本

# Parameters
param (   
    [Parameter(Position=0,mandatory=$true)]
    [string] $AADAppID,
    [Parameter(Position=1,mandatory=$true)]
    [string] $AADKey,
    [Parameter(Position=2,mandatory=$true)]
    [string] $TenantId,
    [Parameter(Position=3,mandatory=$true)]
    [string] $ResourceGroupName,
    [Parameter(Position=4,mandatory=$true)]
    [string] $ServerName,
    [Parameter(Position=5,mandatory=$true)]
    [string] $RGLocation,
    [Parameter(Position=6,mandatory=$true)]
    [string] $WebAppName,
    [Parameter(Position=7,mandatory=$true)]
    [string] $SubscriptionName
 )

    # Connect to Azure

    $ssAADKey = ConvertTo-SecureString $AADKey -AsPlainText -Force
    $psCredential = New-Object System.Management.Automation.PSCredential($AADAppID, $ssAADKey)

    Connect-AzureRmAccount -ServicePrincipal -Credential $psCredential -Subscription $SubscriptionName -TenantId $TenantId     
    write-host $WebAppName
    $WebAppName = $WebAppName.Split(',')
     write-host $WebAppName
    Foreach ($servicename in $WebAppName)
    {
        write-host $servicename

    }

enter image description here

1 个答案:

答案 0 :(得分:0)

以下与VSTS powershell任务完美配合:

将应用名称存储在变量中: enter image description here

$WebAppName = '$(WebAppName)'
write-host $WebAppName
foreach($servicename in $WebAppName.Split(','))
{
        write-host $servicename
}

输出:

2019-04-22T11:02:02.7680996Z devopstestwebapp1,devopstestwebapp2,devopstestwebapp3
2019-04-22T11:02:02.7737101Z devopstestwebapp1
2019-04-22T11:02:02.7750490Z devopstestwebapp2
2019-04-22T11:02:02.7765756Z devopstestwebapp3