Мой мастер Jenkins работает на linux, и я пытаюсь запустить этап, содержащий powershell, на сервере Windows.
Мне удалось запустить Get-ChildItem и передать выходные данные на следующий этап, но запустить vSphereКомандлеты PowerCLI ускользают от меня.
#!/usr/bin/env groovy
def datacenter = ''
pipeline {
agent none
stages {
stage( 'PShell' ) {
agent { label 'VmWareTools 2016' }
steps {
script {
def output = powershell(returnStdout: true, script: $/
try {
Import-Module KcsModule -Force
$VMWareCred = Read-CredentialFile mycreds.file
$VCenters = "VCenter1","VCenter2"
$VCenters | % { IF ($global:DefaultVIServers.Name -notcontains $_) { Connect-VIServer $_ -Credential $VMWareCred -WarningAction SilentlyContinue }}
((Get-VM $($env:VM) | where {$_.PowerState -eq 'PoweredOn'}).Uid.Split('`@`:')[1])
}
catch { echo "Unable to locate DataCenter" }
finally { Disconnect-VIServer * -Force }
/$)
datacenter = output
}
}
}
groovy.lang.MissingPropertyException: Нет такого свойства: VMWareCred для класса: WorkflowScript
Возможно ли выполнить задание шага сборкичто invoke-команда со скриптом и захватить вывод в переменную для использования на следующем этапе?