Переопределить параметр с пробелом в имени параметра - PullRequest
0 голосов
/ 30 октября 2019

В задаче Развертывание группы ресурсов Azure могу ли я переопределить параметр , для которого в его имени ? * 1009 есть пробел*

Я следовал этому руководству , чтобы создать проект развертывания группы ресурсов Azure. В этом проекте я могу создать параметры с пробелами в имени и успешно развернуть его через Visual Studio.

azuredeploy.json

{
  "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "My easy to read parameter": {
      "type": "string",
      "defaultValue": "hello world"
    }
  },
  "resources": [
    {
      "name": "[parameters('My easy to read parameter')]",
      "type": "Microsoft.Storage/storageAccounts",
      "location": "[resourceGroup().location]",
      "apiVersion": "2016-01-01",
      "sku": {
        "name": "[parameters('StorageType')]"
      },
      "dependsOn": [],
      "tags": {
        "displayName": "MyTag"
      },
      "kind": "Storage"
    }
  ]
}

Похоже, яможно переопределить параметры, используя это: overrideParameters: '-myNotSoEasyToReadParameter integration-webfarm' source .

Как мне это сделать для параметра с пробелами?

overrideParameters: '-My easy to read parameter integration-webfarm'

1 Ответ

0 голосов
/ 06 ноября 2019

Ответ Да и Нет .

Да означает, что это специальное имя параметра My easy to read parameter можно переопределить. И Нет означает, что используемый вами подход неверен.

Во-первых, hello world является недопустимым значением. Поскольку вы определили, что это тип Microsoft.Storage/storageAccounts, он не позволяет использовать символы, кроме строчных букв и цифр, включая пробелы.

Чтобы добиться переопределения имени параметра My easy to read parameter, вы не можете напрямую переопределить его в конфигурации задачи:

enter image description here

Имяс пробелами не может быть распознано задачей. Из-за пробелов эта задача не смогла обработать это специальное имя как одну завершенную строку и попытается разобрать его. Тогда вы получите сообщение об ошибке, как показано ниже:

enter image description here

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


Правильный и успешный метод переопределения использует json-файл параметра переопределения.

Создайте файл json нового параметра, затем укажите имя параметра и значение, которое вы хотите переопределить.

Например:

(1). Это мой файл json шаблона с именем параметра My easy to read parameter и значением merlinliang:

enter image description here

(2). Теперь создайте еще один файл параметров json . В нем указано новое значение merlinoverride:

enter image description here

(3). В конфигурации задачи развертывания ARM настройте следующим образом:

enter image description here

Вы можете видеть, что имя было успешно переопределено:

enter image description here

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