Skip to content

Commit 5deb79f

Browse files
Bugfix: Add group to ALLOWED_QUERY_PARAMS to fix searches (#386)
1 parent 15346af commit 5deb79f

File tree

4 files changed

+112
-6
lines changed

4 files changed

+112
-6
lines changed

plugins/module_utils/netbox_utils.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -314,15 +314,15 @@
314314
"services": set(["device", "virtual_machine", "name", "port", "protocol"]),
315315
"site": set(["slug"]),
316316
"tags": set(["slug"]),
317-
"tagged_vlans": set(["name", "site", "vid", "vlan_group", "tenant"]),
317+
"tagged_vlans": set(["group", "name", "site", "vid", "vlan_group", "tenant"]),
318318
"tenant": set(["slug"]),
319319
"tenant_group": set(["slug"]),
320320
"termination_a": set(["name", "device", "virtual_machine"]),
321321
"termination_b": set(["name", "device", "virtual_machine"]),
322-
"untagged_vlan": set(["name", "site", "vid", "vlan_group", "tenant"]),
322+
"untagged_vlan": set(["group", "name", "site", "vid", "vlan_group", "tenant"]),
323323
"virtual_chassis": set(["master"]),
324324
"virtual_machine": set(["name", "cluster"]),
325-
"vlan": set(["name", "site", "tenant", "vid", "vlan_group"]),
325+
"vlan": set(["group", "name", "site", "tenant", "vid", "vlan_group"]),
326326
"vlan_group": set(["slug", "site"]),
327327
"vrf": set(["name", "tenant"]),
328328
}

tests/integration/netbox-deploy.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,13 @@ def make_netbox_calls(endpoint, payload):
121121
"slug": "test-vlan-group",
122122
"site": test_site.id,
123123
"tenant": test_tenant.id,
124-
}
124+
},
125+
{
126+
"name": "Test Vlan Group 2",
127+
"slug": "test-vlan-group-2",
128+
"site": test_site.id,
129+
"tenant": test_tenant.id,
130+
},
125131
]
126132
created_vlan_groups = make_netbox_calls(nb.ipam.vlan_groups, vlan_groups)
127133
## VLAN Group variables to be used later on

tests/integration/targets/latest/tasks/netbox_vlan.yml

Lines changed: 51 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@
5151
vid: 500
5252
site: Test Site
5353
tenant: Test Tenant
54+
vlan_group: "Test VLAN Group"
5455
state: present
5556
register: test_three
5657

@@ -63,6 +64,7 @@
6364
- test_three['vlan']['name'] == "Test VLAN 500"
6465
- test_three['vlan']['vid'] == 500
6566
- test_three['vlan']['site'] == 1
67+
- test_three['vlan']['group'] == 1
6668
- test_three['msg'] == "vlan Test VLAN 500 created"
6769

6870
- name: "VLAN 4: ASSERT - Update"
@@ -87,7 +89,6 @@
8789
assert:
8890
that:
8991
- test_four is changed
90-
- test_four['diff']['after']['group'] == 1
9192
- test_four['diff']['after']['status'] == "reserved"
9293
- test_four['diff']['after']['role'] == 1
9394
- test_four['diff']['after']['description'] == "Updated description"
@@ -102,6 +103,54 @@
102103
- test_four['vlan']['tags'][0] == 4
103104
- test_four['msg'] == "vlan Test VLAN 500 updated"
104105

106+
- name: "VLAN: ASSERT - IDEMPOTENT WITH VLAN_GROUP"
107+
netbox.netbox.netbox_vlan:
108+
netbox_url: http://localhost:32768
109+
netbox_token: 0123456789abcdef0123456789abcdef01234567
110+
data:
111+
name: "Test VLAN 500"
112+
vid: 500
113+
tenant: "Test Tenant"
114+
vlan_group: "Test VLAN Group"
115+
status: Reserved
116+
vlan_role: Network of care
117+
description: Updated description
118+
site: "Test Site"
119+
tags:
120+
- "Schnozzberry"
121+
state: present
122+
register: idempotent_vlan_group
123+
124+
- name: "VLAN: ASSERT - IDEMPOTENT WITH VLAN_GROUP"
125+
assert:
126+
that:
127+
- idempotent_vlan_group is not changed
128+
129+
- name: "VLAN: Create VLAN with same name, but different vlan_group"
130+
netbox.netbox.netbox_vlan:
131+
netbox_url: http://localhost:32768
132+
netbox_token: 0123456789abcdef0123456789abcdef01234567
133+
data:
134+
name: Test VLAN 500
135+
vid: 500
136+
site: Test Site
137+
tenant: Test Tenant
138+
vlan_group: "Test VLAN Group 2"
139+
state: present
140+
register: new_vlan_group
141+
142+
- name: "VLAN: ASSERT - Create VLAN with same name, but different vlan_group"
143+
assert:
144+
that:
145+
- new_vlan_group is changed
146+
- new_vlan_group['diff']['before']['state'] == "absent"
147+
- new_vlan_group['diff']['after']['state'] == "present"
148+
- new_vlan_group['vlan']['name'] == "Test VLAN 500"
149+
- new_vlan_group['vlan']['vid'] == 500
150+
- new_vlan_group['vlan']['site'] == 1
151+
- new_vlan_group['vlan']['group'] == 2
152+
- new_vlan_group['msg'] == "vlan Test VLAN 500 created"
153+
105154
- name: "VLAN 5: ASSERT - Delete more than one result"
106155
netbox.netbox.netbox_vlan:
107156
netbox_url: http://localhost:32768
@@ -125,6 +174,7 @@
125174
data:
126175
name: "Test VLAN 500"
127176
site: Test Site
177+
vlan_group: "Test VLAN Group"
128178
state: absent
129179
register: test_six
130180

