Spec-Zone.ru › Chef 18

azurerm_resource_groups ресурс

[править на GitHub]

Используйте ресурс проверки InSpec для аудита свойств одного или нескольких ресурсов Azure Resource Groups.

Группа ресурсов — это объединение ресурсов Azure. Это позволяет выполнять общие команды над группой ресурсов.

Версия Azure REST API

Этот ресурс взаимодействует с версией 2018-02-01 API управления Azure. Дополнительную информацию можно найти в официальной документации Azure.

В настоящее время нет способа выбрать версию документации API Azure. Если вы обнаружите более новую версию, указанную в официальной документации, откройте вопрос или отправьте запрос на добавление с использованием обновленной версии.

Доступность

Установка

Этот ресурс доступен в inspec-azure пакете ресурсов. Чтобы использовать его, добавьте следующее в свой inspec.yml в вашем профиле верхнего уровня:

depends:
  - name: inspec-azure
    git: https://github.com/inspec/inspec-azure.git

Вам также потребуется настроить свои учетные данные Azure; см. README пакета ресурсов.

Версия

Этот ресурс впервые стал доступен в версии 1.0.0 пакета ресурсов inspec-azure.

Синтаксис

Блок ресурса azurerm_resource_groups использует необязательный фильтр для выбора группы ресурсов и затем проверяет эту группу.

describe azurerm_resource_groups do
  ...
end

Примеры

Следующие примеры демонстрируют использование этого ресурса проверки InSpec.

Проверка существования группы ресурсов

describe azurerm_resource_groups do
  its('names') { should include 'MyResourceGroup' }
end

Требование существования группы ресурсов

describe azurerm_resource_groups.where(name: 'MyResourceGroup')
  it { should exist }
end

Использование имен для получения всех виртуальных машин в Azure

azurerm_resource_groups.names.each do |resource_group|
  describe azurerm_virtual_machines(resource_group: resource_group, name: 'MyVmName') do
    its('monitoring_agent_installed') { should be true }
  end
end

Критерии фильтрации

  • names

names

Фильтровать результаты, чтобы включить только те группы ресурсов, которые соответствуют заданному имени. Это строковое значение.

describe azurerm_resource_groups.where { name.start_with?('InSpec') } do
  it { should exist }
end

Атрибуты

  • ids
  • names
  • tags

names

Свойство ids предоставляет список всех идентификаторов групп ресурсов.

its('ids') { should include 'MyResourceGroupID' }

Свойство names предоставляет список всех имен групп ресурсов.

its('names') { should include 'MyResourceGroup' }

Свойство tags предоставляет список всех тегов группы ресурсов.

its('tags') { should include '{MyResourceGroupTag=""}' }

Матчеры

У этого ресурса проверки InSpec есть следующие специальные матчеры. Полный список доступных матчеров можно найти на нашей странице Универсальные матчеры.

exists

Контроль пройдет, если фильтр вернет по меньшей мере один результат. Используйте should_not если ожидается ноль совпадений.

describe azurerm_resource_groups do
  it { should exist }
end

Разрешения Azure

Ваш Сервисный Принцип должен быть настроен с ролью contributor на подписке, которую вы хотите протестировать.

© Chef Software, Inc.
Licensed under the Creative Commons Attribution 3.0 Unported License.
The Chef™ Mark and Chef Logo are either registered trademarks/service marks or trademarks/servicemarks of Chef, in the United States and other countries and are used with Chef Inc's permission.
We are not affiliated with, endorsed or sponsored by Chef Inc.
https://docs.chef.io/inspec/resources/azurerm_resource_groups/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API