diff --git a/.jenkins b/.jenkins index e6e232b11..c1919bf6b 100644 --- a/.jenkins +++ b/.jenkins @@ -81,6 +81,7 @@ spec: sed -i -e "s/SECRET_KEY = .*/SECRET_KEY = 'netboxci'/g" configuration.py sed -i -e "s/USER': .*/USER': 'netbox',/g" configuration.py sed -i -e "s/PASSWORD': .*/PASSWORD': 'netbox',/g" configuration.py + sed -i -e "s/PLUGINS = .*/PLUGINS = ['netbox_virtual_circuit_plugin']/g" configuration.py """ } // finally, kick off tox to run the entire test suite diff --git a/netbox/vapor/api/serializers.py b/netbox/vapor/api/serializers.py index 77a4a4ed0..fdaff0410 100644 --- a/netbox/vapor/api/serializers.py +++ b/netbox/vapor/api/serializers.py @@ -19,6 +19,8 @@ from utilities.api import ChoiceField, ValidatedModelSerializer, SerializedPKRel from tenancy.models import Tenant as Customer from utilities.utils import dynamic_import +from netbox_virtual_circuit_plugin.models import VirtualCircuitVLAN, VirtualCircuit + def get_serializer_for_model(model, prefix=''): """ @@ -45,6 +47,17 @@ def get_serializer_for_model(model, prefix=''): ) +class NestedVirtualCircuitSerializer(ValidatedModelSerializer): + vcid = serializers.ReadOnlyField(source='virtual_circuit.vcid') + name = serializers.ReadOnlyField(source='virtual_circuit.name') + status = serializers.ReadOnlyField(source='virtual_circuit.status') + context = serializers.ReadOnlyField(source='virtual_circuit.context') + + class Meta: + model = VirtualCircuit + fields = ['vcid', 'name', 'status', 'context'] + + class NestedVaporVLANSerializer(WritableNestedSerializer): url = serializers.HyperlinkedIdentityField(view_name='ipam-api:vlan-detail') @@ -55,9 +68,18 @@ class NestedVaporVLANSerializer(WritableNestedSerializer): many=True, ) + virtual_circuit = SerializedPKRelatedField( + source='vlan_of', + queryset=VirtualCircuitVLAN.objects.all(), + serializer=NestedVirtualCircuitSerializer, + pk_field='vlan', + required=False, + many=False, + ) + class Meta: model = VLAN - fields = ['id', 'url', 'vid', 'name', 'display_name', 'prefixes', 'status'] + fields = ['id', 'url', 'vid', 'name', 'display_name', 'prefixes', 'status', 'virtual_circuit'] class NestedVLANInterfaceSerializer(WritableNestedSerializer):