mirror of
https://github.com/ansible-collections/community.general.git
synced 2025-05-05 00:31:37 -07:00
[CLI_CONF] Refactor nxos module common library to use cliconf plugin (#31524)
* refactor nxos modules Signed-off-by: Trishna Guha <trishnaguha17@gmail.com> * get_config update * fix get_config * update nxos module * device_info * fix conflict * add failure message check * pep8 fixes * use get_capabilities to check cliconf * Add logic to detect platform in get_capabilities and cache in module_utils * return msg in edit_config * fix conflicts * make modules compatible * fix nxos cliconf api Signed-off-by: Trishna Guha <trishnaguha17@gmail.com> * cache capabilities * Update transport queries to get_capabilities in module level * fix unit tests * load_config error code * remove unnecessary change * Refactor nxos_install_os module
This commit is contained in:
parent
bd399ec674
commit
9f86b923e9
23 changed files with 220 additions and 132 deletions
|
@ -176,7 +176,7 @@ except ImportError:
|
|||
HAS_IPADDRESS = False
|
||||
|
||||
from ansible.module_utils.network.nxos.nxos import load_config, run_commands
|
||||
from ansible.module_utils.network.nxos.nxos import nxos_argument_spec, check_args
|
||||
from ansible.module_utils.network.nxos.nxos import get_capabilities, nxos_argument_spec
|
||||
from ansible.module_utils.basic import AnsibleModule
|
||||
|
||||
|
||||
|
@ -457,6 +457,9 @@ def flatten_list(command_lists):
|
|||
|
||||
|
||||
def validate_params(addr, interface, mask, dot1q, tag, allow_secondary, version, state, intf_type, module):
|
||||
device_info = get_capabilities(module)
|
||||
network_api = device_info.get('network_api', 'nxapi')
|
||||
|
||||
if state == "present":
|
||||
if addr is None or mask is None:
|
||||
module.fail_json(msg="An IP address AND a mask must be provided "
|
||||
|
@ -466,7 +469,7 @@ def validate_params(addr, interface, mask, dot1q, tag, allow_secondary, version,
|
|||
module.fail_json(msg="IPv6 address and mask must be provided when "
|
||||
"state=absent.")
|
||||
|
||||
if intf_type != "ethernet" and module.params["provider"]["transport"] == "cli":
|
||||
if intf_type != "ethernet" and network_api == 'cliconf':
|
||||
if is_default(interface, module) == "DNE":
|
||||
module.fail_json(msg="That interface does not exist yet. Create "
|
||||
"it first.", interface=interface)
|
||||
|
@ -538,7 +541,6 @@ def main():
|
|||
module.fail_json(msg="ipaddress is required for this module. Run 'pip install ipaddress' for install.")
|
||||
|
||||
warnings = list()
|
||||
check_args(module, warnings)
|
||||
|
||||
addr = module.params['addr']
|
||||
version = module.params['version']
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue