Мы создаем личную библиотеку из Azure задач DevOps для использования командами DevOps. С одной стороны, мы поддерживаем файл определения tasks.json
для каждой пользовательской задачи, в которой указываются входные параметры, которые инженеры должны будут предоставить, например,
"inputs": [
{
"name": "ConnectedServiceName",
"type": "connectedService:AzureRM",
"label": "Azure RM Subscription",
"defaultValue": "",
"required": true,
"helpMarkDown": "Select the Azure Resource Manager subscription for the deployment."
}
]
С другой стороны, мы запрашиваем входные значения ввода из PowerShell. как часть кода выполнения задачи, например:
$serviceNameInput = Get-VstsInput -Name ConnectedServiceNameSelector -Default 'ConnectedServiceName'
$serviceName = Get-VstsInput -Name $serviceNameInput -Default (Get-VstsInput -Name DeploymentEnvironmentName)
Требуется дисциплина и проницательность, чтобы идентификаторы были синхронизированы c. В идеале нам хотелось бы иметь доступный на лету прокси-класс PowerShell или файл модели, который обновляется каждый раз при выполнении этой задачи. json изменяется, предоставляя IntelliSense при программировании кода выполнения задачи.
Как мы можем настроить это наилучшим образом?