Хэш-таблица передачи Azure в качестве параметра с PowerShell для шаблона ARM - PullRequest
0 голосов
/ 16 января 2019

Я хотел бы заменить свой файл параметров и просто указать параметр powershell. Мой файл параметров выглядит так:

{
  "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "subnets": {
      "value": {
        "settings": [
          {
            "name": "firstSubnet",
            "addressPrefix": "10.0.0.0/24"
          },
          {
            "name": "secondSubnet",
            "addressPrefix": "10.0.1.0/24"
          }
        ]
      }
    }
  }
}

Который я пытаюсь переопределить:

-subnets {"settings":[{"name": "firstSubnet","addressPrefix": "10.0.0.0/24"},{"name": "secondSubnet","addressPrefix": "10.0.1.0/24"]}}

Но я продолжаю получать ошибки. Каков правильный синтаксис для использования хэш-таблицы в качестве параметра?

1 Ответ

0 голосов
/ 16 января 2019

Ваш пример не является хеш-таблицей. Это просто строка JSON без кавычек.

Хеш-таблицы определены в PowerShell как

@{}

и массивы

@()

Итак, вы будете искать что-то похожее на это:

-subnets @{ 
             settings = @(
                 @{ 
                     name = 'foo'
                     address = 'bar'
                  }
             ) 
          }

и т. Д.

Вы можете использовать ConvertFrom-Json и ConvertTo-Json для преобразования JSON в / из хеш-таблиц и массивов PowerShell.

...