X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=osm_common%2Ftemporal%2Fworkflows%2Fvnf.py;h=03ba4c8d0865e9816f0243162f8e5d3fb61b0cf8;hb=15125466abcff72b3650e58f46a889788f519bef;hp=365f9530bad170f07a480ba96e0fd4bad757e0a1;hpb=989602b0ef620c0b310d9dd4adeb9f387ca35023;p=osm%2Fcommon.git diff --git a/osm_common/temporal/workflows/vnf.py b/osm_common/temporal/workflows/vnf.py index 365f953..03ba4c8 100644 --- a/osm_common/temporal/workflows/vnf.py +++ b/osm_common/temporal/workflows/vnf.py @@ -85,3 +85,50 @@ class VnfPrepareWorkflow(BaseWorkflow): @abstractmethod async def run(self, workflow_input: Input) -> None: pass + + +class VnfTerminateWorkflow(BaseWorkflow): + @dataclass + class Input: + """ + + Attributes: + ----------- + vnfr_uuid : str + The UUID of the VNF which is stored in the OSM vnfrs + collection in Mongo. + """ + + vnfr_uuid: str + + @abstractmethod + async def run(self, workflow_input: Input) -> None: + pass + + +class VnfDeleteWorkflow(BaseWorkflow): + """Delete a VNF. + + Workflow Identifier: + It is recommended that the ID for the VNF is referred as a workflow + ID when invoking this workflow. + """ + + @dataclass + class Input: + """ + Input dataclass for workflow that deletes a VNF. + + Attributes: + ----------- + vnfr_uuid : str + The UUID of the VNF which is stored in the OSM vnfrs + collection in Mongo. + + """ + + vnfr_uuid: str + + @abstractmethod + async def run(self, workflow_input: Input) -> None: + pass