mirror of
https://github.com/ansible-collections/community.general.git
synced 2026-03-26 21:33:12 +00:00
Reformat everything.
This commit is contained in:
@@ -94,23 +94,22 @@ from ansible.plugins.become import BecomeBase
|
||||
|
||||
|
||||
class BecomeModule(BecomeBase):
|
||||
|
||||
name = 'community.general.doas'
|
||||
name = "community.general.doas"
|
||||
|
||||
# messages for detecting prompted password issues
|
||||
fail = ('Permission denied',)
|
||||
missing = ('Authorization required',)
|
||||
fail = ("Permission denied",)
|
||||
missing = ("Authorization required",)
|
||||
|
||||
# See https://github.com/ansible-collections/community.general/issues/9977,
|
||||
# https://github.com/ansible/ansible/pull/78111
|
||||
pipelining = False
|
||||
|
||||
def check_password_prompt(self, b_output):
|
||||
''' checks if the expected password prompt exists in b_output '''
|
||||
"""checks if the expected password prompt exists in b_output"""
|
||||
|
||||
# FIXME: more accurate would be: 'doas (%s@' % remote_user
|
||||
# however become plugins don't have that information currently
|
||||
b_prompts = [to_bytes(p) for p in self.get_option('prompt_l10n')] or [br'doas \(', br'Password:']
|
||||
b_prompts = [to_bytes(p) for p in self.get_option("prompt_l10n")] or [rb"doas \(", rb"Password:"]
|
||||
b_prompt = b"|".join(b_prompts)
|
||||
|
||||
return bool(re.match(b_prompt, b_output))
|
||||
@@ -123,16 +122,16 @@ class BecomeModule(BecomeBase):
|
||||
|
||||
self.prompt = True
|
||||
|
||||
become_exe = self.get_option('become_exe')
|
||||
become_exe = self.get_option("become_exe")
|
||||
|
||||
flags = self.get_option('become_flags')
|
||||
if not self.get_option('become_pass') and '-n' not in flags:
|
||||
flags += ' -n'
|
||||
flags = self.get_option("become_flags")
|
||||
if not self.get_option("become_pass") and "-n" not in flags:
|
||||
flags += " -n"
|
||||
|
||||
become_user = self.get_option('become_user')
|
||||
user = f'-u {become_user}' if become_user else ''
|
||||
become_user = self.get_option("become_user")
|
||||
user = f"-u {become_user}" if become_user else ""
|
||||
|
||||
success_cmd = self._build_success_command(cmd, shell, noexe=True)
|
||||
executable = getattr(shell, 'executable', shell.SHELL_FAMILY)
|
||||
executable = getattr(shell, "executable", shell.SHELL_FAMILY)
|
||||
|
||||
return f'{become_exe} {flags} {user} {executable} -c {success_cmd}'
|
||||
return f"{become_exe} {flags} {user} {executable} -c {success_cmd}"
|
||||
|
||||
@@ -74,11 +74,10 @@ from ansible.plugins.become import BecomeBase
|
||||
|
||||
|
||||
class BecomeModule(BecomeBase):
|
||||
|
||||
name = 'community.general.dzdo'
|
||||
name = "community.general.dzdo"
|
||||
|
||||
# messages for detecting prompted password issues
|
||||
fail = ('Sorry, try again.',)
|
||||
fail = ("Sorry, try again.",)
|
||||
|
||||
def build_become_command(self, cmd, shell):
|
||||
super().build_become_command(cmd, shell)
|
||||
@@ -86,14 +85,14 @@ class BecomeModule(BecomeBase):
|
||||
if not cmd:
|
||||
return cmd
|
||||
|
||||
becomecmd = self.get_option('become_exe')
|
||||
becomecmd = self.get_option("become_exe")
|
||||
|
||||
flags = self.get_option('become_flags')
|
||||
if self.get_option('become_pass'):
|
||||
self.prompt = f'[dzdo via ansible, key={self._id}] password:'
|
||||
flags = f"{flags.replace('-n', '')} -p \"{self.prompt}\""
|
||||
flags = self.get_option("become_flags")
|
||||
if self.get_option("become_pass"):
|
||||
self.prompt = f"[dzdo via ansible, key={self._id}] password:"
|
||||
flags = f'{flags.replace("-n", "")} -p "{self.prompt}"'
|
||||
|
||||
become_user = self.get_option('become_user')
|
||||
user = f'-u {become_user}' if become_user else ''
|
||||
become_user = self.get_option("become_user")
|
||||
user = f"-u {become_user}" if become_user else ""
|
||||
|
||||
return f"{becomecmd} {flags} {user} {self._build_success_command(cmd, shell)}"
|
||||
|
||||
@@ -92,23 +92,21 @@ from ansible.plugins.become import BecomeBase
|
||||
|
||||
|
||||
class BecomeModule(BecomeBase):
|
||||
|
||||
name = 'community.general.ksu'
|
||||
name = "community.general.ksu"
|
||||
|
||||
# messages for detecting prompted password issues
|
||||
fail = ('Password incorrect',)
|
||||
missing = ('No password given',)
|
||||
fail = ("Password incorrect",)
|
||||
missing = ("No password given",)
|
||||
|
||||
def check_password_prompt(self, b_output):
|
||||
''' checks if the expected password prompt exists in b_output '''
|
||||
"""checks if the expected password prompt exists in b_output"""
|
||||
|
||||
prompts = self.get_option('prompt_l10n') or ["Kerberos password for .*@.*:"]
|
||||
prompts = self.get_option("prompt_l10n") or ["Kerberos password for .*@.*:"]
|
||||
b_prompt = b"|".join(to_bytes(p) for p in prompts)
|
||||
|
||||
return bool(re.match(b_prompt, b_output))
|
||||
|
||||
def build_become_command(self, cmd, shell):
|
||||
|
||||
super().build_become_command(cmd, shell)
|
||||
|
||||
# Prompt handling for ``ksu`` is more complicated, this
|
||||
@@ -118,8 +116,8 @@ class BecomeModule(BecomeBase):
|
||||
if not cmd:
|
||||
return cmd
|
||||
|
||||
exe = self.get_option('become_exe')
|
||||
exe = self.get_option("become_exe")
|
||||
|
||||
flags = self.get_option('become_flags')
|
||||
user = self.get_option('become_user')
|
||||
return f'{exe} {user} {flags} -e {self._build_success_command(cmd, shell)} '
|
||||
flags = self.get_option("become_flags")
|
||||
user = self.get_option("become_user")
|
||||
return f"{exe} {user} {flags} -e {self._build_success_command(cmd, shell)} "
|
||||
|
||||
@@ -96,16 +96,15 @@ from ansible.plugins.become import BecomeBase
|
||||
from ansible.module_utils.common.text.converters import to_bytes
|
||||
|
||||
|
||||
ansi_color_codes = re_compile(to_bytes(r'\x1B\[[0-9;]+m'))
|
||||
ansi_color_codes = re_compile(to_bytes(r"\x1B\[[0-9;]+m"))
|
||||
|
||||
|
||||
class BecomeModule(BecomeBase):
|
||||
name = "community.general.machinectl"
|
||||
|
||||
name = 'community.general.machinectl'
|
||||
|
||||
prompt = 'Password: '
|
||||
fail = ('==== AUTHENTICATION FAILED ====',)
|
||||
success = ('==== AUTHENTICATION COMPLETE ====',)
|
||||
prompt = "Password: "
|
||||
fail = ("==== AUTHENTICATION FAILED ====",)
|
||||
success = ("==== AUTHENTICATION COMPLETE ====",)
|
||||
require_tty = True # see https://github.com/ansible-collections/community.general/issues/6932
|
||||
|
||||
# See https://github.com/ansible/ansible/issues/81254,
|
||||
@@ -122,11 +121,11 @@ class BecomeModule(BecomeBase):
|
||||
if not cmd:
|
||||
return cmd
|
||||
|
||||
become = self.get_option('become_exe')
|
||||
become = self.get_option("become_exe")
|
||||
|
||||
flags = self.get_option('become_flags')
|
||||
user = self.get_option('become_user')
|
||||
return f'{become} -q shell {flags} {user}@ {self._build_success_command(cmd, shell)}'
|
||||
flags = self.get_option("become_flags")
|
||||
user = self.get_option("become_user")
|
||||
return f"{become} -q shell {flags} {user}@ {self._build_success_command(cmd, shell)}"
|
||||
|
||||
def check_success(self, b_output):
|
||||
b_output = self.remove_ansi_codes(b_output)
|
||||
|
||||
@@ -86,10 +86,9 @@ from ansible.plugins.become import BecomeBase
|
||||
|
||||
|
||||
class BecomeModule(BecomeBase):
|
||||
name = "community.general.pbrun"
|
||||
|
||||
name = 'community.general.pbrun'
|
||||
|
||||
prompt = 'Password:'
|
||||
prompt = "Password:"
|
||||
|
||||
def build_become_command(self, cmd, shell):
|
||||
super().build_become_command(cmd, shell)
|
||||
@@ -97,11 +96,11 @@ class BecomeModule(BecomeBase):
|
||||
if not cmd:
|
||||
return cmd
|
||||
|
||||
become_exe = self.get_option('become_exe')
|
||||
become_exe = self.get_option("become_exe")
|
||||
|
||||
flags = self.get_option('become_flags')
|
||||
become_user = self.get_option('become_user')
|
||||
user = f'-u {become_user}' if become_user else ''
|
||||
noexe = not self.get_option('wrap_exe')
|
||||
flags = self.get_option("become_flags")
|
||||
become_user = self.get_option("become_user")
|
||||
user = f"-u {become_user}" if become_user else ""
|
||||
noexe = not self.get_option("wrap_exe")
|
||||
|
||||
return f"{become_exe} {flags} {user} {self._build_success_command(cmd, shell, noexe=noexe)}"
|
||||
|
||||
@@ -91,8 +91,7 @@ from ansible.plugins.become import BecomeBase
|
||||
|
||||
|
||||
class BecomeModule(BecomeBase):
|
||||
|
||||
name = 'community.general.pfexec'
|
||||
name = "community.general.pfexec"
|
||||
|
||||
def build_become_command(self, cmd, shell):
|
||||
super().build_become_command(cmd, shell)
|
||||
@@ -100,8 +99,8 @@ class BecomeModule(BecomeBase):
|
||||
if not cmd:
|
||||
return cmd
|
||||
|
||||
exe = self.get_option('become_exe')
|
||||
exe = self.get_option("become_exe")
|
||||
|
||||
flags = self.get_option('become_flags')
|
||||
noexe = not self.get_option('wrap_exe')
|
||||
return f'{exe} {flags} {self._build_success_command(cmd, shell, noexe=noexe)}'
|
||||
flags = self.get_option("become_flags")
|
||||
noexe = not self.get_option("wrap_exe")
|
||||
return f"{exe} {flags} {self._build_success_command(cmd, shell, noexe=noexe)}"
|
||||
|
||||
@@ -63,9 +63,8 @@ from ansible.plugins.become import BecomeBase
|
||||
|
||||
|
||||
class BecomeModule(BecomeBase):
|
||||
|
||||
name = 'community.general.pmrun'
|
||||
prompt = 'Enter UPM user password:'
|
||||
name = "community.general.pmrun"
|
||||
prompt = "Enter UPM user password:"
|
||||
|
||||
def build_become_command(self, cmd, shell):
|
||||
super().build_become_command(cmd, shell)
|
||||
@@ -73,7 +72,7 @@ class BecomeModule(BecomeBase):
|
||||
if not cmd:
|
||||
return cmd
|
||||
|
||||
become = self.get_option('become_exe')
|
||||
become = self.get_option("become_exe")
|
||||
|
||||
flags = self.get_option('become_flags')
|
||||
return f'{become} {flags} {shlex_quote(self._build_success_command(cmd, shell))}'
|
||||
flags = self.get_option("become_flags")
|
||||
return f"{become} {flags} {shlex_quote(self._build_success_command(cmd, shell))}"
|
||||
|
||||
@@ -85,15 +85,12 @@ ansi_color_codes = re_compile(to_bytes(r"\x1B\[[0-9;]+m"))
|
||||
|
||||
|
||||
class BecomeModule(BecomeBase):
|
||||
|
||||
name = "community.general.run0"
|
||||
|
||||
prompt = "Password: "
|
||||
fail = ("==== AUTHENTICATION FAILED ====",)
|
||||
success = ("==== AUTHENTICATION COMPLETE ====",)
|
||||
require_tty = (
|
||||
True # see https://github.com/ansible-collections/community.general/issues/6932
|
||||
)
|
||||
require_tty = True # see https://github.com/ansible-collections/community.general/issues/6932
|
||||
|
||||
@staticmethod
|
||||
def remove_ansi_codes(line):
|
||||
@@ -109,9 +106,7 @@ class BecomeModule(BecomeBase):
|
||||
flags = self.get_option("become_flags")
|
||||
user = self.get_option("become_user")
|
||||
|
||||
return (
|
||||
f"{become} --user={user} {flags} {self._build_success_command(cmd, shell)}"
|
||||
)
|
||||
return f"{become} --user={user} {flags} {self._build_success_command(cmd, shell)}"
|
||||
|
||||
def check_success(self, b_output):
|
||||
b_output = self.remove_ansi_codes(b_output)
|
||||
|
||||
@@ -75,11 +75,10 @@ from ansible.plugins.become import BecomeBase
|
||||
|
||||
|
||||
class BecomeModule(BecomeBase):
|
||||
name = "community.general.sesu"
|
||||
|
||||
name = 'community.general.sesu'
|
||||
|
||||
prompt = 'Please enter your password:'
|
||||
fail = missing = ('Sorry, try again with sesu.',)
|
||||
prompt = "Please enter your password:"
|
||||
fail = missing = ("Sorry, try again with sesu.",)
|
||||
|
||||
def build_become_command(self, cmd, shell):
|
||||
super().build_become_command(cmd, shell)
|
||||
@@ -87,8 +86,8 @@ class BecomeModule(BecomeBase):
|
||||
if not cmd:
|
||||
return cmd
|
||||
|
||||
become = self.get_option('become_exe')
|
||||
become = self.get_option("become_exe")
|
||||
|
||||
flags = self.get_option('become_flags')
|
||||
user = self.get_option('become_user')
|
||||
return f'{become} {flags} {user} -c {self._build_success_command(cmd, shell)}'
|
||||
flags = self.get_option("become_flags")
|
||||
user = self.get_option("become_user")
|
||||
return f"{become} {flags} {user} -c {self._build_success_command(cmd, shell)}"
|
||||
|
||||
@@ -79,12 +79,11 @@ from ansible.plugins.become import BecomeBase
|
||||
|
||||
|
||||
class BecomeModule(BecomeBase):
|
||||
|
||||
name = 'community.general.sudosu'
|
||||
name = "community.general.sudosu"
|
||||
|
||||
# messages for detecting prompted password issues
|
||||
fail = ('Sorry, try again.',)
|
||||
missing = ('Sorry, a password is required to run sudo', 'sudo: a password is required')
|
||||
fail = ("Sorry, try again.",)
|
||||
missing = ("Sorry, a password is required to run sudo", "sudo: a password is required")
|
||||
|
||||
def build_become_command(self, cmd, shell):
|
||||
super().build_become_command(cmd, shell)
|
||||
@@ -92,21 +91,21 @@ class BecomeModule(BecomeBase):
|
||||
if not cmd:
|
||||
return cmd
|
||||
|
||||
becomecmd = 'sudo'
|
||||
becomecmd = "sudo"
|
||||
|
||||
flags = self.get_option('become_flags') or ''
|
||||
prompt = ''
|
||||
if self.get_option('become_pass'):
|
||||
self.prompt = f'[sudo via ansible, key={self._id}] password:'
|
||||
flags = self.get_option("become_flags") or ""
|
||||
prompt = ""
|
||||
if self.get_option("become_pass"):
|
||||
self.prompt = f"[sudo via ansible, key={self._id}] password:"
|
||||
if flags: # this could be simplified, but kept as is for now for backwards string matching
|
||||
flags = flags.replace('-n', '')
|
||||
flags = flags.replace("-n", "")
|
||||
prompt = f'-p "{self.prompt}"'
|
||||
|
||||
user = self.get_option('become_user') or ''
|
||||
user = self.get_option("become_user") or ""
|
||||
if user:
|
||||
user = f'{user}'
|
||||
user = f"{user}"
|
||||
|
||||
if self.get_option('alt_method'):
|
||||
if self.get_option("alt_method"):
|
||||
return f"{becomecmd} {flags} {prompt} su -l {user} -c {self._build_success_command(cmd, shell, True)}"
|
||||
else:
|
||||
return f"{becomecmd} {flags} {prompt} su -l {user} {self._build_success_command(cmd, shell)}"
|
||||
|
||||
Reference in New Issue
Block a user