diff options
Diffstat (limited to 'plugins/modules/vyos_command.py')
| -rw-r--r-- | plugins/modules/vyos_command.py | 57 | 
1 files changed, 30 insertions, 27 deletions
| diff --git a/plugins/modules/vyos_command.py b/plugins/modules/vyos_command.py index cf08ef67..a3593bab 100644 --- a/plugins/modules/vyos_command.py +++ b/plugins/modules/vyos_command.py @@ -17,11 +17,12 @@  #  ANSIBLE_METADATA = { -    'metadata_version': '1.1', -    'status': ['preview'], -    'supported_by': 'network' +    "metadata_version": "1.1", +    "status": ["preview"], +    "supported_by": "network",  } +  DOCUMENTATION = """  ---  module: vyos_command @@ -143,11 +144,13 @@ from ansible.module_utils._text import to_text  from ansible.module_utils.basic import AnsibleModule  from ansible.module_utils.network.common.parsing import Conditional  from ansible.module_utils.network.common.utils import transform_commands, to_lines -from ansible_collections.vyos.vyos.plugins.module_utils.network. \ -  vyos.vyos import run_commands +from ansible_collections.vyos.vyos.plugins.module_utils.network.vyos.vyos import ( +    run_commands, +) -from ansible_collections.vyos.vyos.plugins.module_utils.network. \ -  vyos.vyos import vyos_argument_spec +from ansible_collections.vyos.vyos.plugins.module_utils.network.vyos.vyos import ( +    vyos_argument_spec, +)  def parse_commands(module, warnings): @@ -155,46 +158,49 @@ def parse_commands(module, warnings):      if module.check_mode:          for item in list(commands): -            if not item['command'].startswith('show'): +            if not item["command"].startswith("show"):                  warnings.append( -                    'Only show commands are supported when using check mode, not ' -                    'executing %s' % item['command']) +                    "Only show commands are supported when using check mode, not " +                    "executing %s" % item["command"] +                )                  commands.remove(item)      return commands  def main(): -    spec = dict(commands=dict(type='list', required=True), -                wait_for=dict(type='list', aliases=['waitfor']), -                match=dict(default='all', choices=['all', 'any']), -                retries=dict(default=10, type='int'), -                interval=dict(default=1, type='int')) +    spec = dict( +        commands=dict(type="list", required=True), +        wait_for=dict(type="list", aliases=["waitfor"]), +        match=dict(default="all", choices=["all", "any"]), +        retries=dict(default=10, type="int"), +        interval=dict(default=1, type="int"), +    )      spec.update(vyos_argument_spec)      module = AnsibleModule(argument_spec=spec, supports_check_mode=True)      warnings = list() -    result = {'changed': False, 'warnings': warnings} +    result = {"changed": False, "warnings": warnings}      commands = parse_commands(module, warnings) -    wait_for = module.params['wait_for'] or list() +    wait_for = module.params["wait_for"] or list()      try:          conditionals = [Conditional(c) for c in wait_for]      except AttributeError as exc:          module.fail_json(msg=to_text(exc)) -    retries = module.params['retries'] -    interval = module.params['interval'] -    match = module.params['match'] +    retries = module.params["retries"] +    interval = module.params["interval"] +    match = module.params["match"]      for _ in range(retries):          responses = run_commands(module, commands)          for item in list(conditionals):              if item(responses): -                if match == 'any': +                if match == "any":                      conditionals = list()                      break                  conditionals.remove(item) @@ -206,16 +212,13 @@ def main():      if conditionals:          failed_conditions = [item.raw for item in conditionals] -        msg = 'One or more conditional statements have not been satisfied' +        msg = "One or more conditional statements have not been satisfied"          module.fail_json(msg=msg, failed_conditions=failed_conditions) -    result.update({ -        'stdout': responses, -        'stdout_lines': list(to_lines(responses)), -    }) +    result.update({"stdout": responses, "stdout_lines": list(to_lines(responses))})      module.exit_json(**result) -if __name__ == '__main__': +if __name__ == "__main__":      main() | 
