Spec-Zone.ru › Chef 18

Ресурс aws_nat_gateways

[Редактировать на GitHub]

Используйте ресурс аудита InSpec aws_nat_gateways для проверки свойств всех шлюзов NAT AWS, принадлежащих учётной записи AWS.

Синтаксис

Блок aws_nat_gateways ресурса собирает все шлюзы NAT и затем проверяет эту группу.

describe aws_nat_gateways do
  it { should exist }
end

Параметры

Этот ресурс не ожидает никаких параметров.

Свойства

Свойство Описание
ids Идентификатор шлюза NAT. Название поля — id.
names Значение тега Name. Оно nil, если не определено. Название поля — name.
vpc_ids Идентификатор VPC, в котором находится шлюз NAT. Название поля — vpc_id.
subnet_ids Идентификатор подсети, в которой размещён шлюз NAT. Название поля — subnet_id.
tags Хэш, в котором каждая пара ключ-значение соответствует тегу шлюза NAT. Название поля — tags.
states Состояние шлюза NAT. Допустимые значения: pending, failed, available, deleting и deleted. Название поля — state.

Примеры

Проверка, что существует ровно 3 шлюза NAT

describe aws_nat_gateways do
  its('count') { should cmp 3 }
end

Запрос идентификаторов всех шлюзов NAT

Используйте этот ресурс InSpec, чтобы запросить идентификаторы всех шлюзов NAT, а затем провести глубокую проверку с помощью aws_nat_gateway отдельного ресурса InSpec AWS.

aws_nat_gateways.ids.each do |id|
  describe aws_nat_gateway(id: id) do
    its('state') { should eq 'available' }
  end
end

Для получения дополнительных примеров обратитесь к интеграционным тестам.

Обработчики

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

exist

Контроль пройдёт, если describe вернёт хотя бы один результат. Имена полей, описанные в таблице свойств, должны использоваться для <property> в where условии.

Используйте should_not для проверки того, что сущность не должна существовать.

describe aws_nat_gateways.where( <property>: <value>) do
  it { should exist }
end

describe aws_nat_gateways.where( <property>: <value>) do
  it { should_not exist }
end

Дополнительную информацию о том, как использовать таблицу фильтров, можно найти здесь.

Разрешения AWS

У вашего Принципала должно быть разрешено действие ec2:DescribeNatGateways.

Подробную документацию можно найти по адресам Действия, ресурсы и ключи условия для Amazon EC2 и Действия, ресурсы и ключи условия для Identity And Access Management.

© 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/aws_nat_gateways/

Spec-Zone.ru

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