provider: password: Password server: IP user: username validate_certs: no server_port: port mapping: # This is new and might be stored elsewhere :) server1.example.com: 192.0.2.1 server2.example.com: 192.0.2.2 server3.example.com: 192.0.2.3
tasks: - name: Create a pool bigip_pool: provider: "{{ provider }}" lb_method: ratio-member name: "{{ service }}" slow_ramp_time: 120 delegate_to: localhost
- name: Add members to pool bigip_pool_member: provider: "{{ provider }}" description: "webserver {{ item.key }}" host: "{{ item.value }}" name: "{{ item.key }}" pool: "{{ service }}" port: "{{ lbport }}" loop:"{{ mapping|flatten() }}"
Regards,
Hi all,--I've got a playbook that uses variables to create a load balanced pool and the required members on our test F5 BigIP.I've got the basics working without issue, however, the number of members of a pool for any given run is not a fixed number and could range from 1 up to say 10.I'm running Ansible Tower and invoking the template via tower-cli. I'm using extra-vars to provide realip and realserver and looped through. The default values are set to null so I was hoping to loop through the list until a null value for item.host is observed. I'm not sure if this is the best way to deal with this, it's the first time that I've tried to deal with variable lists that are not fixed in number.Here's my current code, any help would be greatly appreciated.CheersSpence---- name: Create a VIP, pool and pool membershosts: allconnection: localvars:provider:password: Passwordserver: IPuser: usernamevalidate_certs: noserver_port: porttasks:- name: Create a poolbigip_pool:provider: "{{ provider }}"lb_method: ratio-membername: "{{ service }}"slow_ramp_time: 120delegate_to: localhost- name: Add members to poolbigip_pool_member:provider: "{{ provider }}"host: "{{ item.host }}"pool: "{{ service }}"port: "{{ lbport }}"loop:- { host: "{{ realip1 }}", name: "{{ realserver1 }}" }- { host: "{{ realip2 }}", name: "{{ realserver2 }}" }- { host: "{{ realip3 }}", name: "{{ realserver3 }}" }- { host: "{{ realip4 }}", name: "{{ realserver4 }}" }- { host: "{{ realip5 }}", name: "{{ realserver5 }}" }- { host: "{{ realip6 }}", name: "{{ realserver6 }}" }- { host: "{{ realip7 }}", name: "{{ realserver7 }}" }- { host: "{{ realip8 }}", name: "{{ realserver8 }}" }- when: item.host != ""- delegate_to: localhost
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 ansible-proje...@googlegroups.com.
To post to this group, send email to ansible...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ansible-project/cf8e3969-eeaf-422b-9fbd-4ca36d19d660%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.