X-Git-Url: http://git.squeep.com/?a=blobdiff_plain;f=roles%2Faws-management-queues%2Ftasks%2Fmain.yml;fp=roles%2Faws-management-queues%2Ftasks%2Fmain.yml;h=5c18f70f32482997538b4791ef73f2374cac8f7a;hb=61b2ef2ad67ef165855de4e15bb4e92ad965faa3;hp=0000000000000000000000000000000000000000;hpb=149ba4e7b5bb11ae7ae286c64c597a591bf191c5;p=awsible diff --git a/roles/aws-management-queues/tasks/main.yml b/roles/aws-management-queues/tasks/main.yml new file mode 100644 index 0000000..5c18f70 --- /dev/null +++ b/roles/aws-management-queues/tasks/main.yml @@ -0,0 +1,58 @@ +--- +- assert: + that: + - MANAGEMENT_EVENT_FAILURE_QUEUE != '' + - MANAGEMENT_EVENT_QUEUE != '' + tags: ['check_vars'] + +- name: Management failure queue. + sqs_queue: + state: present + region: "{{ vpc_region }}" + name: "{{ MANAGEMENT_EVENT_FAILURE_QUEUE }}" + default_visibility_timeout: 30 + message_retention_period: 1209600 + maximum_message_size: 262144 + delivery_delay: 0 + receive_message_wait_time: 0 + register: management_failure_queue + +# as of Ansible 2.2.1.0 sqs_queue does not seem to be returning queue_arn + +- name: Managment queue. + sqs_queue: + state: present + region: "{{ vpc_region }}" + name: "{{ MANAGEMENT_EVENT_QUEUE }}" + default_visibility_timeout: 30 + message_retention_period: 345600 + maximum_message_size: 262144 + delivery_delay: 0 + receive_message_wait_time: 20 + redrive_policy: + maxReceiveCount: 5 + deadLetterTargetArn: "arn:aws:sqs:{{ vpc_region }}:{{ ACCT_ID }}:{{ MANAGEMENT_EVENT_FAILURE_QUEUE }}" +# deadLetterTargetArn: "{{ management_failure_queue.queue_arn }}" + register: management_queue + +- name: Management topic and subscription. + sns_topic: + state: present + region: "{{ vpc_region }}" + name: "{{ MANAGEMENT_EVENT_QUEUE }}" + display_name: "{{ MANAGEMENT_EVENT_QUEUE_SHORT }}" + purge_subscriptions: False + subscriptions: +# - endpoint: "{{ management_queue.queue_arn }}" + - endpoint: "arn:aws:sqs:{{ vpc_region }}:{{ ACCT_ID }}:{{ MANAGEMENT_EVENT_QUEUE }}" + protocol: "sqs" + register: management_topic + +- name: Management notice topic + sns_topic: + state: present + region: "{{ vpc_region }}" + name: "{{ MANAGEMENT_NOTICE_TOPIC }}" + display_name: "{{ MANAGEMENT_NOTICE_TOPIC_SHORT }}" + purge_subscriptions: False + register: management_notice_topic