예제 #1
0
def create_actions(definition, scope='private'):
    action_list_spec = spec_parser.get_action_list_spec_from_yaml(definition)

    db_actions = []

    for action_spec in action_list_spec.get_actions():
        db_actions.append(create_action(action_spec, definition, scope))

    return db_actions
예제 #2
0
def update_actions(definition, scope='private', identifier=None, namespace=''):
    action_list_spec = spec_parser.get_action_list_spec_from_yaml(definition)
    actions = action_list_spec.get_actions()

    if identifier and len(actions) > 1:
        raise exc.InputException("More than one actions are not supported for "
                                 "update with identifier. [identifier: %s]" %
                                 identifier)

    db_actions = []

    for action_spec in action_list_spec.get_actions():
        db_actions.append(
            update_action(action_spec,
                          definition,
                          scope,
                          identifier=identifier,
                          namespace=namespace))

    return db_actions
예제 #3
0
def update_actions(definition, scope='private', identifier=None):
    action_list_spec = spec_parser.get_action_list_spec_from_yaml(definition)
    actions = action_list_spec.get_actions()

    if identifier and len(actions) > 1:
        raise exc.InputException(
            "More than one actions are not supported for "
            "update with identifier. [identifier: %s]" %
            identifier
        )

    db_actions = []

    for action_spec in action_list_spec.get_actions():
        db_actions.append(update_action(
            action_spec,
            definition,
            scope,
            identifier=identifier
        ))

    return db_actions
예제 #4
0
version: '2.0'

my_action:
  description: My super cool action.
  tags: ['test', 'v2']
  base: std.echo
  base-input:
    output: <% $. %>
"""

ACTION_DSL_PARSE_EXCEPTION = """
---
%
"""

ACTION_SPEC = spec_parser.get_action_list_spec_from_yaml(ADHOC_ACTION_YAML)[0]

ACTION_DEF_VALUES = {
    'id': '123e4567-e89b-12d3-a456-426655440000',
    'name': 'my_action',
    'is_system': False,
    'description': 'My super cool action.',
    'tags': ['test', 'v2'],
    'definition': ADHOC_ACTION_YAML,
    'spec': ACTION_SPEC.to_dict(),
    'input': '',
    'project_id': None,
    'scope': 'public',
    'namespace': None
}