100 lines
2.5 KiB
YAML
100 lines
2.5 KiB
YAML
# Test code for the Meraki modules
|
|
# Copyright: (c) 2018, Kevin Breit (@kbreit)
|
|
|
|
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
|
|
---
|
|
- block:
|
|
- name: Create wireless network
|
|
meraki_network:
|
|
auth_key: '{{ auth_key }}'
|
|
state: present
|
|
org_name: '{{test_org_name}}'
|
|
net_name: TestNetWireless
|
|
type: wireless
|
|
delegate_to: localhost
|
|
register: new_net
|
|
|
|
- set_fact:
|
|
net: '{{new_net.data.id}}'
|
|
|
|
- name: Create single firewall rule
|
|
meraki_mr_l3_firewall:
|
|
auth_key: '{{ auth_key }}'
|
|
state: present
|
|
org_name: '{{test_org_name}}'
|
|
net_id: '{{net}}'
|
|
number: 1
|
|
rules:
|
|
- comment: Integration test rule
|
|
policy: allow
|
|
protocol: tcp
|
|
dest_port: 80
|
|
dest_cidr: 192.0.2.0/24
|
|
allow_lan_access: no
|
|
delegate_to: localhost
|
|
register: create_one
|
|
|
|
- debug:
|
|
msg: '{{create_one}}'
|
|
|
|
- assert:
|
|
that:
|
|
- create_one.data.0.comment == 'Integration test rule'
|
|
- create_one.data.1.policy == 'deny'
|
|
- create_one.data is defined
|
|
|
|
- name: Enable local LAN access
|
|
meraki_mr_l3_firewall:
|
|
auth_key: '{{ auth_key }}'
|
|
state: present
|
|
org_name: '{{test_org_name}}'
|
|
net_id: '{{net}}'
|
|
number: 1
|
|
rules:
|
|
allow_lan_access: yes
|
|
delegate_to: localhost
|
|
register: enable_lan
|
|
|
|
- assert:
|
|
that:
|
|
- enable_lan.data.1.policy == 'allow'
|
|
|
|
- name: Query firewall rules
|
|
meraki_mr_l3_firewall:
|
|
auth_key: '{{ auth_key }}'
|
|
state: query
|
|
org_name: '{{test_org_name}}'
|
|
net_id: '{{net}}'
|
|
number: 1
|
|
delegate_to: localhost
|
|
register: query
|
|
|
|
- debug:
|
|
msg: '{{query}}'
|
|
|
|
- assert:
|
|
that:
|
|
- query.data.1.comment == 'Wireless clients accessing LAN'
|
|
- query.data.2.comment == 'Default rule'
|
|
- query.changed == False
|
|
|
|
############################################################################
|
|
# Tear down starts here
|
|
############################################################################
|
|
always:
|
|
- name: Delete wireless SSID
|
|
meraki_ssid:
|
|
auth_key: '{{ auth_key }}'
|
|
state: absent
|
|
org_name: '{{test_org_name}}'
|
|
net_id: '{{net}}'
|
|
number: 1
|
|
delegate_to: localhost
|
|
|
|
- name: Delete wireless network
|
|
meraki_network:
|
|
auth_key: '{{ auth_key }}'
|
|
state: absent
|
|
org_name: '{{test_org_name}}'
|
|
net_id: '{{net}}'
|
|
delegate_to: localhost
|