예제 #1
0
class TaskExecutionDB(stormbase.StormFoundationDB,
                      stormbase.ChangeRevisionFieldMixin):
    RESOURCE_TYPE = types.ResourceType.EXECUTION

    workflow_execution = me.StringField(required=True)
    task_name = me.StringField(required=True)
    task_id = me.StringField(required=True)
    task_spec = stormbase.EscapedDictField()
    itemized = me.BooleanField(default=False)
    context = stormbase.EscapedDictField()
    result = stormbase.EscapedDictField()
    status = me.StringField(required=True)
    start_timestamp = db_field_types.ComplexDateTimeField(
        default=date_utils.get_datetime_utc_now)
    end_timestamp = db_field_types.ComplexDateTimeField()

    meta = {
        'indexes': [{
            'fields': ['workflow_execution']
        }, {
            'fields': ['task_id']
        }, {
            'fields': ['workflow_execution', 'task_id']
        }]
    }
예제 #2
0
class TaskExecutionDB(stormbase.StormFoundationDB, stormbase.ChangeRevisionFieldMixin):
    RESOURCE_TYPE = types.ResourceType.EXECUTION

    workflow_execution = me.StringField(required=True)
    task_name = me.StringField(required=True)
    task_id = me.StringField(required=True)
    task_route = me.IntField(required=True, min_value=0)
    task_spec = stormbase.EscapedDictField()
    delay = me.IntField(min_value=0)
    itemized = me.BooleanField(default=False)
    items_count = me.IntField(min_value=0)
    items_concurrency = me.IntField(min_value=1)
    context = stormbase.EscapedDictField()
    status = me.StringField(required=True)
    result = stormbase.EscapedDictField()
    start_timestamp = db_field_types.ComplexDateTimeField(
        default=date_utils.get_datetime_utc_now
    )
    end_timestamp = db_field_types.ComplexDateTimeField()

    meta = {
        "indexes": [
            {"fields": ["workflow_execution"]},
            {"fields": ["task_id"]},
            {"fields": ["task_id", "task_route"]},
            {"fields": ["workflow_execution", "task_id"]},
            {"fields": ["workflow_execution", "task_id", "task_route"]},
        ]
    }
예제 #3
0
class WorkflowExecutionDB(stormbase.StormFoundationDB,
                          stormbase.ChangeRevisionFieldMixin):
    RESOURCE_TYPE = types.ResourceType.EXECUTION

    action_execution = me.StringField(required=True)
    spec = stormbase.EscapedDictField()
    graph = stormbase.EscapedDictField()
    flow = stormbase.EscapedDictField()
    input = stormbase.EscapedDictField()
    output = stormbase.EscapedDictField()
    status = me.StringField(required=True)
    errors = stormbase.EscapedDynamicField()
    start_timestamp = db_field_types.ComplexDateTimeField(
        default=date_utils.get_datetime_utc_now)
    end_timestamp = db_field_types.ComplexDateTimeField()

    meta = {'indexes': [{'fields': ['action_execution']}]}
예제 #4
0
파일: workflow.py 프로젝트: st2sandbox/st2
class WorkflowExecutionDB(stormbase.StormFoundationDB,
                          stormbase.ChangeRevisionFieldMixin):
    RESOURCE_TYPE = types.ResourceType.EXECUTION

    action_execution = me.StringField(required=True)
    spec = stormbase.EscapedDictField()
    graph = me.DictField()
    input = JSONDictEscapedFieldCompatibilityField()
    notify = me.DictField()
    context = JSONDictEscapedFieldCompatibilityField()
    state = JSONDictEscapedFieldCompatibilityField()
    status = me.StringField(required=True)
    output = JSONDictEscapedFieldCompatibilityField()
    errors = stormbase.EscapedDynamicField()
    start_timestamp = db_field_types.ComplexDateTimeField(
        default=date_utils.get_datetime_utc_now)
    end_timestamp = db_field_types.ComplexDateTimeField()

    meta = {"indexes": [{"fields": ["action_execution"]}]}