Untitled
unknown
plain_text
2 years ago
2.4 kB
10
Indexable
My code in A
class __BasePerfWorkflowService:
"""Base class for Perf workflows"""
def __init__(
self,
name: str,
workflow_config: dict,
user_config: dict,
workflow_prefix: str = None,
**kwargs,
):
"""
Initialize base workflow
Params:
:workflow_params, dict, Workflow params.
"""
self.__engine = None
self.__workflow_type = None
self.__rdsbms_manager = None
self.__perf_manager = None
self.__parent_workflow_id = None
self.__internal_workflow_id = None
self.__pas_workflow_type = None
self.__workflow_config = None
self.__workflow_params = None
# Presets
self.__name = name
self.__workflow_prefix = workflow_prefix
self.__user_config = copy.deepcopy(user_config)
self._set_workflow_params(workflow_config)
self.__db_instance_size = get_instance_size(self.workflow_config["config"])
self.__workflow_user = kwargs.get("workflow_user", None)
@property
def internal_workflow_id(self):
if self.__internal_workflow_id:
return self.__internal_workflow_id
if not self.engine:
return
prefix = f"{self.__workflow_prefix}-" if self.__workflow_prefix else ""
self.__internal_workflow_id = prefix + self.engine.strip() + f"-{uuid.uuid4().hex}"
return self.__internal_workflow_id
@property
def parent_workflow_id(self):
""" """
# TODO : This is a temporary fix.
# Need to add `workflow` attr.
return self.__parent_workflow_id
@property
def pas_workflow_type(self):
if not self.__pas_workflow_type:
if (
"config" in self.workflow_config
and "pasWorkflowType" in self.workflow_config["config"]
and self.workflow_config["config"]["pasWorkflowType"]
in [workflow_type.value for workflow_type in PASWorkflowType]
):
self.__pas_workflow_type = self.workflow_config["config"]["pasWorkflowType"]
return self.__pas_workflow_type
@property
def workflow_config(self):
""" """
return self.__workflow_config
I want to use workflow_config in B without creating class instanceEditor is loading...
Leave a Comment