Skip to content
Snippets Groups Projects
Commit 50ca172d authored by Anders Harrisson's avatar Anders Harrisson
Browse files

Add host variables for NetBox object id and object model label

parent 1bf262eb
No related branches found
No related tags found
1 merge request!18Add host variables for NetBox object id and object model label
......@@ -85,7 +85,10 @@ class IPAddressSerializer(serializers.BaseSerializer):
class DeviceSerializer(serializers.BaseSerializer):
def to_representation(self, instance):
variables = {}
variables = {
"netbox_model_label": instance._meta.label,
"netbox_id": instance.id,
}
variables["netbox_interfaces"] = []
for interface in instance.interfaces.all():
serializer = InterfaceSerializer(interface)
......@@ -112,6 +115,8 @@ class VMInterfaceSerializer(serializers.BaseSerializer):
class VMSerializer(serializers.BaseSerializer):
def to_representation(self, instance):
variables = {
"netbox_model_label": instance._meta.label,
"netbox_id": instance.id,
"netbox_virtualmachine_name": instance.name,
"netbox_virtualmachine_vcpus": float(instance.vcpus) if instance.vcpus is not None else 0.0,
"netbox_virtualmachine_memory": instance.memory or 0,
......
......@@ -225,6 +225,8 @@ class DeviceSerializerTest(TestCase):
"description": 'Test Device Description',
"enabled": True,
"variables": json.dumps({
"netbox_model_label": "dcim.Device",
"netbox_id": 2,
"netbox_interfaces": [
{
"name": 'eth0',
......@@ -309,6 +311,8 @@ class VMSerializerTest(TestCase):
"description": 'Test VM Description',
"enabled": True,
"variables": json.dumps({
"netbox_model_label": "virtualization.VirtualMachine",
"netbox_id": 3,
"netbox_virtualmachine_name": 'Test VM',
"netbox_virtualmachine_vcpus": 4.0,
"netbox_virtualmachine_memory": 8192,
......@@ -421,6 +425,8 @@ class DeviceSerializerNoPrimaryIPTest(TestCase):
"description": 'Test Device Description',
"enabled": True,
"variables": json.dumps({
"netbox_model_label": "dcim.Device",
"netbox_id": 1,
"netbox_interfaces": [
{
"name": 'eth0',
......@@ -471,6 +477,8 @@ class VMSerializerNoPrimaryIPTest(TestCase):
"description": 'Test VM Description',
"enabled": True,
"variables": json.dumps({
"netbox_model_label": "virtualization.VirtualMachine",
"netbox_id": 2,
"netbox_virtualmachine_name": 'Test VM',
"netbox_virtualmachine_vcpus": 4.0,
"netbox_virtualmachine_memory": 8192,
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment