From fa60e8bc3491f3f681343b83319df85ddf952a47 Mon Sep 17 00:00:00 2001
From: gifrerenom <lluis.gifre@cttc.es>
Date: Tue, 16 May 2023 10:18:26 +0000
Subject: [PATCH] Context component:

- Added SERVICESTATUS_UPDATING and SERVICESTATUS_SLA_VIOLATED
- Added Constraint_Exclusions
---
 src/context/service/database/Constraint.py                 | 2 +-
 src/context/service/database/models/ConstraintModel.py     | 1 +
 src/context/service/database/models/enums/ServiceStatus.py | 2 ++
 3 files changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/context/service/database/Constraint.py b/src/context/service/database/Constraint.py
index 592d7f4c5..b33316539 100644
--- a/src/context/service/database/Constraint.py
+++ b/src/context/service/database/Constraint.py
@@ -66,7 +66,7 @@ def compose_constraints_data(
             constraint_name = '{:s}:{:s}:{:s}'.format(parent_kind, kind.value, endpoint_uuid)
         elif kind in {
             ConstraintKindEnum.SCHEDULE, ConstraintKindEnum.SLA_CAPACITY, ConstraintKindEnum.SLA_LATENCY,
-            ConstraintKindEnum.SLA_AVAILABILITY, ConstraintKindEnum.SLA_ISOLATION
+            ConstraintKindEnum.SLA_AVAILABILITY, ConstraintKindEnum.SLA_ISOLATION, ConstraintKindEnum.EXCLUSIONS
         }:
             constraint_name = '{:s}:{:s}:'.format(parent_kind, kind.value)
         else:
diff --git a/src/context/service/database/models/ConstraintModel.py b/src/context/service/database/models/ConstraintModel.py
index cbbe0b5d7..d093e782a 100644
--- a/src/context/service/database/models/ConstraintModel.py
+++ b/src/context/service/database/models/ConstraintModel.py
@@ -30,6 +30,7 @@ class ConstraintKindEnum(enum.Enum):
     SLA_LATENCY       = 'sla_latency'
     SLA_AVAILABILITY  = 'sla_availability'
     SLA_ISOLATION     = 'sla_isolation'
+    EXCLUSIONS        = 'exclusions'
 
 class ServiceConstraintModel(_Base):
     __tablename__ = 'service_constraint'
diff --git a/src/context/service/database/models/enums/ServiceStatus.py b/src/context/service/database/models/enums/ServiceStatus.py
index 00ae71f74..cd2a183b8 100644
--- a/src/context/service/database/models/enums/ServiceStatus.py
+++ b/src/context/service/database/models/enums/ServiceStatus.py
@@ -20,7 +20,9 @@ class ORM_ServiceStatusEnum(enum.Enum):
     UNDEFINED       = ServiceStatusEnum.SERVICESTATUS_UNDEFINED
     PLANNED         = ServiceStatusEnum.SERVICESTATUS_PLANNED
     ACTIVE          = ServiceStatusEnum.SERVICESTATUS_ACTIVE
+    UPDATING        = ServiceStatusEnum.SERVICESTATUS_UPDATING
     PENDING_REMOVAL = ServiceStatusEnum.SERVICESTATUS_PENDING_REMOVAL
+    SLA_VIOLATED    = ServiceStatusEnum.SERVICESTATUS_SLA_VIOLATED
 
 grpc_to_enum__service_status = functools.partial(
     grpc_to_enum, ServiceStatusEnum, ORM_ServiceStatusEnum)
-- 
GitLab