From e7536b5528c8ba3ea67f6ede0a6265344997983f Mon Sep 17 00:00:00 2001 From: Arista Jenkins Date: Wed, 5 Mar 2025 16:20:07 +0000 Subject: [PATCH] update/inventory.v1: Add IPV6 Field in ProvisionedDevice Added Ipv6 address field under ProvisionedDevice message in inventory proto file. This is to support ipv6 addresses support within inventory service. [GENERATED_COMMIT] Change-Id: I3593c574301bb88e932d3f08eace424e2218a5d6 --- arista/inventory/v1/inventory_pb2.py | 20 ++++++++++---------- arista/inventory/v1/inventory_pb2.pyi | 13 +++++++++++-- 2 files changed, 21 insertions(+), 12 deletions(-) diff --git a/arista/inventory/v1/inventory_pb2.py b/arista/inventory/v1/inventory_pb2.py index c4374fee..a7fbc03c 100644 --- a/arista/inventory/v1/inventory_pb2.py +++ b/arista/inventory/v1/inventory_pb2.py @@ -28,7 +28,7 @@ from fmp import inet_pb2 as fmp_dot_inet__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n#arista/inventory.v1/inventory.proto\x12\x13\x61rista.inventory.v1\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1egoogle/protobuf/wrappers.proto\x1a\x14\x66mp/extensions.proto\x1a\x0e\x66mp/inet.proto\"\xa1\x01\n\x12\x45xtendedAttributes\x12T\n\x0f\x66\x65\x61ture_enabled\x18\x01 \x03(\x0b\x32;.arista.inventory.v1.ExtendedAttributes.FeatureEnabledEntry\x1a\x35\n\x13\x46\x65\x61tureEnabledEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\x08:\x02\x38\x01\"B\n\tDeviceKey\x12/\n\tdevice_id\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue:\x04\x80\x8e\x19\x01\"\x8d\x01\n\x13\x44\x65viceConfiguration\x12\x46\n\x07options\x18\x01 \x03(\x0b\x32\x35.arista.inventory.v1.DeviceConfiguration.OptionsEntry\x1a.\n\x0cOptionsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"A\n\x07UUIDKey\x12\x30\n\nrequest_id\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue:\x04\x80\x8e\x19\x01\"\xf5\x01\n\x16\x44\x65viceOnboardingConfig\x12)\n\x03key\x18\x01 \x01(\x0b\x32\x1c.arista.inventory.v1.UUIDKey\x12\x34\n\x0ehostname_or_ip\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x31\n\x0b\x64\x65vice_type\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12?\n\rdevice_config\x18\x04 \x01(\x0b\x32(.arista.inventory.v1.DeviceConfiguration:\x06\xfa\x8d\x19\x02rw\"\x90\x02\n\x10\x44\x65viceOnboarding\x12)\n\x03key\x18\x01 \x01(\x0b\x32\x1c.arista.inventory.v1.UUIDKey\x12/\n\tdevice_id\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x35\n\x06status\x18\x03 \x01(\x0e\x32%.arista.inventory.v1.OnboardingStatus\x12+\n\x05\x65rror\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x34\n\x0estatus_message\x18\x05 \x01(\x0b\x32\x1c.google.protobuf.StringValue:\x06\xfa\x8d\x19\x02ro\"\xdd\x01\n\x1b\x44\x65viceDecommissioningConfig\x12)\n\x03key\x18\x01 \x01(\x0b\x32\x1c.arista.inventory.v1.UUIDKey\x12/\n\tdevice_id\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12)\n\x05\x66orce\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.BoolValue\x12/\n\tuser_name\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue:\x06\xfa\x8d\x19\x02rw\"\xe9\x01\n\x15\x44\x65viceDecommissioning\x12)\n\x03key\x18\x01 \x01(\x0b\x32\x1c.arista.inventory.v1.UUIDKey\x12:\n\x06status\x18\x02 \x01(\x0e\x32*.arista.inventory.v1.DecommissioningStatus\x12+\n\x05\x65rror\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x34\n\x0estatus_message\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue:\x06\xfa\x8d\x19\x02ro\"\xde\x04\n\x06\x44\x65vice\x12+\n\x03key\x18\x01 \x01(\x0b\x32\x1e.arista.inventory.v1.DeviceKey\x12\x36\n\x10software_version\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x30\n\nmodel_name\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x37\n\x11hardware_revision\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12*\n\x04\x66qdn\x18\n \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12.\n\x08hostname\x18\x0b \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x31\n\x0b\x64omain_name\x18\x0c \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x38\n\x12system_mac_address\x18\r \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12-\n\tboot_time\x18\x14 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12>\n\x10streaming_status\x18\x1e \x01(\x0e\x32$.arista.inventory.v1.StreamingStatus\x12\x44\n\x13\x65xtended_attributes\x18\x1f \x01(\x0b\x32\'.arista.inventory.v1.ExtendedAttributes:\x06\xfa\x8d\x19\x02ro\"\xbf\x02\n\x11ProvisionedDevice\x12+\n\x03key\x18\x01 \x01(\x0b\x32\x1e.arista.inventory.v1.DeviceKey\x12\x37\n\x06status\x18\x02 \x01(\x0e\x32\'.arista.inventory.v1.ProvisioningStatus\x12+\n\x05\x65rror\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12,\n\x08ztp_mode\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.BoolValue\x12\"\n\nip_address\x18\x05 \x01(\x0b\x32\x0e.fmp.IPAddress\x12=\n\x17provisioning_group_name\x18\x06 \x01(\x0b\x32\x1c.google.protobuf.StringValue:\x06\xfa\x8d\x19\x02ro*o\n\x0fStreamingStatus\x12 \n\x1cSTREAMING_STATUS_UNSPECIFIED\x10\x00\x12\x1d\n\x19STREAMING_STATUS_INACTIVE\x10\x01\x12\x1b\n\x17STREAMING_STATUS_ACTIVE\x10\x02*\x96\x01\n\x10OnboardingStatus\x12!\n\x1dONBOARDING_STATUS_UNSPECIFIED\x10\x00\x12!\n\x1dONBOARDING_STATUS_IN_PROGRESS\x10\x01\x12\x1d\n\x19ONBOARDING_STATUS_FAILURE\x10\x02\x12\x1d\n\x19ONBOARDING_STATUS_SUCCESS\x10\x03*\xaf\x01\n\x15\x44\x65\x63ommissioningStatus\x12&\n\"DECOMMISSIONING_STATUS_UNSPECIFIED\x10\x00\x12&\n\"DECOMMISSIONING_STATUS_IN_PROGRESS\x10\x01\x12\"\n\x1e\x44\x45\x43OMMISSIONING_STATUS_FAILURE\x10\x02\x12\"\n\x1e\x44\x45\x43OMMISSIONING_STATUS_SUCCESS\x10\x03*\xa0\x01\n\x12ProvisioningStatus\x12#\n\x1fPROVISIONING_STATUS_UNSPECIFIED\x10\x00\x12#\n\x1fPROVISIONING_STATUS_IN_PROGRESS\x10\x01\x12\x1f\n\x1bPROVISIONING_STATUS_FAILURE\x10\x02\x12\x1f\n\x1bPROVISIONING_STATUS_SUCCESS\x10\x03\x42LZJgithub.com/aristanetworks/cloudvision-go/api/arista/inventory.v1;inventoryb\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n#arista/inventory.v1/inventory.proto\x12\x13\x61rista.inventory.v1\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1egoogle/protobuf/wrappers.proto\x1a\x14\x66mp/extensions.proto\x1a\x0e\x66mp/inet.proto\"\xa1\x01\n\x12\x45xtendedAttributes\x12T\n\x0f\x66\x65\x61ture_enabled\x18\x01 \x03(\x0b\x32;.arista.inventory.v1.ExtendedAttributes.FeatureEnabledEntry\x1a\x35\n\x13\x46\x65\x61tureEnabledEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\x08:\x02\x38\x01\"B\n\tDeviceKey\x12/\n\tdevice_id\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue:\x04\x80\x8e\x19\x01\"\x8d\x01\n\x13\x44\x65viceConfiguration\x12\x46\n\x07options\x18\x01 \x03(\x0b\x32\x35.arista.inventory.v1.DeviceConfiguration.OptionsEntry\x1a.\n\x0cOptionsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"A\n\x07UUIDKey\x12\x30\n\nrequest_id\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.StringValue:\x04\x80\x8e\x19\x01\"\xf5\x01\n\x16\x44\x65viceOnboardingConfig\x12)\n\x03key\x18\x01 \x01(\x0b\x32\x1c.arista.inventory.v1.UUIDKey\x12\x34\n\x0ehostname_or_ip\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x31\n\x0b\x64\x65vice_type\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12?\n\rdevice_config\x18\x04 \x01(\x0b\x32(.arista.inventory.v1.DeviceConfiguration:\x06\xfa\x8d\x19\x02rw\"\x90\x02\n\x10\x44\x65viceOnboarding\x12)\n\x03key\x18\x01 \x01(\x0b\x32\x1c.arista.inventory.v1.UUIDKey\x12/\n\tdevice_id\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x35\n\x06status\x18\x03 \x01(\x0e\x32%.arista.inventory.v1.OnboardingStatus\x12+\n\x05\x65rror\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x34\n\x0estatus_message\x18\x05 \x01(\x0b\x32\x1c.google.protobuf.StringValue:\x06\xfa\x8d\x19\x02ro\"\xdd\x01\n\x1b\x44\x65viceDecommissioningConfig\x12)\n\x03key\x18\x01 \x01(\x0b\x32\x1c.arista.inventory.v1.UUIDKey\x12/\n\tdevice_id\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12)\n\x05\x66orce\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.BoolValue\x12/\n\tuser_name\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue:\x06\xfa\x8d\x19\x02rw\"\xe9\x01\n\x15\x44\x65viceDecommissioning\x12)\n\x03key\x18\x01 \x01(\x0b\x32\x1c.arista.inventory.v1.UUIDKey\x12:\n\x06status\x18\x02 \x01(\x0e\x32*.arista.inventory.v1.DecommissioningStatus\x12+\n\x05\x65rror\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x34\n\x0estatus_message\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue:\x06\xfa\x8d\x19\x02ro\"\xde\x04\n\x06\x44\x65vice\x12+\n\x03key\x18\x01 \x01(\x0b\x32\x1e.arista.inventory.v1.DeviceKey\x12\x36\n\x10software_version\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x30\n\nmodel_name\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x37\n\x11hardware_revision\x18\x04 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12*\n\x04\x66qdn\x18\n \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12.\n\x08hostname\x18\x0b \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x31\n\x0b\x64omain_name\x18\x0c \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12\x38\n\x12system_mac_address\x18\r \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12-\n\tboot_time\x18\x14 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12>\n\x10streaming_status\x18\x1e \x01(\x0e\x32$.arista.inventory.v1.StreamingStatus\x12\x44\n\x13\x65xtended_attributes\x18\x1f \x01(\x0b\x32\'.arista.inventory.v1.ExtendedAttributes:\x06\xfa\x8d\x19\x02ro\"\xe5\x02\n\x11ProvisionedDevice\x12+\n\x03key\x18\x01 \x01(\x0b\x32\x1e.arista.inventory.v1.DeviceKey\x12\x37\n\x06status\x18\x02 \x01(\x0e\x32\'.arista.inventory.v1.ProvisioningStatus\x12+\n\x05\x65rror\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12,\n\x08ztp_mode\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.BoolValue\x12\"\n\nip_address\x18\x05 \x01(\x0b\x32\x0e.fmp.IPAddress\x12=\n\x17provisioning_group_name\x18\x06 \x01(\x0b\x32\x1c.google.protobuf.StringValue\x12$\n\x0cipv6_address\x18\x07 \x01(\x0b\x32\x0e.fmp.IPAddress:\x06\xfa\x8d\x19\x02ro*o\n\x0fStreamingStatus\x12 \n\x1cSTREAMING_STATUS_UNSPECIFIED\x10\x00\x12\x1d\n\x19STREAMING_STATUS_INACTIVE\x10\x01\x12\x1b\n\x17STREAMING_STATUS_ACTIVE\x10\x02*\x96\x01\n\x10OnboardingStatus\x12!\n\x1dONBOARDING_STATUS_UNSPECIFIED\x10\x00\x12!\n\x1dONBOARDING_STATUS_IN_PROGRESS\x10\x01\x12\x1d\n\x19ONBOARDING_STATUS_FAILURE\x10\x02\x12\x1d\n\x19ONBOARDING_STATUS_SUCCESS\x10\x03*\xaf\x01\n\x15\x44\x65\x63ommissioningStatus\x12&\n\"DECOMMISSIONING_STATUS_UNSPECIFIED\x10\x00\x12&\n\"DECOMMISSIONING_STATUS_IN_PROGRESS\x10\x01\x12\"\n\x1e\x44\x45\x43OMMISSIONING_STATUS_FAILURE\x10\x02\x12\"\n\x1e\x44\x45\x43OMMISSIONING_STATUS_SUCCESS\x10\x03*\xa0\x01\n\x12ProvisioningStatus\x12#\n\x1fPROVISIONING_STATUS_UNSPECIFIED\x10\x00\x12#\n\x1fPROVISIONING_STATUS_IN_PROGRESS\x10\x01\x12\x1f\n\x1bPROVISIONING_STATUS_FAILURE\x10\x02\x12\x1f\n\x1bPROVISIONING_STATUS_SUCCESS\x10\x03\x42LZJgithub.com/aristanetworks/cloudvision-go/api/arista/inventory.v1;inventoryb\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -56,14 +56,14 @@ _globals['_DEVICE']._serialized_options = b'\372\215\031\002ro' _globals['_PROVISIONEDDEVICE']._loaded_options = None _globals['_PROVISIONEDDEVICE']._serialized_options = b'\372\215\031\002ro' - _globals['_STREAMINGSTATUS']._serialized_start=2520 - _globals['_STREAMINGSTATUS']._serialized_end=2631 - _globals['_ONBOARDINGSTATUS']._serialized_start=2634 - _globals['_ONBOARDINGSTATUS']._serialized_end=2784 - _globals['_DECOMMISSIONINGSTATUS']._serialized_start=2787 - _globals['_DECOMMISSIONINGSTATUS']._serialized_end=2962 - _globals['_PROVISIONINGSTATUS']._serialized_start=2965 - _globals['_PROVISIONINGSTATUS']._serialized_end=3125 + _globals['_STREAMINGSTATUS']._serialized_start=2558 + _globals['_STREAMINGSTATUS']._serialized_end=2669 + _globals['_ONBOARDINGSTATUS']._serialized_start=2672 + _globals['_ONBOARDINGSTATUS']._serialized_end=2822 + _globals['_DECOMMISSIONINGSTATUS']._serialized_start=2825 + _globals['_DECOMMISSIONINGSTATUS']._serialized_end=3000 + _globals['_PROVISIONINGSTATUS']._serialized_start=3003 + _globals['_PROVISIONINGSTATUS']._serialized_end=3163 _globals['_EXTENDEDATTRIBUTES']._serialized_start=164 _globals['_EXTENDEDATTRIBUTES']._serialized_end=325 _globals['_EXTENDEDATTRIBUTES_FEATUREENABLEDENTRY']._serialized_start=272 @@ -87,5 +87,5 @@ _globals['_DEVICE']._serialized_start=1590 _globals['_DEVICE']._serialized_end=2196 _globals['_PROVISIONEDDEVICE']._serialized_start=2199 - _globals['_PROVISIONEDDEVICE']._serialized_end=2518 + _globals['_PROVISIONEDDEVICE']._serialized_end=2556 # @@protoc_insertion_point(module_scope) diff --git a/arista/inventory/v1/inventory_pb2.pyi b/arista/inventory/v1/inventory_pb2.pyi index cee5878b..94a429f4 100644 --- a/arista/inventory/v1/inventory_pb2.pyi +++ b/arista/inventory/v1/inventory_pb2.pyi @@ -381,6 +381,9 @@ class DeviceDecommissioningConfig(google.protobuf.message.Message): and tracking the status of the decommissioning attempt. 4. The user may do a GetOne or Subscribe on DeviceDecommissioning using the same UUID to see the status of the request. + + NOTE: this operation does not remove references to the decommissioned device from + Studios and Tags. See `DecommissionConfig` in `arista.studio_topology.v1`. """ DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -557,6 +560,7 @@ class ProvisionedDevice(google.protobuf.message.Message): ZTP_MODE_FIELD_NUMBER: builtins.int IP_ADDRESS_FIELD_NUMBER: builtins.int PROVISIONING_GROUP_NAME_FIELD_NUMBER: builtins.int + IPV6_ADDRESS_FIELD_NUMBER: builtins.int status: global___ProvisioningStatus.ValueType """status describes the onboarded device's provisioning status.""" @property @@ -585,6 +589,10 @@ class ProvisionedDevice(google.protobuf.message.Message): a user may set it to an existing group. """ + @property + def ipv6_address(self) -> fmp.inet_pb2.IPAddress: + """ipv6_address is the IPV6 address of the device.""" + def __init__( self, *, @@ -594,8 +602,9 @@ class ProvisionedDevice(google.protobuf.message.Message): ztp_mode: google.protobuf.wrappers_pb2.BoolValue | None = ..., ip_address: fmp.inet_pb2.IPAddress | None = ..., provisioning_group_name: google.protobuf.wrappers_pb2.StringValue | None = ..., + ipv6_address: fmp.inet_pb2.IPAddress | None = ..., ) -> None: ... - def HasField(self, field_name: typing.Literal["error", b"error", "ip_address", b"ip_address", "key", b"key", "provisioning_group_name", b"provisioning_group_name", "ztp_mode", b"ztp_mode"]) -> builtins.bool: ... - def ClearField(self, field_name: typing.Literal["error", b"error", "ip_address", b"ip_address", "key", b"key", "provisioning_group_name", b"provisioning_group_name", "status", b"status", "ztp_mode", b"ztp_mode"]) -> None: ... + def HasField(self, field_name: typing.Literal["error", b"error", "ip_address", b"ip_address", "ipv6_address", b"ipv6_address", "key", b"key", "provisioning_group_name", b"provisioning_group_name", "ztp_mode", b"ztp_mode"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["error", b"error", "ip_address", b"ip_address", "ipv6_address", b"ipv6_address", "key", b"key", "provisioning_group_name", b"provisioning_group_name", "status", b"status", "ztp_mode", b"ztp_mode"]) -> None: ... global___ProvisionedDevice = ProvisionedDevice