Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 30 additions & 0 deletions netbox_routing/models/eigrp.py
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,10 @@ class EIGRPRouter(PrimaryModel):
)
rid = IPAddressField(verbose_name=_('Router ID'), blank=True, null=True)

clone_fields = ('device', 'mode', 'name', 'pid', 'rid')

prerequisite_models = ('dcim.Device',)

class Meta:
verbose_name = 'EIGRP Router'

Expand Down Expand Up @@ -80,6 +84,10 @@ class EIGRPAddressFamily(PrimaryModel):
)
rid = IPAddressField(verbose_name=_('Router ID'), blank=True, null=True)

clone_fields = ('router', 'vrf', 'family')

prerequisite_models = ('netbox_routing.EIGRPRouter',)

class Meta:
verbose_name = 'EIGRP Address Family'
constraints = (
Expand Down Expand Up @@ -122,6 +130,13 @@ class EIGRPNetwork(PrimaryModel):
null=False,
)

clone_fields = ('router', 'address_family', 'network')

prerequisite_models = (
'netbox_routing.EIGRPRouter',
'ipam.Prefix',
)

class Meta:
verbose_name = 'EIGRP Network'
constraints = (
Expand Down Expand Up @@ -184,6 +199,21 @@ class EIGRPInterface(PrimaryModel):
verbose_name=_('Passphrase'), max_length=200, blank=True, null=True
)

clone_fields = (
'router',
'address_family',
'interface',
'passive',
'bfd',
'authentication',
'passphrase',
)

prerequisite_models = (
'netbox_routing.EIGRPRouter',
'dcim.Interface',
)

class Meta:
verbose_name = 'EIGRP Interface'
constraints = (
Expand Down
7 changes: 5 additions & 2 deletions netbox_routing/models/ospf.py
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ class OSPFInstance(PrimaryModel):
null=True,
)

clone_fields = ('device',)
clone_fields = ('name', 'router_id', 'process_id', 'device', 'vrf')
prerequisite_models = ('dcim.Device',)

class Meta:
Expand All @@ -62,7 +62,7 @@ class OSPFArea(PrimaryModel):
default='standard',
)
prerequisite_models = ()
clone_fields = ()
clone_fields = ('area_id', 'area_type')

class Meta:
ordering = ['area_id']
Expand Down Expand Up @@ -123,8 +123,11 @@ class OSPFInterface(PrimaryModel):
passphrase = models.CharField(max_length=200, blank=True, null=True)

clone_fields = (
'device',
'instance',
'area',
'interface',
'passive',
'priority',
'bfd',
'authentication',
Expand Down
11 changes: 10 additions & 1 deletion netbox_routing/models/static.py
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,16 @@ class StaticRoute(PrimaryModel):
null=True,
)

clone_fields = ('vrf', 'metric', 'permanent')
clone_fields = (
'name',
'devices',
'prefix',
'next_hop',
'vrf',
'metric',
'permanent',
)

prerequisite_models = ('dcim.Device',)

class Meta:
Expand Down