src/opera/constants.py
from enum import Enum
# enum for tosca.interfaces.node.lifecycle.Standard operations
class StandardInterfaceOperation(Enum):
CREATE = "create"
CONFIGURE = "configure"
START = "start"
STOP = "stop"
DELETE = "delete"
@classmethod
def shorthand_name(cls):
return "Standard"
@classmethod
def type_uri_1_3(cls):
return "tosca.interfaces.node.lifecycle.Standard"
@classmethod
def type_uri_2_0(cls):
return "Lifecycle.Standard"
# enum for tosca.interfaces.relationship.Configure operations
class ConfigureInterfaceOperation(Enum):
PRE_CONFIGURE_SOURCE = "pre_configure_source"
PRE_CONFIGURE_TARGET = "pre_configure_target"
POST_CONFIGURE_SOURCE = "post_configure_source"
POST_CONFIGURE_TARGET = "post_configure_target"
ADD_TARGET = "add_target"
ADD_SOURCE = "add_source"
TARGET_CHANGED = "target_changed"
REMOVE_TARGET = "remove_target"
@classmethod
def shorthand_name(cls):
return "Configure"
@classmethod
def type_uri_1_3(cls):
return "tosca.interfaces.relationship.Configure"
@classmethod
def type_uri_2_0(cls):
return "Relationship.Configure"
# enum for TOSCA node orchestration states
class NodeState(Enum):
INITIAL = "initial"
CREATING = "creating"
CREATED = "created"
CONFIGURING = "configuring"
CONFIGURED = "configured"
STARTING = "starting"
STARTED = "started"
STOPPING = "stopping"
DELETING = "deleting"
ERROR = "error"
# enum for TOSCA relationship orchestration states
class RelationshipState(Enum):
INITIAL = "initial"
# enum for TOSCA operation hosts and reserved TOSCA functions keywords
class OperationHost(Enum):
SELF = "SELF"
SOURCE = "SOURCE"
TARGET = "TARGET"
HOST = "HOST"