mirror of
https://github.com/zahodi/ansible-mikrotik.git
synced 2025-07-19 02:14:26 +02:00
add check option to bridge module
This commit is contained in:
parent
35020e9c4e
commit
928c795f4a
2 changed files with 75 additions and 46 deletions
|
@ -107,7 +107,6 @@ from ansible.module_utils.basic import AnsibleModule
|
||||||
|
|
||||||
|
|
||||||
def main():
|
def main():
|
||||||
|
|
||||||
module = AnsibleModule(
|
module = AnsibleModule(
|
||||||
argument_spec=dict(
|
argument_spec=dict(
|
||||||
hostname = dict(required=True),
|
hostname = dict(required=True),
|
||||||
|
@ -140,7 +139,8 @@ def main():
|
||||||
choices = ['present', 'absent'],
|
choices = ['present', 'absent'],
|
||||||
type = 'str'
|
type = 'str'
|
||||||
),
|
),
|
||||||
)
|
),
|
||||||
|
supports_check_mode=True
|
||||||
)
|
)
|
||||||
|
|
||||||
hostname = module.params['hostname']
|
hostname = module.params['hostname']
|
||||||
|
@ -148,6 +148,7 @@ def main():
|
||||||
password = module.params['password']
|
password = module.params['password']
|
||||||
state = module.params['state']
|
state = module.params['state']
|
||||||
ansible_bridge_name = module.params['name']
|
ansible_bridge_name = module.params['name']
|
||||||
|
check_mode = module.check_mode
|
||||||
changed = False
|
changed = False
|
||||||
changed_message = []
|
changed_message = []
|
||||||
msg = ""
|
msg = ""
|
||||||
|
@ -199,6 +200,7 @@ def main():
|
||||||
bridge_settings_diff_keys[key] = settings[key]
|
bridge_settings_diff_keys[key] = settings[key]
|
||||||
|
|
||||||
if bridge_settings_diff_keys != {}:
|
if bridge_settings_diff_keys != {}:
|
||||||
|
if not check_mode:
|
||||||
mk.api_edit(base_path=settings_path, params=bridge_settings_diff_keys)
|
mk.api_edit(base_path=settings_path, params=bridge_settings_diff_keys)
|
||||||
changed_message.append(bridge_settings_diff_keys)
|
changed_message.append(bridge_settings_diff_keys)
|
||||||
changed = True
|
changed = True
|
||||||
|
@ -227,6 +229,7 @@ def main():
|
||||||
###################################################################
|
###################################################################
|
||||||
if (state == "present" and isinstance(ansible_bridge_name, str)):
|
if (state == "present" and isinstance(ansible_bridge_name, str)):
|
||||||
if mikrotik_bridge == {}:
|
if mikrotik_bridge == {}:
|
||||||
|
if not check_mode:
|
||||||
mk.api_add(
|
mk.api_add(
|
||||||
base_path=bridge_path,
|
base_path=bridge_path,
|
||||||
params=bridge_params
|
params=bridge_params
|
||||||
|
@ -244,6 +247,7 @@ def main():
|
||||||
bridge_diff_keys[key] = bridge_params[key]
|
bridge_diff_keys[key] = bridge_params[key]
|
||||||
if bridge_diff_keys != {}:
|
if bridge_diff_keys != {}:
|
||||||
bridge_diff_keys['numbers'] = client_id
|
bridge_diff_keys['numbers'] = client_id
|
||||||
|
if not check_mode:
|
||||||
mk.api_edit(base_path=bridge_path, params=bridge_diff_keys)
|
mk.api_edit(base_path=bridge_path, params=bridge_diff_keys)
|
||||||
changed = True
|
changed = True
|
||||||
changed_message.append("Changed bridge: " + bridge_params['name'])
|
changed_message.append("Changed bridge: " + bridge_params['name'])
|
||||||
|
@ -256,6 +260,7 @@ def main():
|
||||||
|
|
||||||
elif state == "absent":
|
elif state == "absent":
|
||||||
if client_id:
|
if client_id:
|
||||||
|
if not check_mode:
|
||||||
mk.api_remove(base_path=bridge_path, remove_id=client_id)
|
mk.api_remove(base_path=bridge_path, remove_id=client_id)
|
||||||
changed_message.append(bridge_params['name'] + " removed")
|
changed_message.append(bridge_params['name'] + " removed")
|
||||||
changed = True
|
changed = True
|
||||||
|
|
|
@ -1252,7 +1252,11 @@
|
||||||
with_items:
|
with_items:
|
||||||
- "bridge1"
|
- "bridge1"
|
||||||
register: mod_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
|
# bridge ports depend on bridge being created first
|
||||||
|
|
||||||
|
@ -1280,7 +1284,11 @@
|
||||||
- [ "bridge1" ]
|
- [ "bridge1" ]
|
||||||
- [ "ether8" ]
|
- [ "ether8" ]
|
||||||
register: mod_bridge1_port
|
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
|
- name: Add additional param to bridge port
|
||||||
mt_interface_bridge_port:
|
mt_interface_bridge_port:
|
||||||
|
@ -1308,7 +1316,11 @@
|
||||||
- [ "bridge1" ]
|
- [ "bridge1" ]
|
||||||
- [ "ether7" ]
|
- [ "ether7" ]
|
||||||
register: bridge1_add_2nd_inter
|
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
|
- name: ALWAYS_CHANGES Remove 2nd interface to bridge1 port
|
||||||
mt_interface_bridge_port:
|
mt_interface_bridge_port:
|
||||||
|
@ -1322,7 +1334,11 @@
|
||||||
- [ "bridge1" ]
|
- [ "bridge1" ]
|
||||||
- [ "ether7" ]
|
- [ "ether7" ]
|
||||||
register: bridge1_rem_2nd_inter
|
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
|
- name: Add bridge2
|
||||||
mt_interface_bridge:
|
mt_interface_bridge:
|
||||||
|
@ -1359,7 +1375,11 @@
|
||||||
use-ip-firewall-for-vlan: no
|
use-ip-firewall-for-vlan: no
|
||||||
use-ip-firewall-for-pppoe: no
|
use-ip-firewall-for-pppoe: no
|
||||||
register: bridge_settings_1
|
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)
|
- name: Adjust settings again (idempotency test)
|
||||||
mt_interface_bridge:
|
mt_interface_bridge:
|
||||||
|
@ -1372,7 +1392,11 @@
|
||||||
use-ip-firewall-for-vlan: no
|
use-ip-firewall-for-vlan: no
|
||||||
use-ip-firewall-for-pppoe: no
|
use-ip-firewall-for-pppoe: no
|
||||||
register: bridge_settings_2
|
register: bridge_settings_2
|
||||||
failed_when: ( bridge_settings_2 | changed )
|
failed_when: (
|
||||||
|
not ansible_check_mode
|
||||||
|
) and (
|
||||||
|
( bridge_settings_2 | changed )
|
||||||
|
)
|
||||||
|
|
||||||
tags: bridge
|
tags: bridge
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue