diff options
author | Nilashish Chakraborty <nilashishchakraborty8@gmail.com> | 2020-12-08 04:02:07 +0530 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-12-07 16:32:07 -0600 |
commit | ceea695163b08d23e65dcfe188024182538f42ef (patch) | |
tree | 4e867e084a0759a99b3bae31b80e4d87c26ef1d6 | |
parent | 1706b711418d8f8a55f59c7b508acb2a0e21a19e (diff) | |
download | ansible-ceea695163b08d23e65dcfe188024182538f42ef.tar.gz |
[stable-2.9] Escalate priv before setting terminal (#72673)
* Try to escalate before on_open_shell to work around ios (#63571)
(cherry picked from commit 0cd2ad588032ac1d15ca7084c5c03c91e607a80a)
Add changelog
Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
Co-authored-by: Nathaniel Case <ncase@redhat.com>
-rw-r--r-- | changelogs/fragments/escalate_priv_before_terminal.yaml | 3 | ||||
-rw-r--r-- | lib/ansible/plugins/connection/network_cli.py | 6 |
2 files changed, 6 insertions, 3 deletions
diff --git a/changelogs/fragments/escalate_priv_before_terminal.yaml b/changelogs/fragments/escalate_priv_before_terminal.yaml new file mode 100644 index 0000000000..8b48c3b691 --- /dev/null +++ b/changelogs/fragments/escalate_priv_before_terminal.yaml @@ -0,0 +1,3 @@ +--- +bugfixes: + - network_cli connection plugin - Perform privilege escalation before setting terminal. diff --git a/lib/ansible/plugins/connection/network_cli.py b/lib/ansible/plugins/connection/network_cli.py index d7ca6c8c90..4f23395fb3 100644 --- a/lib/ansible/plugins/connection/network_cli.py +++ b/lib/ansible/plugins/connection/network_cli.py @@ -480,14 +480,14 @@ class Connection(NetworkConnectionBase): self.receive(prompts=terminal_initial_prompt, answer=terminal_initial_answer, newline=newline, check_all=check_all) - self.queue_message('vvvv', 'firing event: on_open_shell()') - self._terminal.on_open_shell() - if self._play_context.become: self.queue_message('vvvv', 'firing event: on_become') auth_pass = self._play_context.become_pass self._terminal.on_become(passwd=auth_pass) + self.queue_message('vvvv', 'firing event: on_open_shell()') + self._terminal.on_open_shell() + self.queue_message('vvvv', 'ssh connection has completed successfully') return self |