tests/integration/targets/v2.8/tasks/netbox_vlan.yml

Lines changed: 51 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@
5151
vid: 500
5252
site: Test Site
5353
tenant: Test Tenant
54+
vlan_group: "Test VLAN Group"
5455
state: present
5556
register: test_three
5657

@@ -63,6 +64,7 @@
6364
- test_three['vlan']['name'] == "Test VLAN 500"
6465
- test_three['vlan']['vid'] == 500
6566
- test_three['vlan']['site'] == 1
67+
- test_three['vlan']['group'] == 1
6668
- test_three['msg'] == "vlan Test VLAN 500 created"
6769

6870
- name: "VLAN 4: ASSERT - Update"
@@ -87,7 +89,6 @@
8789
assert:
8890
that:
8991
- test_four is changed
90-
- test_four['diff']['after']['group'] == 1
9192
- test_four['diff']['after']['status'] == "reserved"
9293
- test_four['diff']['after']['role'] == 1
9394
- test_four['diff']['after']['description'] == "Updated description"
@@ -102,6 +103,54 @@
102103
- test_four['vlan']['tags'][0] == "Schnozzberry"
103104
- test_four['msg'] == "vlan Test VLAN 500 updated"
104105

106+
- name: "VLAN: ASSERT - IDEMPOTENT WITH VLAN_GROUP"
107+
netbox.netbox.netbox_vlan:
108+
netbox_url: http://localhost:32768
109+
netbox_token: 0123456789abcdef0123456789abcdef01234567
110+
data:
111+
name: "Test VLAN 500"
112+
vid: 500
113+
tenant: "Test Tenant"
114+
vlan_group: "Test VLAN Group"
115+
status: Reserved
116+
vlan_role: Network of care
117+
description: Updated description
118+
site: "Test Site"
119+
tags:
120+
- "Schnozzberry"
121+
state: present
122+
register: idempotent_vlan_group
123+
124+
- name: "VLAN: ASSERT - IDEMPOTENT WITH VLAN_GROUP"
125+
assert:
126+
that:
127+
- idempotent_vlan_group is not changed
128+
129+
- name: "VLAN: Create VLAN with same name, but different vlan_group"
130+
netbox.netbox.netbox_vlan:
131+
netbox_url: http://localhost:32768
132+
netbox_token: 0123456789abcdef0123456789abcdef01234567
133+
data:
134+
name: Test VLAN 500
135+
vid: 500
136+
site: Test Site
137+
tenant: Test Tenant
138+
vlan_group: "Test VLAN Group 2"
139+
state: present
140+
register: new_vlan_group
141+
142+
- name: "VLAN: ASSERT - Create VLAN with same name, but different vlan_group"
143+
assert:
144+
that:
145+
- new_vlan_group is changed
146+
- new_vlan_group['diff']['before']['state'] == "absent"
147+
- new_vlan_group['diff']['after']['state'] == "present"
148+
- new_vlan_group['vlan']['name'] == "Test VLAN 500"
149+
- new_vlan_group['vlan']['vid'] == 500
150+
- new_vlan_group['vlan']['site'] == 1
151+
- new_vlan_group['vlan']['group'] == 2
152+
- new_vlan_group['msg'] == "vlan Test VLAN 500 created"
153+
105154
- name: "VLAN 5: ASSERT - Delete more than one result"
106155
netbox.netbox.netbox_vlan:
107156
netbox_url: http://localhost:32768
@@ -125,6 +174,7 @@
125174
data:
126175
name: "Test VLAN 500"
127176
site: Test Site
177+
vlan_group: "Test VLAN Group"
128178
state: absent
129179
register: test_six
130180

0 commit comments

Comments
 (0)