115 lines
3.5 KiB
YAML
115 lines
3.5 KiB
YAML
---
|
|
- name: set up aws connection info
|
|
set_fact:
|
|
aws_connection_info: &aws_connection_info
|
|
aws_access_key: "{{ aws_access_key }}"
|
|
aws_secret_key: "{{ aws_secret_key }}"
|
|
security_token: "{{ security_token }}"
|
|
region: "{{ aws_region }}"
|
|
no_log: yes
|
|
- block:
|
|
- name: Test creating SQS queue
|
|
sqs_queue:
|
|
name: "{{ resource_prefix }}{{ 1000 | random }}"
|
|
<<: *aws_connection_info
|
|
register: create_result
|
|
- name: Assert SQS queue created
|
|
assert:
|
|
that:
|
|
- create_result.changed
|
|
- create_result.region == "{{ aws_region }}"
|
|
always:
|
|
- name: Test deleting SQS queue
|
|
sqs_queue:
|
|
name: "{{ create_result.name }}"
|
|
state: absent
|
|
<<: *aws_connection_info
|
|
register: delete_result
|
|
retries: 3
|
|
delay: 3
|
|
until: delete_result.changed
|
|
- name: Assert SQS queue deleted
|
|
assert:
|
|
that:
|
|
- delete_result.changed
|
|
- name: Test delete SQS queue that doesn't exist
|
|
sqs_queue:
|
|
name: "{{ resource_prefix }}{{ 1000 | random }}"
|
|
state: absent
|
|
<<: *aws_connection_info
|
|
register: delete_result
|
|
- name: Assert delete non-existant queue returns cleanly
|
|
assert:
|
|
that:
|
|
- delete_result.changed == False
|
|
- name: Test queue features
|
|
block:
|
|
- name: Test create queue with attributes
|
|
sqs_queue:
|
|
name: "{{ resource_prefix }}{{ 1000 | random }}"
|
|
default_visibility_timeout: 900
|
|
delivery_delay: 900
|
|
maximum_message_size: 9009
|
|
message_retention_period: 900
|
|
receive_message_wait_time: 10
|
|
policy:
|
|
Version: "2012-10-17"
|
|
Statement:
|
|
Effect: Allow
|
|
Action: "*"
|
|
<<: *aws_connection_info
|
|
register: create_result
|
|
- name: Assert queue created with configuration
|
|
assert:
|
|
that:
|
|
- create_result.changed
|
|
- create_result.default_visibility_timeout == "900"
|
|
- create_result.delivery_delay == "900"
|
|
- create_result.maximum_message_size == "9009"
|
|
- create_result.message_retention_period == "900"
|
|
- create_result.receive_message_wait_time == "10"
|
|
- create_result.policy.Version == "2012-10-17"
|
|
- create_result.policy.Statement.Effect == "Allow"
|
|
- create_result.policy.Statement.Action == "*"
|
|
always:
|
|
- name: Cleaning up queue
|
|
echo: "{{ create_result.name }}"
|
|
sqs_queue:
|
|
name: "{{ create_result.name }}"
|
|
state: absent
|
|
<<: *aws_connection_info
|
|
register: delete_result
|
|
retries: 3
|
|
delay: 3
|
|
until: delete_result.changed
|
|
- name: Test queue with redrive
|
|
block:
|
|
- name: Creating dead letter queue
|
|
sqs_queue:
|
|
name: "{{ resource_prefix }}{{ 1000 | random }}"
|
|
<<: *aws_connection_info
|
|
register: dead_letter_queue
|
|
- name: Test create queue with redrive_policy
|
|
sqs_queue:
|
|
name: "{{ resource_prefix }}{{ 1000 | random }}"
|
|
redrive_policy:
|
|
maxReceiveCount: 5
|
|
deadLetterTargetArn: "{{ dead_letter_queue.queue_arn }}"
|
|
<<: *aws_connection_info
|
|
register: create_result
|
|
- name: Assert queue created with configuration
|
|
assert:
|
|
that:
|
|
- create_result.changed
|
|
always:
|
|
- name: Cleaning up queue
|
|
sqs_queue:
|
|
name: "{{ item.name }}"
|
|
state: absent
|
|
<<: *aws_connection_info
|
|
register: delete_result
|
|
retries: 3
|
|
delay: 3
|
|
with_items:
|
|
- { name: "{{ create_result.name }}" }
|
|
- { name: "{{ dead_letter_queue.name }}" }
|