Spec-Zone.ru › Chef 18

Ресурс aws_sqs_queue

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

Используйте ресурс аудита InSpec aws_sqs_queue для проверки свойств отдельной очереди AWS Simple Queue Service.

Синтаксис

describe aws_sqs_queue(queue_url: 'https://sqs.ap-southeast-2.amazonaws.com/1212121/MyQueue') do
  it { should exist }
end

Параметры

queue_url (обязательно)

Этот ресурс принимает один параметр — URL очереди SQS. Он может быть передан либо как строка, либо как queue_url: 'value' запись ключ-значение в хэше.

См. также документацию AWS по SQS.

Свойства

Свойство Описание
arn ARN очереди SQS.
is_fifo_queue Булево значение, указывающее, является ли эта очередь очередью FIFO.
visibility_timeout Целое число, указывающее тайм-аут видимости сообщения в секундах.
maximum_message_size Целое число, указывающее максимальный размер сообщения в байтах.
message_retention_period Целое число, указывающее максимальный срок хранения сообщения в секундах.
delay_seconds Целое число, указывающее задержку очереди в секундах.
receive_message_wait_timeout_seconds Целое число, указывающее количество секунд, в течение которого попытка получения сообщения будет ожидать перед возвратом.
content_based_deduplication Булево значение, указывающее, включена ли или нет дедупликация на основе содержимого.
redrive_policy Строка, указывающая политику перенаправления.

Примеры

Убедитесь, что очередь существует и имеет тайм-аут видимости 300 секунд

describe aws_sqs_queue('https://sqs.ap-southeast-2.amazonaws.com/1212121/MyQueue') do
  it { should exist }
  its('visibility_timeout') { should be 300 }
end

Убедиться, что максимальный размер сообщения установлен

describe aws_sqs_queue('https://sqs.ap-southeast-2.amazonaws.com/1212121/MyQueue') do
    its('maximum_message_size') { should be 262144 } # 256 KB
end

Проверить время задержки

describe aws_sqs_queue('https://sqs.ap-southeast-2.amazonaws.com/1212121/MyQueue') do
    its('delay_seconds') { should be 0 }
end

Убедиться, что сообщения хранятся в течение 4 дней

describe aws_sqs_queue('https://sqs.ap-southeast-2.amazonaws.com/1212121/MyQueue') do
    its('message_retention_period') { should be 345600 } # 4 days
end

Проверить, является ли очередь FIFO

describe aws_sqs_queue('https://sqs.ap-southeast-2.amazonaws.com/1212121/MyQueue') do
    its('is_fifo_queue') { should be false }
end

Сопоставители

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

exist

Контроль пройдет, если describe вернет по крайней мере один результат.

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

describe aws_sqs_queue('https://sqs.ap-southeast-2.amazonaws.com/1212121/MyQueue') do
  it { should exist }
end

describe aws_sqs_queue('https://sqs.ap-southeast-2.amazonaws.com/1212121/MyQueueWhichDoesntExist') do
  it { should_not exist }
end

Разрешения AWS

Вашему Принципалу потребуется sqs:GetQueueAttributes действие с установленным значением Effect на Allow. Более подробную документацию можно найти по адресу Действия, ресурсы и ключи условий для Amazon SQS.

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

Spec-Zone.ru

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