There's a bugfix PR for that which I need to test. You can of course still do this as a shell command too, right now.
What problem are you having at the shell? On Fri, Aug 22, 2014 at 2:19 AM, Imran Khan <[email protected]> wrote: > Again this will save the same value 4 times! > > - name: local action math > local_action: shell echo "{{ServerIPRange}}/{{epcrange}}+{{IPOctet}}" > | bc > with_sequence: start=1 end=4 > register: result > - debug: var=resu > > On Thursday, August 21, 2014 10:40:56 PM UTC-7, Henry Finucane wrote: > >> As an aside, you can do math in Jinja2- >> >> - name: bashless math >> set_fact: >> IPOctet: "{{ 4*(ServerIPRange/epcrange)+IPOctet }}" >> >> will do something approaching what you want. >> >> If you want to get the actual shell-out working, something like this >> is going to be enlightening: >> >> - name: local action math >> local_action: shell echo "{{ServerIPRange}}/{{epcrange}}+{{IPOctet}}" >> | bc >> with_sequence: start=1 end=4 >> register: result >> - debug: var=result >> >> "debug: var=result" will dump a pretty-printed JSON structure, so >> you'll know what's available, and what you can use. You should try it >> with & without the with_sequence. >> >> >> >> On Thu, Aug 21, 2014 at 9:47 PM, Imran Khan <[email protected]> >> wrote: >> > I have 3 variables named IPOctet, ServerIPRange and epcrange. If I >> perform >> > the following operation in my terminal, it works perfectly >> > >> > IPOctet=$(echo "$ServerIPRange/$epcrange+$IPOctet" | bc) >> > >> > How to I do something similar in a ansible inside a task, for e.g >> > >> > --- >> > - hosts: localhost >> > gather_facts: False >> > >> > vars_prompt: >> > - name: epcrange >> > prompt: Enter the number of EPCs that you want to configure >> > private: False >> > default: "1" >> > - name: serverrange >> > prompt: Enter the number of Cleints that you want to configure >> > private: False >> > defualt: "1" >> > - name: ServerIPRange >> > prompt: Enter the ServerIP range >> > private: False >> > default: '128' >> > - name: LastIPOctet >> > prompt: Enter The last Octet of the IP you just entered >> > private: False >> > default: '10' >> > >> > pre_tasks: >> > >> > >> > - name: Set some facts >> > set_fact: >> > ServerIP1: "{{ServerIP}}" >> > ServerIPRange1: "{{ServerIPRange}}" >> > IPOctet: "{{LastIPOctet}}" >> > >> > - name: local action math >> > local_action: shell {{IPOctet}}=$(echo >> > "${{ServerIPRange}}/${{epcrange}}+${{IPOctet}}" | bc) # Proper >> Syntax? >> > with_sequence: start=1 end=4 >> > register: result >> > ignore_errors: yes >> > >> > What is the proper syntax for this command? Maybe using shell echo >> "......." >> > . I just need to save the contents of this command into the IPOctet >> variable >> > and IPOctet will change with each loop iteration and the results should >> be >> > stored in my result register >> > >> > P.S: how can I access the individual items in the array sepearately? >> > >> > -- >> > 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/ >> 0b34e611-ab2c-45b6-88a9-2caf26ed5504%40googlegroups.com. >> > For more options, visit https://groups.google.com/d/optout. >> >> >> >> -- >> ----------------------- >> | Henry Finucane >> | "I hear aphorisms are popular" >> ----------------------- >> > -- > 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/66c32a8d-aa26-49bb-971e-3c435d2d5455%40googlegroups.com > <https://groups.google.com/d/msgid/ansible-project/66c32a8d-aa26-49bb-971e-3c435d2d5455%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%2BnsWgzbLCmK18YMyjmuRR8UC9ib9B-xYVRjcb7Yn8C38TqZ%3DQ%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.
