X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=o2ims%2Fdomain%2Focloud.py;h=a8e7c2f2a50483cd1d6f6ecdb9092e2b65b81227;hb=refs%2Fchanges%2F29%2F9429%2F2;hp=996d82d0fca88bc931933a82e5e5416a8f998e87;hpb=2e17b150a5df5ecd11cf668e7cccea021a03ab7b;p=pti%2Fo2.git diff --git a/o2ims/domain/ocloud.py b/o2ims/domain/ocloud.py index 996d82d..a8e7c2f 100644 --- a/o2ims/domain/ocloud.py +++ b/o2ims/domain/ocloud.py @@ -16,13 +16,19 @@ from __future__ import annotations import json from o2common.domain.base import AgRoot, Serializer +from o2common.config import conf as CONF # from dataclasses import dataclass # from datetime import date # from typing import Optional, List, Set -from .resource_type import ResourceTypeEnum +from .resource_type import ResourceKindEnum, ResourceTypeEnum # from uuid import UUID +DeploymentManagerProfileDefault = 'default' +DeploymentManagerProfileSOL018 = 'sol018' +DeploymentManagerProfileSOL018HelmCLI = 'sol018_helmcli' + + class DeploymentManager(AgRoot, Serializer): def __init__(self, id: str, name: str, ocloudid: str, dmsendpoint: str, description: str = '', @@ -30,23 +36,28 @@ class DeploymentManager(AgRoot, Serializer): capacity: str = '', profile: str = '') -> None: super().__init__() self.deploymentManagerId = id - self.version_number = 0 - self.oCloudId = ocloudid self.name = name self.description = description - self.deploymentManagementServiceEndpoint = dmsendpoint + self.oCloudId = ocloudid + self.serviceUri = dmsendpoint self.supportedLocations = supportedLocations self.capabilities = capabilities self.capacity = capacity self.profile = profile self.extensions = [] + self.version_number = 0 + def serialize(self): d = Serializer.serialize(self) if 'profile' in d and d['profile'] != '': d['profile'] = json.loads(d['profile']) - d['profileSupportList'] = ['default', 'sol0018'] + d['profileSupportList'] = [ + DeploymentManagerProfileDefault, + DeploymentManagerProfileSOL018, + DeploymentManagerProfileSOL018HelmCLI, + ] return d @@ -57,14 +68,16 @@ class ResourcePool(AgRoot, Serializer): description: str = '') -> None: super().__init__() self.resourcePoolId = id - self.version_number = 0 - self.oCloudId = ocloudid self.globalLocationId = gLocationId self.name = name - self.location = location self.description = description + self.oCloudId = ocloudid + self.location = location + self.resources = '' self.extensions = [] + self.version_number = 0 + class ResourceType(AgRoot, Serializer): def __init__(self, typeid: str, name: str, typeEnum: ResourceTypeEnum, @@ -73,16 +86,26 @@ class ResourceType(AgRoot, Serializer): description: str = '') -> None: super().__init__() self.resourceTypeId = typeid - self.version_number = 0 - self.oCloudId = ocloudid self.resourceTypeEnum = typeEnum self.name = name + self.description = description self.vender = vender self.model = model self.version = version - self.description = description + self.alarmDictionary = {} + self.resourceKind = ResourceKindEnum.UNDEFINED + self.resourceClass = ResourceTypeEnum.UNDEFINED self.extensions = [] + self.version_number = 0 + + def serialize(self): + d = Serializer.serialize(self) + + d["alarmDictionary"] = CONF.alarm_dictionaries.get( + d['name']).serialize() + return d + class Resource(AgRoot, Serializer): def __init__(self, resourceId: str, resourceTypeId: str, @@ -91,16 +114,18 @@ class Resource(AgRoot, Serializer): description: str = '') -> None: super().__init__() self.resourceId = resourceId - self.version_number = 0 + self.description = description self.resourceTypeId = resourceTypeId + self.globalAssetId = gAssetId self.resourcePoolId = resourcePoolId + self.elements = elements + self.extensions = [] + self.name = name - self.globalAssetId = gAssetId self.parentId = parentId - self.elements = elements - self.description = description self.children = [] - self.extensions = [] + + self.version_number = 0 def set_children(self, children: list): self.children = children @@ -130,16 +155,18 @@ class Ocloud(AgRoot, Serializer): description: str = '', version_number: int = 0) -> None: super().__init__() self.oCloudId = ocloudid - self.globalcloudId = globalcloudId - self.version_number = version_number + self.globalCloudId = globalcloudId self.name = name self.description = description - self.infrastructureManagementServiceEndpoint = imsendpoint + self.serviceUri = imsendpoint + self.resourceTypes = [] self.resourcePools = [] self.deploymentManagers = [] - self.resourceTypes = [] + self.smoRegistrationService = '' self.extensions = [] + self.version_number = version_number + # def addDeploymentManager(self, # deploymentManager: DeploymentManager):