Setting dynamic 'become' doesn't work #11381

51 views
Skip to first unread message

Albert Mikaelyan

unread,
Jul 21, 2015, 3:09:38 AM7/21/15
to ansible...@googlegroups.com
Closed issue 11381 still not fixed:
https://github.com/ansible/ansible/issues/11381

The test done by jimi-c is not related (he was setting 'become_user', not 'become').

Here is my test, which shows the problem (using latest devel):

$ cat 11381.yml
---
- hosts: antest
 gather_facts
: no
 tasks
:
 
- command: whoami
 become
: "{{ app_become }}"
 become_user
: my_user

$ ansible-playbook 11381.yml -vv -e app_become=no

Using /home/albert/ansible/ansible.cfg as config file
1 plays in 11381.yml

PLAY ****************************************************************************

TASK [command] ******************************************************************
changed: [antest] => {"changed": true, "cmd": ["whoami"], "delta": "0:00:01.003433", "end": "2015-07-21 09:50:32.955368", "rc": 0, "start": "2015-07-21 09:50:31.95193
5", "stderr": "", "stdout": "my_user", "stdout_lines": ["my_user"], "warnings": []}                                                                                    

PLAY RECAP **********************************************************************
antest                     : ok=1    changed=1    unreachable=0    failed=0

It still sets
'become: yes'
However there's this workaround:

 $ cat 11381-2.yml
---
- hosts: antest
 gather_facts
: no
 tasks
:
 
- command: whoami
 become
: "{{ app_become | default('False') | bool }}"
 become_user
: my_user


$ ansible-playbook 11381.yml -vv -e app_become=false

Using /home/albert/ansible/ansible.cfg as config file
1 plays in 11381.yml

PLAY ****************************************************************************

TASK [command] ******************************************************************
changed: [antest] => {"changed": true, "cmd": ["whoami"], "delta": "0:00:00.002272", "end": "2015-07-21 09:55:17.910846", "rc": 0, "start": "2015-07-21 09:55:17.90857
4", "stderr": "", "stdout": "root", "stdout_lines": ["root"], "warnings": []}                                                                                          

PLAY RECAP **********************************************************************
antest                     : ok=1    changed=1    unreachable=0    failed=0




James Cammarata

unread,
Jul 21, 2015, 8:31:15 AM7/21/15
to ansible...@googlegroups.com
Hi Albert, the original issue was about an error regarding that value being set to yes and it failing to work. I did a follow-up test with that and it worked, however there was no mention of the above in the issue, so I'll re-open the issue.

James Cammarata
Director, Ansible Core Engineering
github: jimi-c

--
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/b7b37211-6cb9-4101-8f88-41fe2654fdbe%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Albert Mikaelyan

unread,
Jul 21, 2015, 8:43:58 AM7/21/15
to ansible...@googlegroups.com
You are right, 1.9.1 was throwing an error, but devel was showing the behaviour of always setting it to 'true', as I mentioned on my comment to Brian Coca (and showed here as well)
Reply all
Reply to author
Forward
0 new messages