Any help is highly appreciated!

On Tue, Sep 18, 2018 at 11:54 AM Krishna N <[email protected]> wrote:

> Hi Jason,
> Thanks for replying. That's definitely another way of doing it. However,
> this is what I am trying.
>
> 1. Get the ntp server config from "sh run".
> 2. Store that to a list
> 3. Jinja template generates the required config. I am passing the
> ntp_server IPs via -e (extra variables).
> 4. Add the config from 3, compare 3 and 4 and remove the rest.
>
> # tasks file for ansible-ios-ntp
> ---
> - name: Current Edge servers before
> ios_command:
> commands:
> - sh run | include ntp server
> register: runconfser
>
> - debug:
> var: runconfser
>
> # NTP SECTION - START
>
> - name: Set NTP servers
> ios_config:
> src: ntprequired.j2
> notify: Save Config
>
> - name: Remove the rest NTP Servers
> with_items: "{{ runconfser.stdout_lines[0] }}"
> when: (item not in {src: 'ntprequired.j2'} and (item!=""))
> ios_config:
> lines:
> - "no {{ item }}"
>
>
>
>
> On Tue, Sep 18, 2018 at 3:22 AM Jonathon Woods <[email protected]> wrote:
>
>> I’m not sure how to make it work how you have laid out. But I would do
>> the check in the jinja template anyway. Get your current ntp lines. In the
>> jinja template run.
>>
>> {% for ntp_server in ntp_config_get %}
>> {% if ntp_line not in ntp_servers %}
>> no ntp server {{ ntp_server }}
>> {% ending %}
>> {% for ntp_srv in ntp_servers %}
>> ntp server {{ ntp_srv }}
>> {% endfor %}
>>
>> If you got the whole line of current ntp servers, you’ll have to parse
>> the ips with regex, I’m certain I’ve done something very similar to this
>> before. Let me know if you still have issues after trying this.
>>
>>
>>
>> On Mon, Sep 17, 2018 at 5:40 PM Krishna N <[email protected]> wrote:
>>
>>> Greetings!
>>>
>>> How to compare when items are not in jinja template loop?
>>>
>>>     with_items: "{{ runconfser.stdout_lines[0] }}"
>>>     when: (item not in {src: 'ntprequired.j2'} and (item!=""))
>>>     ios_config:
>>>       lines:
>>>         - "no {{ item }}"
>>>
>>> I am using roles.
>>>
>>> */templates/ntprequired.j2*:
>>>
>>> {% for ntp_srv in ntp_servers %}
>>> ntp server {{ ntp_srv }}
>>> {% endfor %}
>>>
>>>
>>> --
>>> 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/1d64f07a-6be8-483f-8dd7-343ea7ab73dd%40googlegroups.com
>>> <https://groups.google.com/d/msgid/ansible-project/1d64f07a-6be8-483f-8dd7-343ea7ab73dd%40googlegroups.com?utm_medium=email&utm_source=footer>
>>> .
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>> --
>> Jonathon Woods
>>
>> --
>> You received this message because you are subscribed to a topic in the
>> Google Groups "Ansible Project" group.
>> To unsubscribe from this topic, visit
>> https://groups.google.com/d/topic/ansible-project/7kKzc8j7cks/unsubscribe
>> .
>> To unsubscribe from this group and all its topics, 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/CAB1Ty_fgx1XtbOC3KU636AsPYcWTdGK4jbfatp8gj_dwJHhzCg%40mail.gmail.com
>> <https://groups.google.com/d/msgid/ansible-project/CAB1Ty_fgx1XtbOC3KU636AsPYcWTdGK4jbfatp8gj_dwJHhzCg%40mail.gmail.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/CAJQ1BobmGPiccaZ4ue-6f5kQ%2BtDi2DKgdKFeevMAmBs3oRbVgQ%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to