X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=o2ims%2Fadapter%2Form.py;h=e8914e11c5c445fa9862c043be83e23f67c9c2d0;hb=f9746f13be900f5ad7e9e2a9dbf7527e74b5d428;hp=45ec4d89a4600a53aadada3ea713ff27de25dc89;hpb=defe8209b3628593c186487857fe02586d7e1503;p=pti%2Fo2.git diff --git a/o2ims/adapter/orm.py b/o2ims/adapter/orm.py index 45ec4d8..e8914e1 100644 --- a/o2ims/adapter/orm.py +++ b/o2ims/adapter/orm.py @@ -36,8 +36,9 @@ from sqlalchemy.orm import mapper, relationship from o2ims.domain import ocloud as ocloudModel from o2ims.domain import subscription_obj as subModel -from o2ims.domain import configuration_obj as confModel -from o2ims.domain.resource_type import ResourceTypeEnum +from o2ims.domain import alarm_obj as alarmModel +from o2ims.domain.resource_type import ResourceTypeEnum, ResourceKindEnum +# from o2ims.domain.alarm_obj import AlarmLastChangeEnum, PerceivedSeverityEnum from o2common.helper import o2logging logger = o2logging.get_logger(__name__) @@ -53,34 +54,39 @@ ocloud = Table( Column("version_number", Integer), Column("oCloudId", String(255), primary_key=True), - Column("globalcloudId", String(255)), + Column("globalCloudId", String(255)), Column("name", String(255)), Column("description", String(255)), - Column("infrastructureManagementServiceEndpoint", String(255)) + Column("serviceUri", String(255)), + Column("smoRegistrationService", String(255)) # Column("extensions", String(1024)) ) resourcetype = Table( - "resourcetype", + "resourceType", metadata, Column("updatetime", DateTime), Column("createtime", DateTime), Column("hash", String(255)), + Column("version_number", Integer), Column("resourceTypeId", String(255), primary_key=True), Column("resourceTypeEnum", Enum( ResourceTypeEnum, native_enum=False), nullable=False), - Column("oCloudId", ForeignKey("ocloud.oCloudId")), Column("name", String(255)), + Column("description", String(255)), Column("vendor", String(255)), Column("model", String(255)), Column("version", String(255)), - Column("description", String(255)), + Column("resourceKind", Enum(ResourceKindEnum)), + Column("resourceClass", Enum(ResourceTypeEnum)), # Column("extensions", String(1024)) + + Column("oCloudId", ForeignKey("ocloud.oCloudId")), ) resourcepool = Table( - "resourcepool", + "resourcePool", metadata, Column("updatetime", DateTime), Column("createtime", DateTime), @@ -106,18 +112,18 @@ resource = Table( Column("version_number", Integer), Column("resourceId", String(255), primary_key=True), - Column("resourceTypeId", ForeignKey("resourcetype.resourceTypeId")), - Column("resourcePoolId", ForeignKey("resourcepool.resourcePoolId")), + Column("resourceTypeId", ForeignKey("resourceType.resourceTypeId")), + Column("resourcePoolId", ForeignKey("resourcePool.resourcePoolId")), Column("name", String(255)), - # Column("globalAssetId", String(255)), + Column("globalAssetId", String(255)), Column("parentId", String(255)), - Column("description", String(255)), - Column("elements", Text()) - # Column("extensions", String(1024)) + Column("description", String()), + Column("elements", Text()), + Column("extensions", String()) ) deploymentmanager = Table( - "deploymentmanager", + "deploymentManager", metadata, Column("updatetime", DateTime), Column("createtime", DateTime), @@ -128,10 +134,11 @@ deploymentmanager = Table( Column("oCloudId", ForeignKey("ocloud.oCloudId")), Column("name", String(255)), Column("description", String(255)), - Column("deploymentManagementServiceEndpoint", String(255)), + Column("serviceUri", String(255)), Column("supportedLocations", String(255)), Column("capabilities", String(255)), Column("capacity", String(255)), + Column("profile", Text()) # Column("extensions", String(1024)) ) @@ -149,17 +156,64 @@ subscription = Table( Column("filter", String(255)), ) -configuration = Table( - "configuration", +alarm_definition = Table( + "alarmDefinition", metadata, Column("updatetime", DateTime), Column("createtime", DateTime), - Column("configurationId", String(255), primary_key=True), - Column("conftype", String(255)), + Column("alarmDefinitionId", String(255), primary_key=True), + Column("alarmName", String(255), unique=True), + Column("alarmLastChange", String(255)), + Column("alarmDescription", String(255)), + Column("proposeRepairActions", String(255)), + Column("clearingType", String(255)), + Column("managementInterfaceId", String(255)), + Column("pkNotificationField", String(255)) +) + +alarm_event_record = Table( + "alarmEventRecord", + metadata, + Column("updatetime", DateTime), + Column("createtime", DateTime), + Column("hash", String(255)), + + Column("alarmEventRecordId", String(255), primary_key=True), + Column("resourceTypeId", ForeignKey("resourceType.resourceTypeId")), + Column("resourceId", ForeignKey("resource.resourceId")), + Column("alarmDefinitionId", ForeignKey( + "alarmDefinition.alarmDefinitionId")), + Column("probableCauseId", String(255)), + Column("perceivedSeverity", Integer), + Column("alarmRaisedTime", String(255)), + Column("alarmChangedTime", String(255)), + Column("alarmAcknowledgeTime", String(255)), + Column("alarmAcknowledged", String(255)), +) + +alarm_probable_cause = Table( + "probableCause", + metadata, + Column("updatetime", DateTime), + Column("createtime", DateTime), + Column("hash", String(255)), + + Column("probableCauseId", String(255), primary_key=True), + Column("name", String(255)), + Column("description", String(255)), +) + +alarm_subscription = Table( + "alarmSubscription", + metadata, + Column("updatetime", DateTime), + Column("createtime", DateTime), + + Column("alarmSubscriptionId", String(255), primary_key=True), Column("callback", String(255)), - Column("status", String(255)), - Column("comments", String(255)), + Column("consumerSubscriptionId", String(255)), + Column("filter", String(255)), ) @@ -173,6 +227,7 @@ def wait_for_metadata_ready(engine): def start_o2ims_mappers(engine=None): logger.info("Starting O2 IMS mappers") + # IMS Infrastructure Inventory Mappering dm_mapper = mapper(ocloudModel.DeploymentManager, deploymentmanager) resourcepool_mapper = mapper(ocloudModel.ResourcePool, resourcepool) resourcetype_mapper = mapper(ocloudModel.ResourceType, resourcetype) @@ -193,7 +248,12 @@ def start_o2ims_mappers(engine=None): } ) mapper(subModel.Subscription, subscription) - mapper(confModel.Configuration, configuration) + + # IMS Infrastruture Monitoring Mappering + mapper(alarmModel.AlarmEventRecord, alarm_event_record) + mapper(alarmModel.AlarmDefinition, alarm_definition) + mapper(alarmModel.ProbableCause, alarm_probable_cause) + mapper(alarmModel.AlarmSubscription, alarm_subscription) if engine is not None: wait_for_metadata_ready(engine)