Проблемы с вызовом файла JSON с помощью powershell - PullRequest
0 голосов
/ 09 мая 2019

Я пытаюсь запустить простую команду power-shell для вызова файла json для развертывания некоторых ресурсов в Azure, но каждый раз при попытке запустить файл выдает одни и те же ошибки. Я получаю сообщение об ошибке -

New-AzDeployment : Cannot retrieve the dynamic parameters for the cmdlet. Invalid property identifier character: �. Path '', line 2, position 0.
At line:1 char:1
+ New-AzDeployment -Name $DeploymentName -Location uksouth -TemplateUri ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo          : InvalidArgument: (:) [New-AzDeployment], ParameterBindingException
+ FullyQualifiedErrorId : GetDynamicParametersException,Microsoft.Azure.Commands.ResourceManager.Cmdlets.Implementation.NewAzureDeploymentCmdlet

ниже - PowerShell, я пытаюсь запустить -

$DeploymentSubscription = "Visual Studio Enterprise with MSDN"
$DeploymentRSG = "xyz"
$DeploymentName = "vvv"
$ParameterRoute = "D:\xyz\json\VM\"
$ParameterFile = $ParameterRoute + "Build.json"
$TemplateFileRoute = "D:\xyz\VM\"
$TemplateFileName = "Deploy_RG_Resources.json"
$TemplateFile = $TemplateFileRoute + $TemplateFileName
$TemplateFileURi = $TemplateFileRoute + $TemplateFileName

New-AzResourceGroupDeployment -Name $DeploymentName -ResourceGroupName $DeploymentRSG -DeploymentDebugLogLevel All -Verbose -TemplateUri $TemplateFileURi -TemplateParameterFile $ParameterFile

Спасибо

Ответы [ 3 ]

0 голосов
/ 09 мая 2019

Попробуйте использовать -TemplateFile в качестве параметра вместо -TemplateUri, если файл шаблона находится на локальном компьютере.

0 голосов
/ 15 мая 2019

Теперь это решено. Вопрос был с синтаксисом шаблона JSON. Довольно странно, хотя я проверял шаблон много раз

0 голосов
/ 09 мая 2019

Эта ошибка очень специфична. То, что вы передаете, действительно. Файлы справки для командлета показывают эту команду в действии.

New-Az группы ресурсов развертывания

$newAzResourceGroupDeploymentSplat = @{
    TemplateParameterFile = "D:\Azure\Templates\EngSiteParams.json"
    TemplateObject = $TemplateObject
    ResourceGroupName = "ContosoEngineering"
}
New-AzResourceGroupDeployment @newAzResourceGroupDeploymentSplat

Запишите полный файл UNC для файла .json.

Но вы делаете это ..

$ParameterFile = $ParameterRoute + "Build.json"

... и исходя из вашего поста, это не путь к вашему файлу .json.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...