# Each case is followed by mitogen_via= case to test hostvars pass. # No become-pass set, defaults to "root" - name: integration/transport_config/become_pass.yml hosts: tc-become-pass-unset become: true tasks: - include: ../_mitogen_only.yml - {mitogen_get_stack: {}, register: out} - assert: that: - out.result|length == 2 - out.result[0].method == "ssh" - out.result[1].method == "sudo" - out.result[1].kwargs.password == None fail_msg: out={{out}} # Not set, unbecoming mitogen_via= - hosts: tc-become-pass-unset become: true vars: {mitogen_via: tc-become-pass-password} tasks: - include: ../_mitogen_only.yml - {mitogen_get_stack: {}, register: out} - assert: that: - out.result|length == 3 - out.result[0].method == "ssh" - out.result[1].method == "ssh" - out.result[2].method == "sudo" - out.result[2].kwargs.password == None fail_msg: out={{out}} # Not set, becoming mitogen_via= - hosts: tc-become-pass-unset become: true vars: {mitogen_via: viapass@tc-become-pass-password} tasks: - include: ../_mitogen_only.yml - {mitogen_get_stack: {}, register: out} - assert: that: - out.result|length == 4 - out.result[0].method == "ssh" - out.result[1].method == "sudo" - out.result[1].kwargs.password == "apassword" - out.result[2].method == "ssh" - out.result[3].method == "sudo" - out.result[3].kwargs.password == None fail_msg: out={{out}} # ansible_become_password= set. - hosts: tc-become-pass-password become: true tasks: - include: ../_mitogen_only.yml - {mitogen_get_stack: {}, register: out} - assert: that: - out.result|length == 2 - out.result[0].method == "ssh" - out.result[1].method == "sudo" - out.result[1].kwargs.password == "apassword" fail_msg: out={{out}} # ansible_become_password=, via= - hosts: tc-become-pass-password vars: {mitogen_via: root@tc-become-pass-pass} become: true tasks: - include: ../_mitogen_only.yml - {mitogen_get_stack: {}, register: out} - assert: that: - out.result|length == 4 - out.result[0].method == "ssh" - out.result[1].method == "sudo" - out.result[1].kwargs.password == "apass" - out.result[2].method == "ssh" - out.result[3].method == "sudo" - out.result[3].kwargs.password == "apassword" fail_msg: out={{out}} # ansible_become_pass= - hosts: tc-become-pass-pass become: true tasks: - include: ../_mitogen_only.yml - {mitogen_get_stack: {}, register: out} - assert: that: - out.result|length == 2 - out.result[0].method == "ssh" - out.result[1].method == "sudo" - out.result[1].kwargs.password == "apass" fail_msg: out={{out}} # ansible_become_pass=, via= - hosts: tc-become-pass-pass vars: {mitogen_via: root@tc-become-pass-password} become: true tasks: - include: ../_mitogen_only.yml - {mitogen_get_stack: {}, register: out} - assert: that: - out.result|length == 4 - out.result[0].method == "ssh" - out.result[1].method == "sudo" - out.result[1].kwargs.password == "apassword" - out.result[2].method == "ssh" - out.result[3].method == "sudo" - out.result[3].kwargs.password == "apass" fail_msg: out={{out}} # ansible_become_pass & ansible_become_password set, password used to take precedence # but it's possible since https://github.com/ansible/ansible/pull/69629/files#r428376864, now it doesn't - hosts: tc-become-pass-both become: true tasks: - include: ../_mitogen_only.yml - {mitogen_get_stack: {}, register: out} - assert: that: - out.result|length == 2 - out.result[0].method == "ssh" - out.result[1].method == "sudo" - out.result[1].kwargs.password == "c.b.a" fail_msg: out={{out}} # both, mitogen_via - hosts: tc-become-pass-unset vars: {mitogen_via: root@tc-become-pass-both} tasks: - include: ../_mitogen_only.yml - {mitogen_get_stack: {}, register: out} - assert: that: - out.result|length == 3 - out.result[0].method == "ssh" - out.result[1].method == "sudo" - out.result[1].kwargs.password == "a.b.c" - out.result[2].method == "ssh" fail_msg: out={{out}}