Skip to content

Commit 27f671e

Browse files
committed
Update IP Initializer for Netbox 2.7
The ip address database model has changed in Netbox 2.7. Therefore the initializer code, that was used before, broke. As a user, you will need to update your ip_addresses.yml file as follows: - Make sure the status is written in lower case. See the diff of this commit for further information how this is meant.
1 parent 74a0e2c commit 27f671e

File tree

2 files changed

+24
-13
lines changed

2 files changed

+24
-13
lines changed

initializers/ip_addresses.yml

Lines changed: 24 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,44 @@
1+
## Possible Choices:
2+
## status:
3+
## - active
4+
## - reserved
5+
## - deprecated
6+
## - dhcp
7+
## role:
8+
## - loopback
9+
## - secondary
10+
## - anycast
11+
## - vip
12+
## - vrrp
13+
## - hsrp
14+
## - glbp
15+
## - carp
16+
##
17+
## Examples:
18+
119
# - address: 10.1.1.1/24
220
# device: server01
321
# interface: to-server02
4-
# status: Active
22+
# status: active
523
# vrf: vrf1
624
# - address: 2001:db8:a000:1::1/64
725
# device: server01
826
# interface: to-server02
9-
# status: Active
27+
# status: active
1028
# vrf: vrf1
1129
# - address: 10.1.1.2/24
1230
# device: server02
1331
# interface: to-server01
14-
# status: Active
32+
# status: active
1533
# - address: 2001:db8:a000:1::2/64
1634
# device: server02
1735
# interface: to-server01
18-
# status: Active
36+
# status: active
1937
# - address: 10.1.1.10/24
2038
# description: reserved IP
21-
# status: Reserved
39+
# status: reserved
2240
# tenant: tenant1
2341
# - address: 2001:db8:a000:1::10/64
2442
# description: reserved IP
25-
# status: Reserved
43+
# status: reserved
2644
# tenant: tenant1

startup_scripts/260_ip_addresses.py

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
from ipam.models import IPAddress, VRF
2-
from ipam.constants import IPADDRESS_STATUS_CHOICES
32
from dcim.models import Device, Interface
43
from virtualization.models import VirtualMachine
54
from tenancy.models import Tenant
@@ -49,12 +48,6 @@
4948
query = { field: params.pop(assoc) }
5049
params[assoc] = model.objects.get(**query)
5150

52-
if 'status' in params:
53-
for ip_status in IPADDRESS_STATUS_CHOICES:
54-
if params['status'] in ip_status:
55-
params['status'] = ip_status[0]
56-
break
57-
5851
ip_address, created = IPAddress.objects.get_or_create(**params)
5952

6053
if created:

0 commit comments

Comments
 (0)