Я написал скрипт powershell, который принимает в качестве входных данных несколько веб-приложений (через запятую).
Я делю эти веб-приложения, используя функцию разбиения powershell, и настраиваю веб-приложения, обходя каждое из них, используя цикл for-each.
В редакторе Powershell все работает нормально, но когда я настраиваю тот же сценарий для конвейера выпуска VSTS, функция split не работает и приводит к сбою.
Ввод: devopstestwebapp1, devopstestwebapp2
Код: $ WebAppName = $ WebAppName.Split (',')
Вывод (после разделения): devopstestwebapp1 devopstestwebapp2
Ошибка: Ресурс 'Microsoft.Web / sites / devopstestwebapp1
devopstestwebapp2 'в группе ресурсов' DevOpsResourseGroup 'не найдено.
Ниже приведен мой скрипт 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](https://i.stack.imgur.com/FjbYs.png)