azurerm_resource_groups ресурс
Используйте ресурс аудита InSpec, чтобы проверить свойства некоторых или всех групп Azure Resource Groups.
Группа ресурсов — это группировка Azure-ресурсов. Это позволяет выполнить общую команду для группы ресурсов.
Версия Azure REST API
Этот ресурс взаимодействует с версией 2018-02-01 API Azure Management. Более подробную информацию можно найти в официальной документации 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
Атрибуты
idsnamestags
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/