Roles cannot be presently used with iterators.  This is something the 'v2/'
subtree may allow at a later date.

Until then, the solution is to apply the loop to each task inside the role
that needs to be looped.



On Mon, Dec 1, 2014 at 3:03 PM, <[email protected]> wrote:

>
>
>
> I have a role, route53-healthcheck, which execute a series of command:
> tasks using the aws cli (Ansible route53 module is for DNS records-only).
>
> I have a dictionary of Application names and metadata in group_vars/all.
> I want am trying to loop over the dictionary using with_dict calling the
> roll each time with different parameters:
>
> route53-healthchecks.yml
> ---
> # create Route53 Health check and CloudWatch Alarm
> - name: Route53 Health Checks for all Apps
>   hosts: webservers[0]
>   connection: local
>   gather_facts: no
>   roles:
>     - { role: route53-healthcheck,
>           app: '{{ item.key }}' ,
>           app_domain: '{{ app_host }}',
>           fqdn: '{{ item.key }}-{{ app_environment }}.{{ app_host }}',
>         with_dict: apps }
>
>
> I am getting an error that 'item' is undefined:
>
>
> $ ansible-playbook -vvv -i staging route53-healthcheck.yml
>
> PLAY [Route53 Health Checks for all Apps]
> *************************************
>
> TASK: [route53-healthcheck | Route53 Caller Reference for this Health
> Check] ***
> fatal: [web-1.us-east-1.example.com] => One or more undefined variables:
> 'item' is undefined
>
> FATAL: all hosts have already failed -- aborting
>
> PLAY RECAP
> ********************************************************************
>            to retry, use: --limit @/home/ubuntu/route53-healthcheck.retry
>
> web-1.us-east-1.example.com : ok=0    changed=0    unreachable=1
>  failed=0
>
>
> What is the proper way to loop through calling roles?
>
> Thanks,
> Robb
>
> --
> 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 post to this group, send email to [email protected].
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/ansible-project/ae023bb8-226f-456f-be49-99af5840aedb%40googlegroups.com
> <https://groups.google.com/d/msgid/ansible-project/ae023bb8-226f-456f-be49-99af5840aedb%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
> For more options, visit https://groups.google.com/d/optout.
>

-- 
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 post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/ansible-project/CA%2BnsWgx3uek6VVzCVERSJf69LL2o8TToo9bVs0aS5qBjoYkxMg%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to