mirror of
https://github.com/zahodi/ansible-mikrotik.git
synced 2025-07-13 19:54:23 +02:00
address-list to use common class
This commit is contained in:
parent
8392bf6f40
commit
223d916390
2 changed files with 41 additions and 39 deletions
|
@ -44,9 +44,11 @@ EXAMPLES = '''
|
||||||
hostname: "{{ inventory_hostname }}"
|
hostname: "{{ inventory_hostname }}"
|
||||||
username: "{{ mt_user }}"
|
username: "{{ mt_user }}"
|
||||||
password: "{{ mt_pass }}"
|
password: "{{ mt_pass }}"
|
||||||
disabled: no
|
parameter: service
|
||||||
name: ftp
|
settings:
|
||||||
address: 192.168.52.3
|
disabled: no
|
||||||
|
name: ftp
|
||||||
|
address: 192.168.52.3
|
||||||
'''
|
'''
|
||||||
|
|
||||||
from ansible.module_utils.basic import AnsibleModule
|
from ansible.module_utils.basic import AnsibleModule
|
||||||
|
@ -62,7 +64,7 @@ def main():
|
||||||
settings = dict(required=False, type='dict'),
|
settings = dict(required=False, type='dict'),
|
||||||
parameter = dict(
|
parameter = dict(
|
||||||
required = True,
|
required = True,
|
||||||
choices = ['service', 'pool'],
|
choices = ['service', 'pool', 'address-list'],
|
||||||
type = 'str'
|
type = 'str'
|
||||||
),
|
),
|
||||||
state = dict(
|
state = dict(
|
||||||
|
@ -75,7 +77,11 @@ def main():
|
||||||
)
|
)
|
||||||
|
|
||||||
params = module.params
|
params = module.params
|
||||||
idempotent_parameter = 'name'
|
if params['parameter'] == 'address-list':
|
||||||
|
params['parameter'] = 'firewall/address-list'
|
||||||
|
idempotent_parameter = 'address'
|
||||||
|
else:
|
||||||
|
idempotent_parameter = 'name'
|
||||||
|
|
||||||
mt_obj = MikrotikIdempotent(
|
mt_obj = MikrotikIdempotent(
|
||||||
hostname = params['hostname'],
|
hostname = params['hostname'],
|
||||||
|
|
|
@ -1,39 +1,34 @@
|
||||||
---
|
---
|
||||||
- name: ALWAYS_CHANGES Test adding a firewall address-list
|
- name: Test adding a firewall address-list
|
||||||
mt_ip_firewall_addresslist:
|
mt_ip:
|
||||||
hostname: "{{ mt_hostname }}"
|
hostname: "{{ mt_hostname }}"
|
||||||
username: "{{ mt_user }}"
|
username: "{{ mt_user }}"
|
||||||
password: "{{ mt_pass }}"
|
password: "{{ mt_pass }}"
|
||||||
state: "present"
|
state: "present"
|
||||||
list_name: test_list
|
parameter: address-list
|
||||||
address_list:
|
settings: "{{ item }}"
|
||||||
- address: 192.168.1.2
|
with_items:
|
||||||
comment: dns1
|
- address: 192.168.1.2
|
||||||
- address: 192.168.1.3
|
comment: dns1
|
||||||
comment: dns2
|
list: test_list
|
||||||
- address: 192.168.1.6
|
- address: 192.168.1.3
|
||||||
comment: test_comment3
|
comment: dns2
|
||||||
register: address_list_add_1
|
list: test_list
|
||||||
failed_when: (
|
- address: 192.168.1.6
|
||||||
not ansible_check_mode
|
comment: test_comment3
|
||||||
) and (
|
list: test_list
|
||||||
not ( address_list_add_1 | changed )
|
|
||||||
)
|
|
||||||
|
|
||||||
- name: ALWAYS_CHANGES Test editing a firewall address-list
|
- name: ALWAYS_CHANGES Test editing a firewall address-list
|
||||||
mt_ip_firewall_addresslist:
|
mt_ip:
|
||||||
hostname: "{{ mt_hostname }}"
|
hostname: "{{ mt_hostname }}"
|
||||||
username: "{{ mt_user }}"
|
username: "{{ mt_user }}"
|
||||||
password: "{{ mt_pass }}"
|
password: "{{ mt_pass }}"
|
||||||
state: "present"
|
state: "present"
|
||||||
list_name: test_list
|
parameter: address-list
|
||||||
address_list:
|
settings:
|
||||||
- address: 192.168.1.2
|
address: 192.168.1.2
|
||||||
comment: dns1
|
comment: dns1
|
||||||
- address: 192.168.1.3
|
list: test_list2
|
||||||
comment: dns2
|
|
||||||
- address: 192.168.1.19
|
|
||||||
comment: test_comment3
|
|
||||||
register: address_list_edit_1
|
register: address_list_edit_1
|
||||||
failed_when: (
|
failed_when: (
|
||||||
not ansible_check_mode
|
not ansible_check_mode
|
||||||
|
@ -42,19 +37,16 @@
|
||||||
)
|
)
|
||||||
|
|
||||||
- name: Test adding a duplicate address-list
|
- name: Test adding a duplicate address-list
|
||||||
mt_ip_firewall_addresslist:
|
mt_ip:
|
||||||
hostname: "{{ mt_hostname }}"
|
hostname: "{{ mt_hostname }}"
|
||||||
username: "{{ mt_user }}"
|
username: "{{ mt_user }}"
|
||||||
password: "{{ mt_pass }}"
|
password: "{{ mt_pass }}"
|
||||||
state: "present"
|
state: "present"
|
||||||
list_name: test_list
|
parameter: address-list
|
||||||
address_list:
|
settings:
|
||||||
- address: 192.168.1.2
|
address: 192.168.1.3
|
||||||
comment: dns1
|
|
||||||
- address: 192.168.1.3
|
|
||||||
comment: dns2
|
comment: dns2
|
||||||
- address: 192.168.1.19
|
list: test_list
|
||||||
comment: test_comment3
|
|
||||||
register: add_address_list_add_dup_1
|
register: add_address_list_add_dup_1
|
||||||
failed_when: (
|
failed_when: (
|
||||||
not ansible_check_mode
|
not ansible_check_mode
|
||||||
|
@ -63,12 +55,16 @@
|
||||||
)
|
)
|
||||||
|
|
||||||
- name: ALWAYS_CHANGES Test removing a firewall address-list
|
- name: ALWAYS_CHANGES Test removing a firewall address-list
|
||||||
mt_ip_firewall_addresslist:
|
mt_ip:
|
||||||
hostname: "{{ mt_hostname }}"
|
hostname: "{{ mt_hostname }}"
|
||||||
username: "{{ mt_user }}"
|
username: "{{ mt_user }}"
|
||||||
password: "{{ mt_pass }}"
|
password: "{{ mt_pass }}"
|
||||||
state: "absent"
|
state: "absent"
|
||||||
list_name: test_list
|
parameter: address-list
|
||||||
|
settings:
|
||||||
|
address: 192.168.1.2
|
||||||
|
comment: dns1
|
||||||
|
list: test_list
|
||||||
register: address_list_rem_1
|
register: address_list_rem_1
|
||||||
failed_when: (
|
failed_when: (
|
||||||
not ansible_check_mode
|
not ansible_check_mode
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue