Add 'Enforce Route Policy' field to WireGuardInstance model and forms

This commit is contained in:
Eduardo Silva
2026-01-27 11:20:16 -03:00
parent b6426e41c0
commit 20d5387232
4 changed files with 90 additions and 2 deletions

View File

@@ -23,12 +23,13 @@ class WireGuardInstanceForm(forms.ModelForm):
peer_list_refresh_interval = forms.IntegerField(label=_('Web Refresh Interval'), initial=10)
dns_primary = forms.GenericIPAddressField(label=_('Primary DNS'), initial='1.1.1.1', required=False)
dns_secondary = forms.GenericIPAddressField(label=_('Secondary DNS'), initial='', required=False)
enforce_route_policy = forms.BooleanField(label=_('Enforce Route Policy'), required=False)
class Meta:
model = WireGuardInstance
fields = [
'name', 'instance_id', 'private_key', 'public_key','hostname', 'listen_port', 'address',
'netmask', 'peer_list_refresh_interval', 'dns_primary', 'dns_secondary'
'netmask', 'peer_list_refresh_interval', 'dns_primary', 'dns_secondary', 'enforce_route_policy'
]
def __init__(self, *args, **kwargs):
@@ -86,6 +87,10 @@ class WireGuardInstanceForm(forms.ModelForm):
Column('dns_secondary', css_class='form-group col-md-6 mb-0'),
css_class='form-row'
),
Row(
Column('enforce_route_policy', css_class='form-group col-md-12 mb-0'),
css_class='form-row'
),
css_class='col-lg-12'
),
css_class='row'

View File

@@ -0,0 +1,18 @@
# Generated by Django 5.2.9 on 2026-01-27 13:07
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('wireguard', '0028_peer_routing_template'),
]
operations = [
migrations.AddField(
model_name='wireguardinstance',
name='enforce_route_policy',
field=models.BooleanField(default=False),
),
]

View File

@@ -64,6 +64,7 @@ class WireGuardInstance(models.Model):
dns_secondary = models.GenericIPAddressField(unique=False, protocol='IPv4', default='1.0.0.1', blank=True, null=True)
pending_changes = models.BooleanField(default=True)
legacy_firewall = models.BooleanField(default=False)
enforce_route_policy = models.BooleanField(default=False)
created = models.DateTimeField(auto_now_add=True)
updated = models.DateTimeField(auto_now=True)