output of "Attach WAF to ALBs:

TASK [Attach WAF to ALBs] *
**************************************************************************************************************
**

Thursday 24 August 2023  12:34:47 -0700 (0:00:00.305)       0:00:33.257 *
********

failed: [localhost] (item=us-east-1) => {"ansible_loop_var": "item", 
"changed": true, "cmd": "for alb_arn in 
['arn:aws:elasticloadbalancing:us-east-1:<>:loadbalancer/app/Web-QAtest/c1fba8d4f0526447',
 
'arn:aws:elasticloadbalancing:us-east-1:<>:loadbalancer/app/Service-QAtest/1c8cde570dbc2c98',
 
'arn:aws:elasticloadbalancing:us-east-1:<>:loadbalancer/app/ServiceInt-QAtest/e8b1dcfb2f17b6e1'];
 
do\n  echo \"ALB ARN: $alb_arn\"\n  echo \"WAF ARN: 
arn:aws:wafv2:us-east-1:<>:regional/webacl/QAtest-ALB/11dd2e60-7d87-4827-8be6-6b2660b759ee\"\n
  
aws wafv2 associate-web-acl    --web-acl-arn 
\"arn:aws:wafv2:us-east-1:<>:regional/webacl/QAtest-ALB/11dd2e60-7d87-4827-8be6-6b2660b759ee\"
  
  --resource-arn $alb_arn    --profile \"<>\"    --region 
\"us-east-1\"\ndone\n", "delta": "0:00:12.982311", "end": "2023-08-24 
12:35:01.526408", "item": "us-east-1", "msg": "non-zero return code", "rc": 
255, "start": "2023-08-24 12:34:48.544097", "stderr": "\nAn error occurred 
(WAFInvalidParameterException) when calling the AssociateWebACL operation: 
Error reason: The ARN isn't valid. A valid ARN begins with arn: and 
includes other information separated by colons or slashes., field: 
RESOURCE_ARN, parameter: 
[arn:aws:elasticloadbalancing:us-east-1:<>:loadbalancer/app/Web-QAtest/c1fba8d4f0526447,\n\nAn
 
error occurred (WAFNonexistentItemException) when calling the 
AssociateWebACL operation: AWS WAF couldn’t perform the operation because 
your resource doesn’t exist.\n\nAn error occurred 
(WAFNonexistentItemException) when calling the AssociateWebACL operation: 
AWS WAF couldn’t perform the operation because your resource doesn’t 
exist.", "stderr_lines": ["", "An error occurred 
(WAFInvalidParameterException) when calling the AssociateWebACL operation: 
Error reason: The ARN isn't valid. A valid ARN begins with arn: and 
includes other information separated by colons or slashes., field: 
RESOURCE_ARN, parameter: 
[arn:aws:elasticloadbalancing:us-east-1:<>:loadbalancer/app/Web-QAtest/c1fba8d4f0526447,",
 
"", "An error occurred (WAFNonexistentItemException) when calling the 
AssociateWebACL operation: AWS WAF couldn’t perform the operation because 
your resource doesn’t exist.", "", "An error occurred 
(WAFNonexistentItemException) when calling the AssociateWebACL operation: 
AWS WAF couldn’t perform the operation because your resource doesn’t 
exist."], "stdout": "ALB ARN: 
[arn:aws:elasticloadbalancing:us-east-1:<>:loadbalancer/app/Web-QAtest/c1fba8d4f0526447,\nWAF
 
ARN: 
arn:aws:wafv2:us-east-1:<>:regional/webacl/QAtest-ALB/11dd2e60-7d87-4827-8be6-6b2660b759ee\nALB
 
ARN: 
arn:aws:elasticloadbalancing:us-east-1:<>:loadbalancer/app/Service-QAtest/1c8cde570dbc2c98,\nWAF
 
ARN: 
arn:aws:wafv2:us-east-1:<>:regional/webacl/QAtest-ALB/11dd2e60-7d87-4827-8be6-6b2660b759ee\nALB
 
ARN: 
arn:aws:elasticloadbalancing:us-east-1:<>:loadbalancer/app/ServiceInt-QAtest/e8b1dcfb2f17b6e1]\nWAF
 
ARN: 
arn:aws:wafv2:us-east-1:<>:regional/webacl/QAtest-ALB/11dd2e60-7d87-4827-8be6-6b2660b759ee",
 
"stdout_lines": ["ALB ARN: 
[arn:aws:elasticloadbalancing:us-east-1:<>:loadbalancer/app/Web-QAtest/c1fba8d4f0526447,",
 
"WAF ARN: 
arn:aws:wafv2:us-east-1:<>:regional/webacl/QAtest-ALB/11dd2e60-7d87-4827-8be6-6b2660b759ee",
 
"ALB ARN: 
arn:aws:elasticloadbalancing:us-east-1:<>:loadbalancer/app/Service-QAtest/1c8cde570dbc2c98,",
 
"WAF ARN: 
arn:aws:wafv2:us-east-1:<>:regional/webacl/QAtest-ALB/11dd2e60-7d87-4827-8be6-6b2660b759ee",
 
"ALB ARN: 
arn:aws:elasticloadbalancing:us-east-1:<>:loadbalancer/app/ServiceInt-QAtest/e8b1dcfb2f17b6e1]",
 
"WAF ARN: 
arn:aws:wafv2:us-east-1:<>:regional/webacl/QAtest-ALB/11dd2e60-7d87-4827-8be6-6b2660b759ee"]}


On Friday, August 25, 2023 at 11:26:35 AM UTC+5:30 Dick Visser wrote:

> And the output of "Attach WAF to ALBs"?
>
> Sent from Gmail Mobile
>
>
> On Fri, 25 Aug 2023 at 06:52, Shivani Arora <[email protected]> wrote:
>
>> Hey Dick,
>>
>> Thanks for responding.
>>
>> Please find the attached debug output as requested
>>
>> TASK [Display ALB ARNs] 
>> ************************************************************************************
>> Thursday 24 August 2023  13:04:34 -0700 (0:00:00.338)       0:00:24.776 
>> *******
>> ok: [localhost] => {
>>     "alb_map_arns": {
>>         "eu-central-1": [
>>             
>> "arn:aws:elasticloadbalancing:eu-central-1:<profile>:loadbalancer/app/Web-QAtest/78c12741885fcfbb",
>>             
>> "arn:aws:elasticloadbalancing:eu-central-1:<profile>:loadbalancer/app/Service-QAtest/a22b43074f64f9d7",
>>             
>> "arn:aws:elasticloadbalancing:eu-central-1:<profile>:loadbalancer/app/ServiceInt-QAtest/2f7fff2fb7d354a7"
>>         ],
>>         "us-east-1": [
>>             
>> "arn:aws:elasticloadbalancing:us-east-1:<profile>:loadbalancer/app/Web-QAtest/c1fba8d4f0526447",
>>             
>> "arn:aws:elasticloadbalancing:us-east-1:<profile>:loadbalancer/app/Service-QAtest/1c8cde570dbc2c98",
>>             
>> "arn:aws:elasticloadbalancing:us-east-1:<profile>:loadbalancer/app/ServiceInt-QAtest/e8b1dcfb2f17b6e1"
>>         ]
>>     }
>> }
>>
>> On Friday, August 25, 2023 at 3:06:14 AM UTC+5:30 Dick Visser wrote:
>>
>>> Hii
>>>
>>> You left out important information. For instance the output of the 
>>> "Display ALB ARNs" debug task.
>>> That is used in your shell command at " for alb_arn in {{ 
>>> alb_map_arns[item] }}; do", so that is important.
>>> Post that debug output.
>>> Or, post the output of the "Attach WAF to ALBs" task with -vv.
>>>
>>>
>>> On Thu, 24 Aug 2023 at 21:45, Shivani Arora <[email protected]> wrote:
>>>
>>>> Hi Team, 
>>>>
>>>> I'm trying the below code to attach region-specific waf to 
>>>> region-specific alb's. But the below code doesn't seem to be working for 
>>>> associating the waf to alb's. The last shell module is having issues, 
>>>> "$alb_arn" value is not getting interpreted and getting the error 
>>>> mentioned 
>>>> below.
>>>>
>>>> tasks:
>>>>
>>>>   - block:
>>>>       - name: Get service alb info
>>>>         community.aws.elb_application_lb_info:
>>>>           profile: "{{ aws_profile_name }}"
>>>>           region: "{{ region }}"
>>>>           names:
>>>>           - "Service-{{ ec2_tag_environment }}"
>>>>           - "ServiceInt-{{ ec2_tag_environment }}"
>>>>           - "Web-{{ ec2_tag_environment }}"
>>>>         register: alb_info
>>>>         loop: "{{ aws_cloud_regions }}"
>>>>         loop_control:
>>>>           loop_var: region
>>>>
>>>>       - debug:
>>>>             var=alb_info
>>>>
>>>>       - name: Extract ALB ARNs
>>>>         set_fact:
>>>>             alb_arns: "{{ alb_arns | default([]) + item.load_balancers 
>>>> | map(attribute='load_balancer_arn') | list }}"
>>>>         loop: "{{ alb_info.results }}"
>>>>
>>>>       - name: Extract ALB map ARNs
>>>>         set_fact:
>>>>             alb_map_arns: "{{ alb_map_arns | default({}) | 
>>>> combine({item.region: item.load_balancers | 
>>>> map(attribute='load_balancer_arn') | list}) }}"
>>>>         loop: "{{ alb_info.results }}"
>>>>
>>>>
>>>>       - name: Display ALB ARNs
>>>>         debug:
>>>>           var: alb_map_arns
>>>>
>>>>       - name: Get WAF WebACL ARN
>>>>         shell: |
>>>>           aws wafv2 list-web-acls --scope REGIONAL --profile "{{ 
>>>> aws_profile_name }}" --region "{{ region }}" --query 'WebACLs[?Name==`{{ 
>>>> ec2_tag_environment }}-ALB`].ARN' --output text
>>>>         register: waf_acl
>>>>         changed_when: false
>>>>         loop: "{{ aws_cloud_regions }}"
>>>>         loop_control:
>>>>           loop_var: region
>>>>
>>>>       - debug:
>>>>              var=waf_acl
>>>>
>>>>       - name: Print WebACL ARN
>>>>         set_fact:
>>>>            waf_arn: "{{ waf_arn | default({}) | combine({item.region: 
>>>> item.stdout}) }}"
>>>>         loop: "{{ waf_acl.results }}"
>>>>
>>>>       - debug:
>>>>             var=waf_arn
>>>>
>>>>       - name: Attach WAF to ALBs
>>>>         shell: |
>>>>           for alb_arn in {{ alb_map_arns[item] }}; do
>>>>             aws wafv2 associate-web-acl \
>>>>               --web-acl-arn "{{ waf_arn[item] }}" \
>>>>               --resource-arn "$alb_arn" \
>>>>               --profile "{{ aws_profile_name }}" \
>>>>               --region "{{ item }}"
>>>>           done
>>>>         loop: "{{ waf_arn.keys() | list }}"
>>>>         when: item in alb_map_arns
>>>>
>>>>
>>>> below $alb_arn is not getting interpreted
>>>>
>>>>  do\n  aws wafv2 associate-web-acl    --web-acl-arn 
>>>> \"arn:aws:wafv2:eu-central-1:<profile>:regional/webacl/QAtest-ALB/a6dda4d3-9973-4b88-bc49-a7cbad91a302\"
>>>>  
>>>>    --resource-arn \"$alb_arn\"
>>>>
>>>> error reason: The ARN isn't valid. A valid ARN begins with arn: and 
>>>> includes other information separated by colons or slashes., field: 
>>>> RESOURCE_ARN
>>>> An error occurred (WAFNonexistentItemException) when calling the 
>>>> AssociateWebACL operation: AWS WAF couldn’t perform the operation because 
>>>> your resource doesn’t exist
>>>>
>>>> -- 
>>>> You received this message because you are subscribed to the Google 
>>>> Groups "Ansible Project" group.
>>>>
>>> To unsubscribe from this group and stop receiving emails from it, send 
>>>> an email to [email protected].
>>>> To view this discussion on the web visit 
>>>> https://groups.google.com/d/msgid/ansible-project/72172b94-528b-4828-b586-836160a318a3n%40googlegroups.com
>>>>  
>>>> <https://groups.google.com/d/msgid/ansible-project/72172b94-528b-4828-b586-836160a318a3n%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>> .
>>>>
>>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "Ansible Project" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to [email protected].
>>
> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/ansible-project/dd7b503e-267e-496c-a8bf-bdba785850adn%40googlegroups.com
>>  
>> <https://groups.google.com/d/msgid/ansible-project/dd7b503e-267e-496c-a8bf-bdba785850adn%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Ansible Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/ansible-project/c6dfe688-ed4f-49db-96da-618c4e48ef3fn%40googlegroups.com.

Reply via email to