Skip to content
This repository was archived by the owner on Apr 30, 2025. It is now read-only.

Commit a99525f

Browse files
[topology-discovery] Release package for frinx/topology-discovery:6.2.5 (#98)
* [topology-discovery] Create and publish packages for 6.2.5 * Update RELEASE.md --------- Co-authored-by: Jozefiel <[email protected]> Co-authored-by: Jozef Volák <[email protected]>
1 parent 15c08d5 commit a99525f

File tree

3 files changed

+97
-1
lines changed

3 files changed

+97
-1
lines changed

topology-discovery/python/RELEASE.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,3 +5,4 @@
55
| 0.0.12 | 0.0.1 |
66
| 1.0.0 | 0.1.0, 1.0.0 |
77
| 6.0.0 | 2.0.0 |
8+
| 6.2.5 | 2.1.0 |

topology-discovery/python/frinx_api/topology_discovery/__init__.py

Lines changed: 95 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,10 @@ class TopologyType(ENUM):
3232
NETWORKTOPOLOGY = 'NetworkTopology'
3333

3434

35+
class GeometryType(ENUM):
36+
POINT = 'Point'
37+
38+
3539
class NetRoutingPathOutputCollections(ENUM):
3640
NETDEVICE = 'NetDevice'
3741
NETINTERFACE = 'NetInterface'
@@ -63,6 +67,10 @@ class CoordinatesInput(Input):
6367
y: Float
6468

6569

70+
class DeviceMetadataFilter(Input):
71+
device_name: typing.Optional[String] = Field(default=None, alias='deviceName')
72+
73+
6674
class NetDeviceFilter(Input):
6775
ospf_area_id: typing.Optional[String] = Field(default=None, alias='ospfAreaId')
6876
router_id: typing.Optional[String] = Field(default=None, alias='routerId')
@@ -187,11 +195,15 @@ class ProviderResponsePayload(BaseModel):
187195
class SyncResponse(Payload):
188196
labels: typing.Optional[Boolean] = Field(default=False)
189197
loaded_devices: typing.Optional[Boolean] = Field(default=False)
198+
devices_missing_in_inventory: typing.Optional[Boolean] = Field(default=False)
199+
devices_missing_in_uniconfig: typing.Optional[Boolean] = Field(default=False)
190200

191201

192202
class SyncResponsePayload(BaseModel):
193203
labels: typing.Optional[typing.Optional[list[typing.Optional[String]]]] = Field(default=None)
194204
loaded_devices: typing.Optional[typing.Optional[JSON]] = Field(default=None)
205+
devices_missing_in_inventory: typing.Optional[typing.Optional[list[typing.Optional[String]]]] = Field(default=None)
206+
devices_missing_in_uniconfig: typing.Optional[typing.Optional[list[typing.Optional[String]]]] = Field(default=None)
195207

196208

197209
class NodeQuery(Query):
@@ -292,6 +304,14 @@ class ProviderQuery(Query):
292304
payload: ProviderResponse
293305

294306

307+
class DeviceMetadataQuery(Query):
308+
_name: str = PrivateAttr('deviceMetadata')
309+
filters: typing.Optional[DeviceMetadataFilter] = Field(default=None, json_schema_extra={'type': 'DeviceMetadataFilter'})
310+
first: typing.Optional[Int] = Field(default=None, json_schema_extra={'type': 'Int'})
311+
cursor: typing.Optional[String] = Field(default=None, json_schema_extra={'type': 'String'})
312+
payload: MetadataConnection
313+
314+
295315
class NodeQueryResponse(BaseModel):
296316
data: typing.Optional[Node] = Field(default=None)
297317
errors: typing.Optional[typing.Any] = Field(default=None)
@@ -396,6 +416,15 @@ class ProviderData(BaseModel):
396416
provider: ProviderResponsePayload
397417

398418

419+
class DeviceMetadataQueryResponse(BaseModel):
420+
data: typing.Optional[DeviceMetadataData] = Field(default=None)
421+
errors: typing.Optional[typing.Any] = Field(default=None)
422+
423+
424+
class DeviceMetadataData(BaseModel):
425+
device_metadata: MetadataConnectionPayload = Field(alias='deviceMetadata')
426+
427+
399428
class CreateBackupMutation(Mutation):
400429
_name: str = PrivateAttr('createBackup')
401430

@@ -494,6 +523,60 @@ class CoordinatesPayload(BaseModel):
494523
y: typing.Optional[typing.Optional[Float]] = Field(default=None)
495524

496525

526+
class DeviceMetadata(Payload):
527+
id: typing.Optional[Boolean] = Field(default=False)
528+
device_name: typing.Optional[Boolean] = Field(default=False, alias='deviceName')
529+
device_type: typing.Optional[Boolean] = Field(default=False, alias='deviceType')
530+
vendor: typing.Optional[Boolean] = Field(default=False)
531+
model: typing.Optional[Boolean] = Field(default=False)
532+
version: typing.Optional[Boolean] = Field(default=False)
533+
protocol_type: typing.Optional[Boolean] = Field(default=False, alias='protocolType')
534+
geo_location: typing.Optional[DeviceGeoLocation] = Field(default=None, alias='geoLocation')
535+
536+
537+
class DeviceMetadataPayload(BaseModel):
538+
id: typing.Optional[typing.Optional[ID]] = Field(default=None)
539+
device_name: typing.Optional[typing.Optional[String]] = Field(default=None, alias='deviceName')
540+
device_type: typing.Optional[typing.Optional[String]] = Field(default=None, alias='deviceType')
541+
vendor: typing.Optional[typing.Optional[String]] = Field(default=None)
542+
model: typing.Optional[typing.Optional[String]] = Field(default=None)
543+
version: typing.Optional[typing.Optional[String]] = Field(default=None)
544+
protocol_type: typing.Optional[typing.Optional[String]] = Field(default=None, alias='protocolType')
545+
geo_location: typing.Optional[DeviceGeoLocationPayload] = Field(default=None, alias='geoLocation')
546+
547+
548+
class DeviceMetadataEdge(Payload):
549+
cursor: typing.Optional[Boolean] = Field(default=False)
550+
node: typing.Optional[DeviceMetadata] = Field(default=None)
551+
552+
553+
class DeviceMetadataEdgePayload(BaseModel):
554+
cursor: typing.Optional[typing.Optional[String]] = Field(default=None)
555+
node: typing.Optional[DeviceMetadataPayload] = Field(default=None)
556+
557+
558+
class MetadataConnection(Payload):
559+
page_info: typing.Optional[PageInfo] = Field(default=None, alias='pageInfo')
560+
edges: typing.Optional[DeviceMetadataEdge] = Field(default=None)
561+
562+
563+
class MetadataConnectionPayload(BaseModel):
564+
page_info: typing.Optional[PageInfoPayload] = Field(default=None, alias='pageInfo')
565+
edges: typing.Optional[typing.Optional[list[DeviceMetadataEdgePayload]]] = Field(default=None)
566+
567+
568+
class DeviceGeoLocation(Payload):
569+
type: typing.Optional[Boolean] = Field(default=False)
570+
coordinates: typing.Optional[Boolean] = Field(default=False)
571+
bbox: typing.Optional[Boolean] = Field(default=False)
572+
573+
574+
class DeviceGeoLocationPayload(BaseModel):
575+
type: typing.Optional[typing.Optional[GeometryType]] = Field(default=None)
576+
coordinates: typing.Optional[typing.Optional[list[typing.Optional[Float]]]] = Field(default=None)
577+
bbox: typing.Optional[typing.Optional[list[typing.Optional[Float]]]] = Field(default=None)
578+
579+
497580
class NetDevice(Payload):
498581
id: typing.Optional[Boolean] = Field(default=False)
499582
router_id: typing.Optional[Boolean] = Field(default=False, alias='routerId')
@@ -1100,6 +1183,7 @@ class SyncePathPayload(BaseModel):
11001183

11011184
Node.model_rebuild()
11021185
CoordinatesInput.model_rebuild()
1186+
DeviceMetadataFilter.model_rebuild()
11031187
NetDeviceFilter.model_rebuild()
11041188
NetInterfaceFilter.model_rebuild()
11051189
NetNetworkFilter.model_rebuild()
@@ -1139,6 +1223,7 @@ class SyncePathPayload(BaseModel):
11391223
CommonNodesQuery.model_rebuild()
11401224
ProvidersQuery.model_rebuild()
11411225
ProviderQuery.model_rebuild()
1226+
DeviceMetadataQuery.model_rebuild()
11421227
NodeQueryResponse.model_rebuild()
11431228
PhyDevicesQueryResponse.model_rebuild()
11441229
PhyDevicesData.model_rebuild()
@@ -1162,6 +1247,8 @@ class SyncePathPayload(BaseModel):
11621247
CommonNodesData.model_rebuild()
11631248
ProviderQueryResponse.model_rebuild()
11641249
ProviderData.model_rebuild()
1250+
DeviceMetadataQueryResponse.model_rebuild()
1251+
DeviceMetadataData.model_rebuild()
11651252
CreateBackupMutation.model_rebuild()
11661253
DeleteBackupsMutation.model_rebuild()
11671254
UpdateCoordinatesMutation.model_rebuild()
@@ -1180,6 +1267,14 @@ class SyncePathPayload(BaseModel):
11801267
EnableRemoteDebugSessionData.model_rebuild()
11811268
Coordinates.model_rebuild()
11821269
CoordinatesPayload.model_rebuild()
1270+
DeviceMetadata.model_rebuild()
1271+
DeviceMetadataPayload.model_rebuild()
1272+
DeviceMetadataEdge.model_rebuild()
1273+
DeviceMetadataEdgePayload.model_rebuild()
1274+
MetadataConnection.model_rebuild()
1275+
MetadataConnectionPayload.model_rebuild()
1276+
DeviceGeoLocation.model_rebuild()
1277+
DeviceGeoLocationPayload.model_rebuild()
11831278
NetDevice.model_rebuild()
11841279
NetDevicePayload.model_rebuild()
11851280
NetDeviceEdge.model_rebuild()

topology-discovery/python/pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ packages = [{ include = "frinx_api" }]
1818
name = "frinx-topology-discovery-api"
1919
description = "Frinx Topology Discovery graphql schema transformed to pydantic basemodels"
2020
authors = ["Jozef Volak <[email protected]>"]
21-
version = "2.0.0"
21+
version = "2.1.0"
2222
readme = ["README.md", "CHANGELOG.md", "RELEASE.md"]
2323
keywords = ["frinx-machine", "topology-discovery", "api"]
2424
license = "Apache 2.0"

0 commit comments

Comments
 (0)