So I'd request everyone please don't reply to ancient threads, things change and initial questions are seldom related to the old if you think they might be.
Saving a conditional in a variable should probably not involve a template statement, the need to do this in conditionals has been gone for some time. We can dig and try to reproduce this later. On Tue, Nov 26, 2013 at 9:10 PM, Ikrom Hotamov <[email protected]> wrote: > Hi guys, > > Not sure if this has been resolved, but I'm getting really strange > behavior with my playbooks in version 1.4. This has nothing to do with > --extra-vars, but a boolean variable defined in the "vars" section. Or am I > defining it somewhat incorrectly? > > Here is an example: > > - hosts: 127.0.0.1 > vars: > myvar: "{{ 'foo' == 'bar' }}" > > tasks: > - name: print var value > command: /bin/echo {{ myvar }} > > - name: this should run > command: /bin/echo whatever > when: not myvar > > - name: this should not run > command: /bin/echo whatever > when: myvar > > > This prints "False" for the first task and skips both the other tasks. > However, if I change the "when" statements to myvar|bool, it works as > expected. > So it seems myvar contains the string representation of the boolean > expression returned from the statement. > Is there a way to have the variable of type boolean, or do I always have > to explicitly pipe it to the Jinja bool filter? > > > > On Tuesday, April 16, 2013 1:27:12 AM UTC+2, Michael DeHaan wrote: > >> It's just fed to the variable system to be avialable in templating/other >> usage, well-post YAML parsing... >> >> >> On Mon, Apr 15, 2013 at 7:19 PM, Kahlil Hodgson < >> [email protected]> wrote: >> >>> >>> On Tue, Apr 16, 2013 at 8:59 AM, Michael DeHaan <[email protected] >>> > wrote: >>> >>>> It has nothing to do with foo=yes not being YAML. >>> >>> >>> Obviously not had enough coffee to express myself clearly. >>> >>> What I meant was 'foo=yes' on the command line does not _look_ like >>> YAML, so we should not _expect_ it to behave like YAML. >>> >>> I'm assuming 'foo: yes' in an ansible YAML file gets the boolean cast >>> via some python library for importing YAML and not via ansible's variable >>> system? >>> >>> -- >>> Kahlil (Kal) Hodgson GPG: C9A02289 >>> Head of Technology (m) +61 (0) 4 2573 0382 >>> DealMax Pty Ltd (w) +61 (0) 3 9008 5281 >>> >>> Suite 1415 >>> 401 Docklands Drive >>> Docklands VIC 3008 Australia >>> >>> "All parts should go together without forcing. You must remember that >>> the parts you are reassembling were disassembled by you. Therefore, >>> if you can't get them together again, there must be a reason. By all >>> means, do not use a hammer." -- IBM maintenance manual, 1925 >>> >>> -- >>> 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]. >>> >>> For more options, visit https://groups.google.com/groups/opt_out. >>> >>> >>> >> >> >> >> -- >> Michael DeHaan <[email protected]> >> >> CTO, AnsibleWorks, Inc. >> http://www.ansibleworks.com/ >> >> -- > 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]. > For more options, visit https://groups.google.com/groups/opt_out. > -- Michael DeHaan <[email protected]> CTO, AnsibleWorks, Inc. http://www.ansibleworks.com/ -- 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]. For more options, visit https://groups.google.com/groups/opt_out.
