add check option to bridge module

This commit is contained in:
Valentin Gurmeza 2017-06-05 15:57:30 -07:00
parent 35020e9c4e
commit 928c795f4a
2 changed files with 75 additions and 46 deletions

View file

@ -107,7 +107,6 @@ from ansible.module_utils.basic import AnsibleModule
def main():
module = AnsibleModule(
argument_spec=dict(
hostname = dict(required=True),
@ -140,7 +139,8 @@ def main():
choices = ['present', 'absent'],
type = 'str'
),
)
),
supports_check_mode=True
)
hostname = module.params['hostname']
@ -148,6 +148,7 @@ def main():
password = module.params['password']
state = module.params['state']
ansible_bridge_name = module.params['name']
check_mode = module.check_mode
changed = False
changed_message = []
msg = ""
@ -199,6 +200,7 @@ def main():
bridge_settings_diff_keys[key] = settings[key]
if bridge_settings_diff_keys != {}:
if not check_mode:
mk.api_edit(base_path=settings_path, params=bridge_settings_diff_keys)
changed_message.append(bridge_settings_diff_keys)
changed = True
@ -227,6 +229,7 @@ def main():
###################################################################
if (state == "present" and isinstance(ansible_bridge_name, str)):
if mikrotik_bridge == {}:
if not check_mode:
mk.api_add(
base_path=bridge_path,
params=bridge_params
@ -244,6 +247,7 @@ def main():
bridge_diff_keys[key] = bridge_params[key]
if bridge_diff_keys != {}:
bridge_diff_keys['numbers'] = client_id
if not check_mode:
mk.api_edit(base_path=bridge_path, params=bridge_diff_keys)
changed = True
changed_message.append("Changed bridge: " + bridge_params['name'])
@ -256,6 +260,7 @@ def main():
elif state == "absent":
if client_id:
if not check_mode:
mk.api_remove(base_path=bridge_path, remove_id=client_id)
changed_message.append(bridge_params['name'] + " removed")
changed = True

View file

@ -1252,7 +1252,11 @@
with_items:
- "bridge1"
register: mod_bridge1
failed_when: ( mod_bridge1 | changed )
failed_when: (
not ansible_check_mode
) and (
( mod_bridge1 | changed )
)
# bridge ports depend on bridge being created first
@ -1280,7 +1284,11 @@
- [ "bridge1" ]
- [ "ether8" ]
register: mod_bridge1_port
failed_when: ( mod_bridge1_port | changed )
failed_when: (
not ansible_check_mode
) and (
( mod_bridge1_port | changed )
)
- name: Add additional param to bridge port
mt_interface_bridge_port:
@ -1308,7 +1316,11 @@
- [ "bridge1" ]
- [ "ether7" ]
register: bridge1_add_2nd_inter
failed_when: not ( bridge1_add_2nd_inter | changed )
failed_when: (
not ansible_check_mode
) and (
not ( bridge1_add_2nd_inter | changed )
)
- name: ALWAYS_CHANGES Remove 2nd interface to bridge1 port
mt_interface_bridge_port:
@ -1322,7 +1334,11 @@
- [ "bridge1" ]
- [ "ether7" ]
register: bridge1_rem_2nd_inter
failed_when: not ( bridge1_rem_2nd_inter | changed )
failed_when: (
not ansible_check_mode
) and (
not ( bridge1_rem_2nd_inter | changed )
)
- name: Add bridge2
mt_interface_bridge:
@ -1359,7 +1375,11 @@
use-ip-firewall-for-vlan: no
use-ip-firewall-for-pppoe: no
register: bridge_settings_1
failed_when: not ( bridge_settings_1 | changed )
failed_when: (
not ansible_check_mode
) and (
not ( bridge_settings_1 | changed )
)
- name: Adjust settings again (idempotency test)
mt_interface_bridge:
@ -1372,7 +1392,11 @@
use-ip-firewall-for-vlan: no
use-ip-firewall-for-pppoe: no
register: bridge_settings_2
failed_when: ( bridge_settings_2 | changed )
failed_when: (
not ansible_check_mode
) and (
( bridge_settings_2 | changed )
)
tags: bridge