fixes eos_eapi to error on wrong transport (#21993)
This commit is contained in:
parent
e8ef826976
commit
f95a11a9db
3 changed files with 21 additions and 16 deletions
|
@ -187,6 +187,13 @@ from ansible.module_utils.eos import run_commands, load_config
|
|||
from ansible.module_utils.six import iteritems
|
||||
from ansible.module_utils.eos import eos_argument_spec, check_args
|
||||
|
||||
def check_transport(module):
|
||||
transport = module.params['transport']
|
||||
provider_transport = (module.params['provider'] or {}).get('transport')
|
||||
|
||||
if 'eapi' in (transport, provider_transport):
|
||||
module.fail_json(msg='eos_eapi module is only supported over cli transport')
|
||||
|
||||
def validate_http_port(value, module):
|
||||
if not 1 <= value <= 65535:
|
||||
module.fail_json(msg='http_port must be between 1 and 65535')
|
||||
|
@ -372,6 +379,7 @@ def main():
|
|||
module = AnsibleModule(argument_spec=argument_spec,
|
||||
supports_check_mode=True)
|
||||
|
||||
check_transport(module)
|
||||
|
||||
result = {'changed': False}
|
||||
|
||||
|
|
|
@ -1,16 +0,0 @@
|
|||
- debug: msg="START CLI/BADTRANSPORT.YAML"
|
||||
|
||||
- name: Expect transport other than cli to fail
|
||||
eos_eapi:
|
||||
provider: "{{ eapi }}"
|
||||
register: eos_eapi_output
|
||||
connection: local
|
||||
ignore_errors: yes
|
||||
|
||||
- debug: var=eos_eapi_output
|
||||
when: debug
|
||||
|
||||
- assert:
|
||||
that: eos_eapi_output.failed and eos_eapi_output.msg |search('transport')
|
||||
|
||||
- debug: msg="START CLI/BADTRANSPORT.YAML"
|
|
@ -0,0 +1,13 @@
|
|||
- debug: msg="START CLI/BADTRANSPORT.YAML"
|
||||
|
||||
- name: Expect transport other than cli to fail
|
||||
eos_eapi:
|
||||
provider: "{{ eapi }}"
|
||||
register: eos_eapi_output
|
||||
connection: local
|
||||
ignore_errors: yes
|
||||
|
||||
- assert:
|
||||
that: eos_eapi_output.failed == true
|
||||
|
||||
- debug: msg="START CLI/BADTRANSPORT.YAML"
|
Loading…
Reference in a new issue