Update Rack Initializer for Netbox 2.7
The rack 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 racks.yml file as follows: - Rack types must match one of the 5 rack types given, e.g. '4-post-cabinet'. - Rack width must match one of the 2 rack widths given, i.e. '19' or '23'. See the diff of this commit for further information how this is meant.
This commit is contained in:
parent
c001626b85
commit
7b914d31d6
@ -1,16 +1,32 @@
|
|||||||
|
## Possible Choices:
|
||||||
|
## width:
|
||||||
|
## - 19
|
||||||
|
## - 23
|
||||||
|
## types:
|
||||||
|
## - 2-post-frame
|
||||||
|
## - 4-post-frame
|
||||||
|
## - 4-post-cabinet
|
||||||
|
## - wall-frame
|
||||||
|
## - wall-cabinet
|
||||||
|
## outer_unit:
|
||||||
|
## - mm
|
||||||
|
## - in
|
||||||
|
##
|
||||||
|
## Examples:
|
||||||
|
|
||||||
# - site: AMS 1
|
# - site: AMS 1
|
||||||
# name: rack-01
|
# name: rack-01
|
||||||
# role: Role 1
|
# role: Role 1
|
||||||
# type: 4-post cabinet
|
# type: 4-post-cabinet
|
||||||
# width: 19 inches
|
# width: 19
|
||||||
# u_height: 47
|
# u_height: 47
|
||||||
# custom_fields:
|
# custom_fields:
|
||||||
# text_field: Description
|
# text_field: Description
|
||||||
# - site: AMS 2
|
# - site: AMS 2
|
||||||
# name: rack-02
|
# name: rack-02
|
||||||
# role: Role 2
|
# role: Role 2
|
||||||
# type: 4-post cabinet
|
# type: 4-post-cabinet
|
||||||
# width: 19 inches
|
# width: 19
|
||||||
# u_height: 47
|
# u_height: 47
|
||||||
# custom_fields:
|
# custom_fields:
|
||||||
# text_field: Description
|
# text_field: Description
|
||||||
@ -18,8 +34,8 @@
|
|||||||
# name: rack-03
|
# name: rack-03
|
||||||
# group: cage 101
|
# group: cage 101
|
||||||
# role: Role 3
|
# role: Role 3
|
||||||
# type: 4-post cabinet
|
# type: 4-post-cabinet
|
||||||
# width: 19 inches
|
# width: 19
|
||||||
# u_height: 47
|
# u_height: 47
|
||||||
# custom_fields:
|
# custom_fields:
|
||||||
# text_field: Description
|
# text_field: Description
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
from dcim.models import Site, RackRole, Rack, RackGroup
|
from dcim.models import Site, RackRole, Rack, RackGroup
|
||||||
from tenancy.models import Tenant
|
from tenancy.models import Tenant
|
||||||
from extras.models import CustomField, CustomFieldValue
|
from extras.models import CustomField, CustomFieldValue
|
||||||
from dcim.constants import RACK_TYPE_CHOICES, RACK_WIDTH_CHOICES
|
|
||||||
from ruamel.yaml import YAML
|
from ruamel.yaml import YAML
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
import sys
|
import sys
|
||||||
@ -41,14 +40,6 @@ with file.open('r') as stream:
|
|||||||
|
|
||||||
params[assoc] = model.objects.get(**query)
|
params[assoc] = model.objects.get(**query)
|
||||||
|
|
||||||
for rack_type in RACK_TYPE_CHOICES:
|
|
||||||
if params['type'] in rack_type:
|
|
||||||
params['type'] = rack_type[0]
|
|
||||||
|
|
||||||
for rack_width in RACK_WIDTH_CHOICES:
|
|
||||||
if params['width'] in rack_width:
|
|
||||||
params['width'] = rack_width[0]
|
|
||||||
|
|
||||||
rack, created = Rack.objects.get_or_create(**params)
|
rack, created = Rack.objects.get_or_create(**params)
|
||||||
|
|
||||||
if created:
|
if created:
|
||||||
|
Loading…
Reference in New Issue
Block a user