You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ariatosca.apache.org by em...@apache.org on 2017/05/26 18:10:16 UTC
[5/7] incubator-ariatosca git commit: ARIA-149 Enhance operation
configuration
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/f6ee65a9/extensions/aria_extension_tosca/simple_v1_0/modeling/properties.py
----------------------------------------------------------------------
diff --git a/extensions/aria_extension_tosca/simple_v1_0/modeling/properties.py b/extensions/aria_extension_tosca/simple_v1_0/modeling/properties.py
deleted file mode 100644
index 9c3ea42..0000000
--- a/extensions/aria_extension_tosca/simple_v1_0/modeling/properties.py
+++ /dev/null
@@ -1,202 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements. See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-from aria.utils.collections import merge, deepcopy_with_locators, OrderedDict
-from aria.parser.presentation import Value
-from aria.parser.validation import Issue
-
-from .data_types import coerce_value
-
-#
-# ArtifactType, DataType, CapabilityType, RelationshipType, NodeType, GroupType, PolicyType
-#
-
-# Works on properties, parameters, inputs, and attributes
-def get_inherited_property_definitions(context, presentation, field_name, for_presentation=None):
- """
- Returns our property definitions added on top of those of our parent, if we have one
- (recursively).
-
- Allows overriding all aspects of parent properties except data type.
- """
-
- # Get definitions from parent
- # If we inherit from a primitive, it does not have a parent:
- parent = presentation._get_parent(context) if hasattr(presentation, '_get_parent') else None
- definitions = get_inherited_property_definitions(context, parent, field_name,
- for_presentation=presentation) \
- if parent is not None else OrderedDict()
-
- # Add/merge our definitions
- # If we inherit from a primitive, it does not have our field
- our_definitions = getattr(presentation, field_name, None)
- if our_definitions:
- our_definitions_clone = OrderedDict()
- for name, our_definition in our_definitions.iteritems():
- our_definitions_clone[name] = our_definition._clone(for_presentation)
- our_definitions = our_definitions_clone
- merge_property_definitions(context, presentation, definitions, our_definitions, field_name)
-
- for definition in definitions.itervalues():
- definition._reset_method_cache()
-
- return definitions
-
-#
-# NodeTemplate, RelationshipTemplate, GroupTemplate, PolicyTemplate
-#
-
-def get_assigned_and_defined_property_values(context, presentation, field_name='property',
- field_name_plural='properties'):
- """
- Returns the assigned property values while making sure they are defined in our type.
-
- The property definition's default value, if available, will be used if we did not assign it.
-
- Makes sure that required properties indeed end up with a value.
- """
-
- values = OrderedDict()
-
- the_type = presentation._get_type(context)
- assignments = getattr(presentation, field_name_plural)
- get_fn_name = '_get_{0}'.format(field_name_plural)
- definitions = getattr(the_type, get_fn_name)(context) if the_type is not None else None
-
- # Fill in our assignments, but make sure they are defined
- if assignments:
- for name, value in assignments.iteritems():
- if (definitions is not None) and (name in definitions):
- definition = definitions[name]
- values[name] = coerce_property_value(context, value, definition, value.value)
- else:
- context.validation.report('assignment to undefined {0} "{1}" in "{2}"'
- .format(field_name, name, presentation._fullname),
- locator=value._locator, level=Issue.BETWEEN_TYPES)
-
- # Fill in defaults from the definitions
- if definitions:
- for name, definition in definitions.iteritems():
- if values.get(name) is None:
- values[name] = coerce_property_value(context, presentation, definition,
- definition.default)
-
- validate_required_values(context, presentation, values, definitions)
-
- return values
-
-#
-# TopologyTemplate
-#
-
-def get_parameter_values(context, presentation, field_name):
- values = OrderedDict()
-
- parameters = getattr(presentation, field_name)
-
- # Fill in defaults and values
- if parameters:
- for name, parameter in parameters.iteritems():
- if values.get(name) is None:
- if hasattr(parameter, 'value') and (parameter.value is not None):
- # For parameters only:
- values[name] = coerce_property_value(context, presentation, parameter,
- parameter.value)
- else:
- default = parameter.default if hasattr(parameter, 'default') else None
- values[name] = coerce_property_value(context, presentation, parameter, default)
-
- return values
-
-#
-# Utils
-#
-
-def validate_required_values(context, presentation, values, definitions):
- """
- Check if required properties have not been assigned.
- """
-
- if not definitions:
- return
- for name, definition in definitions.iteritems():
- if getattr(definition, 'required', False) \
- and ((values is None) or (values.get(name) is None)):
- context.validation.report('required property "%s" is not assigned a value in "%s"'
- % (name, presentation._fullname),
- locator=presentation._get_child_locator('properties'),
- level=Issue.BETWEEN_TYPES)
-
-def merge_raw_property_definition(context, presentation, raw_property_definition,
- our_property_definition, field_name, property_name):
- # Check if we changed the type
- # TODO: allow a sub-type?
- type1 = raw_property_definition.get('type')
- type2 = our_property_definition.type
- if type1 != type2:
- context.validation.report(
- 'override changes type from "%s" to "%s" for property "%s" in "%s"'
- % (type1, type2, property_name, presentation._fullname),
- locator=presentation._get_child_locator(field_name, property_name),
- level=Issue.BETWEEN_TYPES)
-
- merge(raw_property_definition, our_property_definition._raw)
-
-def merge_raw_property_definitions(context, presentation, raw_property_definitions,
- our_property_definitions, field_name):
- if not our_property_definitions:
- return
- for property_name, our_property_definition in our_property_definitions.iteritems():
- if property_name in raw_property_definitions:
- raw_property_definition = raw_property_definitions[property_name]
- merge_raw_property_definition(context, presentation, raw_property_definition,
- our_property_definition, field_name, property_name)
- else:
- raw_property_definitions[property_name] = \
- deepcopy_with_locators(our_property_definition._raw)
-
-def merge_property_definitions(context, presentation, property_definitions,
- our_property_definitions, field_name):
- if not our_property_definitions:
- return
- for property_name, our_property_definition in our_property_definitions.iteritems():
- if property_name in property_definitions:
- property_definition = property_definitions[property_name]
- merge_raw_property_definition(context, presentation, property_definition._raw,
- our_property_definition, field_name, property_name)
- else:
- property_definitions[property_name] = our_property_definition
-
-# Works on properties, inputs, and parameters
-def coerce_property_value(context, presentation, definition, value, aspect=None):
- the_type = definition._get_type(context) if definition is not None else None
- entry_schema = definition.entry_schema if definition is not None else None
- constraints = definition._get_constraints(context) \
- if ((definition is not None) and hasattr(definition, '_get_constraints')) else None
- value = coerce_value(context, presentation, the_type, entry_schema, constraints, value, aspect)
- if (the_type is not None) and hasattr(the_type, '_name'):
- type_name = the_type._name
- else:
- type_name = getattr(definition, 'type', None)
- description = getattr(definition, 'description', None)
- description = description.value if description is not None else None
- return Value(type_name, value, description)
-
-def convert_property_definitions_to_values(context, definitions):
- values = OrderedDict()
- for name, definition in definitions.iteritems():
- default = definition.default
- values[name] = coerce_property_value(context, definition, definition, default)
- return values
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/f6ee65a9/extensions/aria_extension_tosca/simple_v1_0/modeling/requirements.py
----------------------------------------------------------------------
diff --git a/extensions/aria_extension_tosca/simple_v1_0/modeling/requirements.py b/extensions/aria_extension_tosca/simple_v1_0/modeling/requirements.py
index 2a68da2..6bdb5b1 100644
--- a/extensions/aria_extension_tosca/simple_v1_0/modeling/requirements.py
+++ b/extensions/aria_extension_tosca/simple_v1_0/modeling/requirements.py
@@ -14,13 +14,14 @@
# limitations under the License.
from aria.parser.validation import Issue
-from aria.utils.collections import deepcopy_with_locators, OrderedDict
+from aria.utils.collections import (deepcopy_with_locators, OrderedDict)
-from .properties import (convert_property_definitions_to_values, validate_required_values,
- coerce_property_value)
+from .parameters import (convert_parameter_definitions_to_values, validate_required_values,
+ coerce_parameter_value)
from .interfaces import (convert_requirement_interface_definitions_from_type_to_raw_template,
merge_interface_definitions, merge_interface, validate_required_inputs)
+
#
# NodeType
#
@@ -49,6 +50,7 @@ def get_inherited_requirement_definitions(context, presentation):
return requirement_definitions
+
#
# NodeTemplate
#
@@ -127,6 +129,7 @@ def get_template_requirements(context, presentation):
return requirement_assignments
+
#
# Utils
#
@@ -195,8 +198,8 @@ def convert_requirement_from_definition_to_assignment(context, requirement_defin
if relationship_property_definitions:
# Convert property definitions to values
raw['relationship']['properties'] = \
- convert_property_definitions_to_values(context,
- relationship_property_definitions)
+ convert_parameter_definitions_to_values(context,
+ relationship_property_definitions)
# These are our interface definitions
# InterfaceDefinition:
@@ -229,6 +232,7 @@ def convert_requirement_from_definition_to_assignment(context, requirement_defin
relationship_property_definitions, \
relationship_interface_definitions
+
def add_requirement_assignments(context, presentation, requirement_assignments,
requirement_definitions, our_requirement_assignments):
for requirement_name, our_requirement_assignment in our_requirement_assignments:
@@ -258,6 +262,7 @@ def add_requirement_assignments(context, presentation, requirement_assignments,
locator=our_requirement_assignment._locator,
level=Issue.BETWEEN_TYPES)
+
def merge_requirement_assignment(context, relationship_property_definitions,
relationship_interface_definitions, requirement, our_requirement):
our_capability = our_requirement.capability
@@ -283,6 +288,7 @@ def merge_requirement_assignment(context, relationship_property_definitions,
relationship_interface_definitions,
requirement, our_relationship)
+
def merge_requirement_assignment_relationship(context, presentation, property_definitions,
interface_definitions, requirement, our_relationship):
our_relationship_properties = our_relationship._raw.get('properties')
@@ -296,7 +302,7 @@ def merge_requirement_assignment_relationship(context, presentation, property_de
if property_name in property_definitions:
definition = property_definitions[property_name]
requirement._raw['relationship']['properties'][property_name] = \
- coerce_property_value(context, presentation, definition, prop)
+ coerce_parameter_value(context, presentation, definition, prop)
else:
context.validation.report(
'relationship property "%s" not declared at definition of requirement "%s"'
@@ -330,6 +336,7 @@ def merge_requirement_assignment_relationship(context, presentation, property_de
presentation._container._container._fullname),
locator=our_relationship._locator, level=Issue.BETWEEN_TYPES)
+
def validate_requirement_assignment(context, presentation, requirement_assignment,
relationship_property_definitions,
relationship_interface_definitions):
@@ -348,6 +355,7 @@ def validate_requirement_assignment(context, presentation, requirement_assignmen
validate_required_inputs(context, presentation, interface_assignment,
relationship_interface_definition, None, interface_name)
+
def get_first_requirement(requirement_definitions, name):
if requirement_definitions is not None:
for requirement_name, requirement_definition in requirement_definitions:
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/f6ee65a9/extensions/aria_extension_tosca/simple_v1_0/modeling/substitution_mappings.py
----------------------------------------------------------------------
diff --git a/extensions/aria_extension_tosca/simple_v1_0/modeling/substitution_mappings.py b/extensions/aria_extension_tosca/simple_v1_0/modeling/substitution_mappings.py
index c1e21de..8f7ec4c 100644
--- a/extensions/aria_extension_tosca/simple_v1_0/modeling/substitution_mappings.py
+++ b/extensions/aria_extension_tosca/simple_v1_0/modeling/substitution_mappings.py
@@ -16,6 +16,7 @@
from aria.utils.formatting import safe_repr
from aria.parser.validation import Issue
+
def validate_subtitution_mappings_requirement(context, presentation):
if not validate_format(context, presentation, 'requirement'):
return
@@ -57,6 +58,7 @@ def validate_subtitution_mappings_requirement(context, presentation):
locator=presentation._locator, level=Issue.BETWEEN_TYPES)
return
+
def validate_subtitution_mappings_capability(context, presentation):
if not validate_format(context, presentation, 'capability'):
return
@@ -99,6 +101,7 @@ def validate_subtitution_mappings_capability(context, presentation):
% (capability_type._name, presentation._name, type_capability_type._name),
locator=presentation._locator, level=Issue.BETWEEN_TYPES)
+
#
# Utils
#
@@ -114,6 +117,7 @@ def validate_format(context, presentation, name):
return False
return True
+
def get_node_template(context, presentation, name):
node_template_name = presentation._raw[0]
node_template = context.presentation.get_from_dict('service_template', 'topology_template',
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/f6ee65a9/extensions/aria_extension_tosca/simple_v1_0/templates.py
----------------------------------------------------------------------
diff --git a/extensions/aria_extension_tosca/simple_v1_0/templates.py b/extensions/aria_extension_tosca/simple_v1_0/templates.py
index ce6b5d9..123a00e 100644
--- a/extensions/aria_extension_tosca/simple_v1_0/templates.py
+++ b/extensions/aria_extension_tosca/simple_v1_0/templates.py
@@ -26,7 +26,7 @@ from .assignments import (PropertyAssignment, AttributeAssignment, RequirementAs
from .definitions import ParameterDefinition
from .filters import NodeFilter
from .misc import (Description, MetaData, Repository, Import, SubstitutionMappings)
-from .modeling.properties import (get_assigned_and_defined_property_values, get_parameter_values)
+from .modeling.parameters import (get_assigned_and_defined_parameter_values, get_parameter_values)
from .modeling.interfaces import get_template_interfaces
from .modeling.requirements import get_template_requirements
from .modeling.capabilities import get_template_capabilities
@@ -157,12 +157,11 @@ class NodeTemplate(ExtensiblePresentation):
@cachedmethod
def _get_property_values(self, context):
- return FrozenDict(get_assigned_and_defined_property_values(context, self))
+ return FrozenDict(get_assigned_and_defined_parameter_values(context, self, 'property'))
@cachedmethod
def _get_attribute_default_values(self, context):
- return FrozenDict(get_assigned_and_defined_property_values(context, self,
- 'attribute', 'attributes'))
+ return FrozenDict(get_assigned_and_defined_parameter_values(context, self, 'attribute'))
@cachedmethod
def _get_requirements(self, context):
@@ -281,7 +280,7 @@ class RelationshipTemplate(ExtensiblePresentation):
@cachedmethod
def _get_property_values(self, context):
- return FrozenDict(get_assigned_and_defined_property_values(context, self))
+ return FrozenDict(get_assigned_and_defined_parameter_values(context, self, 'property'))
@cachedmethod
def _get_interfaces(self, context):
@@ -363,7 +362,7 @@ class GroupTemplate(ExtensiblePresentation):
@cachedmethod
def _get_property_values(self, context):
- return FrozenDict(get_assigned_and_defined_property_values(context, self))
+ return FrozenDict(get_assigned_and_defined_parameter_values(context, self, 'property'))
@cachedmethod
def _get_interfaces(self, context):
@@ -427,7 +426,7 @@ class PolicyTemplate(ExtensiblePresentation):
@cachedmethod
def _get_property_values(self, context):
- return FrozenDict(get_assigned_and_defined_property_values(context, self))
+ return FrozenDict(get_assigned_and_defined_parameter_values(context, self, 'property'))
@cachedmethod
def _get_targets(self, context):
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/f6ee65a9/extensions/aria_extension_tosca/simple_v1_0/types.py
----------------------------------------------------------------------
diff --git a/extensions/aria_extension_tosca/simple_v1_0/types.py b/extensions/aria_extension_tosca/simple_v1_0/types.py
index bc80eb9..d97b89c 100644
--- a/extensions/aria_extension_tosca/simple_v1_0/types.py
+++ b/extensions/aria_extension_tosca/simple_v1_0/types.py
@@ -33,9 +33,9 @@ from .modeling.capabilities import (get_inherited_valid_source_types,
get_inherited_capability_definitions)
from .modeling.data_types import (get_data_type, get_inherited_constraints, coerce_data_type_value,
validate_data_type_name)
-from .modeling.interfaces import get_inherited_interface_definitions, get_inherited_operations
+from .modeling.interfaces import (get_inherited_interface_definitions, get_inherited_operations)
from .modeling.policies import get_inherited_targets
-from .modeling.properties import get_inherited_property_definitions
+from .modeling.parameters import get_inherited_parameter_definitions
from .modeling.requirements import get_inherited_requirement_definitions
from .presentation.extensible import ExtensiblePresentation
from .presentation.field_getters import data_type_class_getter
@@ -115,7 +115,7 @@ class ArtifactType(ExtensiblePresentation):
@cachedmethod
def _get_properties(self, context):
- return FrozenDict(get_inherited_property_definitions(context, self, 'properties'))
+ return FrozenDict(get_inherited_parameter_definitions(context, self, 'properties'))
def _validate(self, context):
super(ArtifactType, self)._validate(context)
@@ -201,7 +201,7 @@ class DataType(ExtensiblePresentation):
@cachedmethod
def _get_properties(self, context):
- return FrozenDict(get_inherited_property_definitions(context, self, 'properties'))
+ return FrozenDict(get_inherited_parameter_definitions(context, self, 'properties'))
@cachedmethod
def _get_constraints(self, context):
@@ -307,7 +307,7 @@ class CapabilityType(ExtensiblePresentation):
@cachedmethod
def _get_properties(self, context):
- return FrozenDict(get_inherited_property_definitions(context, self, 'properties'))
+ return FrozenDict(get_inherited_parameter_definitions(context, self, 'properties'))
@cachedmethod
def _get_valid_source_types(self, context):
@@ -385,7 +385,7 @@ class InterfaceType(ExtensiblePresentation):
@cachedmethod
def _get_inputs(self, context):
- return FrozenDict(get_inherited_property_definitions(context, self, 'inputs'))
+ return FrozenDict(get_inherited_parameter_definitions(context, self, 'inputs'))
@cachedmethod
def _get_operations(self, context):
@@ -493,11 +493,11 @@ class RelationshipType(ExtensiblePresentation):
@cachedmethod
def _get_properties(self, context):
- return FrozenDict(get_inherited_property_definitions(context, self, 'properties'))
+ return FrozenDict(get_inherited_parameter_definitions(context, self, 'properties'))
@cachedmethod
def _get_attributes(self, context):
- return FrozenDict(get_inherited_property_definitions(context, self, 'attributes'))
+ return FrozenDict(get_inherited_parameter_definitions(context, self, 'attributes'))
@cachedmethod
def _get_interfaces(self, context):
@@ -624,11 +624,11 @@ class NodeType(ExtensiblePresentation):
@cachedmethod
def _get_properties(self, context):
- return FrozenDict(get_inherited_property_definitions(context, self, 'properties'))
+ return FrozenDict(get_inherited_parameter_definitions(context, self, 'properties'))
@cachedmethod
def _get_attributes(self, context):
- return FrozenDict(get_inherited_property_definitions(context, self, 'attributes'))
+ return FrozenDict(get_inherited_parameter_definitions(context, self, 'attributes'))
@cachedmethod
def _get_requirements(self, context):
@@ -760,7 +760,7 @@ class GroupType(ExtensiblePresentation):
@cachedmethod
def _get_properties(self, context):
- return FrozenDict(get_inherited_property_definitions(context, self, 'properties'))
+ return FrozenDict(get_inherited_parameter_definitions(context, self, 'properties'))
@cachedmethod
def _get_interfaces(self, context):
@@ -848,7 +848,7 @@ class PolicyType(ExtensiblePresentation):
@cachedmethod
def _get_properties(self, context):
- return FrozenDict(get_inherited_property_definitions(context, self, 'properties'))
+ return FrozenDict(get_inherited_parameter_definitions(context, self, 'properties'))
@cachedmethod
def _get_targets(self, context):
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/f6ee65a9/tests/cli/test_services.py
----------------------------------------------------------------------
diff --git a/tests/cli/test_services.py b/tests/cli/test_services.py
index b1a6ee4..e5717cc 100644
--- a/tests/cli/test_services.py
+++ b/tests/cli/test_services.py
@@ -19,7 +19,7 @@ import mock
from aria.cli.env import _Environment
from aria.core import Core
from aria.exceptions import DependentActiveExecutionsError, DependentAvailableNodesError
-from aria.modeling.exceptions import InputsException
+from aria.modeling.exceptions import ParameterException
from aria.storage import exceptions as storage_exceptions
from .base_test import ( # pylint: disable=unused-import
@@ -120,11 +120,11 @@ class TestServicesCreate(TestCliBase):
monkeypatch.setattr(_Environment, 'model_storage', mock_storage)
monkeypatch.setattr(Core,
'create_service',
- raise_exception(InputsException))
+ raise_exception(ParameterException))
assert_exception_raised(
self.invoke('services create -t with_inputs test_s'),
- expected_exception=InputsException)
+ expected_exception=ParameterException)
assert "Service created. The service's name is test_s" not in self.logger_output_string
@@ -152,8 +152,8 @@ class TestServicesDelete(TestCliBase):
assert_exception_raised(
self.invoke('services delete test_s'),
expected_exception=DependentActiveExecutionsError,
- expected_msg="Can't delete service {name} - there is an active execution "
- "for this service. Active execution id: 1".format(
+ expected_msg="Can't delete service `{name}` - there is an active execution "
+ "for this service. Active execution ID: 1".format(
name=mock_models.SERVICE_NAME))
def test_delete_available_nodes_error(self, monkeypatch, mock_storage):
@@ -161,8 +161,8 @@ class TestServicesDelete(TestCliBase):
assert_exception_raised(
self.invoke('services delete test_s'),
expected_exception=DependentAvailableNodesError,
- expected_msg="Can't delete service {name} - there are available nodes "
- "for this service. Available node ids: 1".format(
+ expected_msg="Can't delete service `{name}` - there are available nodes "
+ "for this service. Available node IDs: 1".format(
name=mock_models.SERVICE_NAME))
def test_delete_available_nodes_error_with_force(self, monkeypatch, mock_storage):
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/f6ee65a9/tests/mock/models.py
----------------------------------------------------------------------
diff --git a/tests/mock/models.py b/tests/mock/models.py
index 98703d5..50aa340 100644
--- a/tests/mock/models.py
+++ b/tests/mock/models.py
@@ -225,11 +225,11 @@ def create_interface(service, interface_name, operation_name, operation_kwargs=N
interface_kwargs=None):
the_type = service.service_template.interface_types.get_descendant('test_interface_type')
- if operation_kwargs and operation_kwargs.get('inputs'):
- operation_kwargs['inputs'] = dict(
- (input_name, models.Parameter.wrap(input_name, input_value))
- for input_name, input_value in operation_kwargs['inputs'].iteritems()
- if input_value is not None)
+ if operation_kwargs and operation_kwargs.get('arguments'):
+ operation_kwargs['arguments'] = dict(
+ (argument_name, models.Parameter.wrap(argument_name, argument_value))
+ for argument_name, argument_value in operation_kwargs['arguments'].iteritems()
+ if argument_value is not None)
operation = models.Operation(
name=operation_name,
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/f6ee65a9/tests/mock/topology.py
----------------------------------------------------------------------
diff --git a/tests/mock/topology.py b/tests/mock/topology.py
index bfb7b4e..ab08dbd 100644
--- a/tests/mock/topology.py
+++ b/tests/mock/topology.py
@@ -27,9 +27,9 @@ def create_simple_topology_single_node(model_storage, create_operation):
service_template,
'Standard', 'create',
operation_kwargs=dict(
- implementation=create_operation,
- inputs={'key': aria_models.Parameter.wrap('key', 'create'),
- 'value': aria_models.Parameter.wrap('value', True)})
+ function=create_operation,
+ arguments={'key': aria_models.Parameter.wrap('key', 'create'),
+ 'value': aria_models.Parameter.wrap('value', True)})
)
node_template.interface_templates[interface_template.name] = interface_template # pylint: disable=unsubscriptable-object
@@ -38,9 +38,9 @@ def create_simple_topology_single_node(model_storage, create_operation):
service,
'Standard', 'create',
operation_kwargs=dict(
- implementation=create_operation,
- inputs={'key': aria_models.Parameter.wrap('key', 'create'),
- 'value': aria_models.Parameter.wrap('value', True)})
+ function=create_operation,
+ arguments={'key': aria_models.Parameter.wrap('key', 'create'),
+ 'value': aria_models.Parameter.wrap('value', True)})
)
node.interfaces[interface.name] = interface # pylint: disable=unsubscriptable-object
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/f6ee65a9/tests/orchestrator/context/test_operation.py
----------------------------------------------------------------------
diff --git a/tests/orchestrator/context/test_operation.py b/tests/orchestrator/context/test_operation.py
index 5d193bc..7dbdd04 100644
--- a/tests/orchestrator/context/test_operation.py
+++ b/tests/orchestrator/context/test_operation.py
@@ -78,14 +78,14 @@ def test_node_operation_task_execution(ctx, thread_executor, dataholder):
interface_name = 'Standard'
operation_name = 'create'
- inputs = {'putput': True, 'holder_path': dataholder.path}
+ arguments = {'putput': True, 'holder_path': dataholder.path}
node = ctx.model.node.get_by_name(mock.models.DEPENDENCY_NODE_NAME)
interface = mock.models.create_interface(
node.service,
interface_name,
operation_name,
- operation_kwargs=dict(implementation=op_path(basic_node_operation, module_path=__name__),
- inputs=inputs)
+ operation_kwargs=dict(function=op_path(basic_node_operation, module_path=__name__),
+ arguments=arguments)
)
node.interfaces[interface.name] = interface
ctx.model.node.update(node)
@@ -97,7 +97,7 @@ def test_node_operation_task_execution(ctx, thread_executor, dataholder):
node,
interface_name=interface_name,
operation_name=operation_name,
- inputs=inputs
+ inputs=arguments
)
)
@@ -115,7 +115,7 @@ def test_node_operation_task_execution(ctx, thread_executor, dataholder):
)
operations = interface.operations
assert len(operations) == 1
- assert dataholder['implementation'] == operations.values()[0].implementation # pylint: disable=no-member
+ assert dataholder['implementation'] == operations.values()[0].function # pylint: disable=no-member
assert dataholder['inputs']['putput'] is True
# Context based attributes (sugaring)
@@ -127,15 +127,14 @@ def test_relationship_operation_task_execution(ctx, thread_executor, dataholder)
interface_name = 'Configure'
operation_name = 'post_configure'
- inputs = {'putput': True, 'holder_path': dataholder.path}
+ arguments = {'putput': True, 'holder_path': dataholder.path}
relationship = ctx.model.relationship.list()[0]
interface = mock.models.create_interface(
relationship.source_node.service,
interface_name,
operation_name,
- operation_kwargs=dict(implementation=op_path(basic_relationship_operation,
- module_path=__name__),
- inputs=inputs),
+ operation_kwargs=dict(function=op_path(basic_relationship_operation, module_path=__name__),
+ arguments=arguments),
)
relationship.interfaces[interface.name] = interface
@@ -148,7 +147,7 @@ def test_relationship_operation_task_execution(ctx, thread_executor, dataholder)
relationship,
interface_name=interface_name,
operation_name=operation_name,
- inputs=inputs
+ inputs=arguments
)
)
@@ -160,7 +159,7 @@ def test_relationship_operation_task_execution(ctx, thread_executor, dataholder)
assert dataholder['actor_name'] == relationship.name
assert interface_name in dataholder['task_name']
operations = interface.operations
- assert dataholder['implementation'] == operations.values()[0].implementation # pylint: disable=no-member
+ assert dataholder['implementation'] == operations.values()[0].function # pylint: disable=no-member
assert dataholder['inputs']['putput'] is True
# Context based attributes (sugaring)
@@ -197,8 +196,8 @@ def test_invalid_task_operation_id(ctx, thread_executor, dataholder):
node.service,
interface_name=interface_name,
operation_name=operation_name,
- operation_kwargs=dict(implementation=op_path(get_node_id, module_path=__name__),
- inputs={'holder_path': dataholder.path})
+ operation_kwargs=dict(function=op_path(get_node_id, module_path=__name__),
+ arguments={'holder_path': dataholder.path})
)
node.interfaces[interface.name] = interface
ctx.model.node.update(node)
@@ -234,15 +233,15 @@ def test_plugin_workdir(ctx, thread_executor, tmpdir):
node = ctx.model.node.get_by_name(mock.models.DEPENDENCY_NODE_NAME)
filename = 'test_file'
content = 'file content'
- inputs = {'filename': filename, 'content': content}
+ arguments = {'filename': filename, 'content': content}
interface = mock.models.create_interface(
node.service,
interface_name,
operation_name,
operation_kwargs=dict(
- implementation='{0}.{1}'.format(__name__, _test_plugin_workdir.__name__),
+ function='{0}.{1}'.format(__name__, _test_plugin_workdir.__name__),
plugin=plugin,
- inputs=inputs)
+ arguments=arguments)
)
node.interfaces[interface.name] = interface
ctx.model.node.update(node)
@@ -253,7 +252,7 @@ def test_plugin_workdir(ctx, thread_executor, tmpdir):
node,
interface_name=interface_name,
operation_name=operation_name,
- inputs=inputs))
+ inputs=arguments))
execute(workflow_func=basic_workflow, workflow_context=ctx, executor=thread_executor)
expected_file = tmpdir.join('workdir', 'plugins', str(ctx.service.id),
@@ -280,7 +279,7 @@ def test_node_operation_logging(ctx, executor):
node = ctx.model.node.get_by_name(mock.models.DEPENDENCY_NODE_NAME)
- inputs = {
+ arguments = {
'op_start': 'op_start',
'op_end': 'op_end',
}
@@ -289,8 +288,8 @@ def test_node_operation_logging(ctx, executor):
interface_name,
operation_name,
operation_kwargs=dict(
- implementation=op_path(logged_operation, module_path=__name__),
- inputs=inputs)
+ function=op_path(logged_operation, module_path=__name__),
+ arguments=arguments)
)
node.interfaces[interface.name] = interface
ctx.model.node.update(node)
@@ -302,19 +301,19 @@ def test_node_operation_logging(ctx, executor):
node,
interface_name=interface_name,
operation_name=operation_name,
- inputs=inputs
+ inputs=arguments
)
)
execute(workflow_func=basic_workflow, workflow_context=ctx, executor=executor)
- _assert_loggins(ctx, inputs)
+ _assert_loggins(ctx, arguments)
def test_relationship_operation_logging(ctx, executor):
interface_name, operation_name = mock.operations.RELATIONSHIP_OPERATIONS_INSTALL[0]
relationship = ctx.model.relationship.list()[0]
- inputs = {
+ arguments = {
'op_start': 'op_start',
'op_end': 'op_end',
}
@@ -322,8 +321,8 @@ def test_relationship_operation_logging(ctx, executor):
relationship.source_node.service,
interface_name,
operation_name,
- operation_kwargs=dict(implementation=op_path(logged_operation, module_path=__name__),
- inputs=inputs)
+ operation_kwargs=dict(function=op_path(logged_operation, module_path=__name__),
+ arguments=arguments)
)
relationship.interfaces[interface.name] = interface
ctx.model.relationship.update(relationship)
@@ -335,12 +334,12 @@ def test_relationship_operation_logging(ctx, executor):
relationship,
interface_name=interface_name,
operation_name=operation_name,
- inputs=inputs
+ inputs=arguments
)
)
execute(workflow_func=basic_workflow, workflow_context=ctx, executor=executor)
- _assert_loggins(ctx, inputs)
+ _assert_loggins(ctx, arguments)
def test_attribute_consumption(ctx, executor, dataholder):
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/f6ee65a9/tests/orchestrator/context/test_serialize.py
----------------------------------------------------------------------
diff --git a/tests/orchestrator/context/test_serialize.py b/tests/orchestrator/context/test_serialize.py
index 8a5db6f..946b0bd 100644
--- a/tests/orchestrator/context/test_serialize.py
+++ b/tests/orchestrator/context/test_serialize.py
@@ -47,7 +47,7 @@ def _mock_workflow(ctx, graph):
node.service,
'test',
'op',
- operation_kwargs=dict(implementation=_operation_mapping(),
+ operation_kwargs=dict(function=_operation_mapping(),
plugin=plugin)
)
node.interfaces[interface.name] = interface
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/f6ee65a9/tests/orchestrator/context/test_toolbelt.py
----------------------------------------------------------------------
diff --git a/tests/orchestrator/context/test_toolbelt.py b/tests/orchestrator/context/test_toolbelt.py
index fc34907..26a15e5 100644
--- a/tests/orchestrator/context/test_toolbelt.py
+++ b/tests/orchestrator/context/test_toolbelt.py
@@ -86,12 +86,12 @@ def test_host_ip(workflow_context, executor, dataholder):
interface_name = 'Standard'
operation_name = 'create'
_, dependency_node, _, _, _ = _get_elements(workflow_context)
- inputs = {'putput': True, 'holder_path': dataholder.path}
+ arguments = {'putput': True, 'holder_path': dataholder.path}
interface = mock.models.create_interface(
dependency_node.service,
interface_name=interface_name,
operation_name=operation_name,
- operation_kwargs=dict(implementation=op_path(host_ip, module_path=__name__), inputs=inputs)
+ operation_kwargs=dict(function=op_path(host_ip, module_path=__name__), arguments=arguments)
)
dependency_node.interfaces[interface.name] = interface
dependency_node.attributes['ip'] = models.Parameter.wrap('ip', '1.1.1.1')
@@ -105,7 +105,7 @@ def test_host_ip(workflow_context, executor, dataholder):
dependency_node,
interface_name=interface_name,
operation_name=operation_name,
- inputs=inputs
+ inputs=arguments
)
)
@@ -118,13 +118,13 @@ def test_relationship_tool_belt(workflow_context, executor, dataholder):
interface_name = 'Configure'
operation_name = 'post_configure'
_, _, _, _, relationship = _get_elements(workflow_context)
- inputs = {'putput': True, 'holder_path': dataholder.path}
+ arguments = {'putput': True, 'holder_path': dataholder.path}
interface = mock.models.create_interface(
relationship.source_node.service,
interface_name=interface_name,
operation_name=operation_name,
- operation_kwargs=dict(implementation=op_path(relationship_operation, module_path=__name__),
- inputs=inputs)
+ operation_kwargs=dict(function=op_path(relationship_operation, module_path=__name__),
+ arguments=arguments)
)
relationship.interfaces[interface.name] = interface
workflow_context.model.relationship.update(relationship)
@@ -136,7 +136,7 @@ def test_relationship_tool_belt(workflow_context, executor, dataholder):
relationship,
interface_name=interface_name,
operation_name=operation_name,
- inputs=inputs
+ inputs=arguments
)
)
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/f6ee65a9/tests/orchestrator/execution_plugin/test_local.py
----------------------------------------------------------------------
diff --git a/tests/orchestrator/execution_plugin/test_local.py b/tests/orchestrator/execution_plugin/test_local.py
index d9115e1..0dfd512 100644
--- a/tests/orchestrator/execution_plugin/test_local.py
+++ b/tests/orchestrator/execution_plugin/test_local.py
@@ -463,7 +463,7 @@ if __name__ == '__main__':
inputs=None):
local_script_path = script_path
script_path = os.path.basename(local_script_path) if local_script_path else ''
- inputs = inputs or {}
+ arguments = inputs or {}
process = process or {}
if script_path:
workflow_context.resource.service.upload(
@@ -471,7 +471,7 @@ if __name__ == '__main__':
source=local_script_path,
path=script_path)
- inputs.update({
+ arguments.update({
'script_path': script_path,
'process': process,
'input_as_env_var': env_var
@@ -485,17 +485,17 @@ if __name__ == '__main__':
'test',
'op',
operation_kwargs=dict(
- implementation='{0}.{1}'.format(
+ function='{0}.{1}'.format(
operations.__name__,
operations.run_script_locally.__name__),
- inputs=inputs)
+ arguments=arguments)
)
node.interfaces[interface.name] = interface
graph.add_tasks(api.task.OperationTask(
node,
interface_name='test',
operation_name='op',
- inputs=inputs))
+ inputs=arguments))
return graph
tasks_graph = mock_workflow(ctx=workflow_context) # pylint: disable=no-value-for-parameter
eng = engine.Engine(
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/f6ee65a9/tests/orchestrator/execution_plugin/test_ssh.py
----------------------------------------------------------------------
diff --git a/tests/orchestrator/execution_plugin/test_ssh.py b/tests/orchestrator/execution_plugin/test_ssh.py
index 92d250e..a369f8f 100644
--- a/tests/orchestrator/execution_plugin/test_ssh.py
+++ b/tests/orchestrator/execution_plugin/test_ssh.py
@@ -217,7 +217,7 @@ class TestWithActualSSHServer(object):
@workflow
def mock_workflow(ctx, graph):
node = ctx.model.node.get_by_name(mock.models.DEPENDENCY_NODE_NAME)
- inputs = {
+ arguments = {
'script_path': script_path,
'fabric_env': _FABRIC_ENV,
'process': process,
@@ -226,24 +226,24 @@ class TestWithActualSSHServer(object):
'test_operation': '',
}
if hide_output:
- inputs['hide_output'] = hide_output
+ arguments['hide_output'] = hide_output
if commands:
- inputs['commands'] = commands
+ arguments['commands'] = commands
interface = mock.models.create_interface(
node.service,
'test',
'op',
operation_kwargs=dict(
- implementation='{0}.{1}'.format(
+ function='{0}.{1}'.format(
operations.__name__,
operation.__name__),
- inputs=inputs)
+ arguments=arguments)
)
node.interfaces[interface.name] = interface
ops = []
for test_operation in test_operations:
- op_inputs = inputs.copy()
+ op_inputs = arguments.copy()
op_inputs['test_operation'] = test_operation
ops.append(api.task.OperationTask(
node,
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/f6ee65a9/tests/orchestrator/test_workflow_runner.py
----------------------------------------------------------------------
diff --git a/tests/orchestrator/test_workflow_runner.py b/tests/orchestrator/test_workflow_runner.py
index 7374e50..405cb80 100644
--- a/tests/orchestrator/test_workflow_runner.py
+++ b/tests/orchestrator/test_workflow_runner.py
@@ -190,7 +190,7 @@ def test_execution_inputs_override_workflow_inputs(request):
def test_execution_inputs_undeclared_inputs(request):
mock_workflow = _setup_mock_workflow_in_service(request)
- with pytest.raises(modeling_exceptions.UndeclaredInputsException):
+ with pytest.raises(modeling_exceptions.UndeclaredParametersException):
_create_workflow_runner(request, mock_workflow, inputs={'undeclared_input': 'value'})
@@ -198,7 +198,7 @@ def test_execution_inputs_missing_required_inputs(request):
mock_workflow = _setup_mock_workflow_in_service(
request, inputs={'required_input': models.Parameter.wrap('required_input', value=None)})
- with pytest.raises(modeling_exceptions.MissingRequiredInputsException):
+ with pytest.raises(modeling_exceptions.MissingRequiredParametersException):
_create_workflow_runner(request, mock_workflow, inputs={})
@@ -206,13 +206,13 @@ def test_execution_inputs_wrong_type_inputs(request):
mock_workflow = _setup_mock_workflow_in_service(
request, inputs={'input': models.Parameter.wrap('input', 'value')})
- with pytest.raises(modeling_exceptions.InputsOfWrongTypeException):
+ with pytest.raises(modeling_exceptions.ParametersOfWrongTypeException):
_create_workflow_runner(request, mock_workflow, inputs={'input': 5})
def test_execution_inputs_builtin_workflow_with_inputs(request):
# built-in workflows don't have inputs
- with pytest.raises(modeling_exceptions.UndeclaredInputsException):
+ with pytest.raises(modeling_exceptions.UndeclaredParametersException):
_create_workflow_runner(request, 'install', inputs={'undeclared_input': 'value'})
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/f6ee65a9/tests/orchestrator/workflows/api/test_task.py
----------------------------------------------------------------------
diff --git a/tests/orchestrator/workflows/api/test_task.py b/tests/orchestrator/workflows/api/test_task.py
index 642c785..d57e424 100644
--- a/tests/orchestrator/workflows/api/test_task.py
+++ b/tests/orchestrator/workflows/api/test_task.py
@@ -44,15 +44,15 @@ class TestOperationTask(object):
plugin = mock.models.create_plugin('test_plugin', '0.1')
ctx.model.node.update(plugin)
- inputs = {'test_input': True}
+ arguments = {'test_input': True}
interface = mock.models.create_interface(
ctx.service,
interface_name,
operation_name,
operation_kwargs=dict(plugin=plugin,
- implementation='op_path',
- inputs=inputs),)
+ function='op_path',
+ arguments=arguments),)
node = ctx.model.node.get_by_name(mock.models.DEPENDENT_NODE_NAME)
node.interfaces[interface_name] = interface
@@ -66,7 +66,7 @@ class TestOperationTask(object):
node,
interface_name=interface_name,
operation_name=operation_name,
- inputs=inputs,
+ inputs=arguments,
max_attempts=max_attempts,
retry_interval=retry_interval,
ignore_failure=ignore_failure)
@@ -92,15 +92,15 @@ class TestOperationTask(object):
plugin = mock.models.create_plugin('test_plugin', '0.1')
ctx.model.plugin.update(plugin)
- inputs = {'test_input': True}
+ arguments = {'test_input': True}
interface = mock.models.create_interface(
ctx.service,
interface_name,
operation_name,
operation_kwargs=dict(plugin=plugin,
- implementation='op_path',
- inputs=inputs)
+ function='op_path',
+ arguments=arguments)
)
relationship = ctx.model.relationship.list()[0]
@@ -113,7 +113,7 @@ class TestOperationTask(object):
relationship,
interface_name=interface_name,
operation_name=operation_name,
- inputs=inputs,
+ inputs=arguments,
max_attempts=max_attempts,
retry_interval=retry_interval)
@@ -137,15 +137,15 @@ class TestOperationTask(object):
plugin = mock.models.create_plugin('test_plugin', '0.1')
ctx.model.node.update(plugin)
- inputs = {'test_input': True}
+ arguments = {'test_input': True}
interface = mock.models.create_interface(
ctx.service,
interface_name,
operation_name,
operation_kwargs=dict(plugin=plugin,
- implementation='op_path',
- inputs=inputs)
+ function='op_path',
+ arguments=arguments)
)
relationship = ctx.model.relationship.list()[0]
@@ -158,7 +158,7 @@ class TestOperationTask(object):
relationship,
interface_name=interface_name,
operation_name=operation_name,
- inputs=inputs,
+ inputs=arguments,
max_attempts=max_attempts,
retry_interval=retry_interval)
@@ -189,7 +189,7 @@ class TestOperationTask(object):
interface_name,
operation_name,
operation_kwargs=dict(plugin=plugin,
- implementation='op_path'))
+ function='op_path'))
dependency_node.interfaces[interface_name] = interface
with context.workflow.current.push(ctx):
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/f6ee65a9/tests/orchestrator/workflows/builtin/test_execute_operation.py
----------------------------------------------------------------------
diff --git a/tests/orchestrator/workflows/builtin/test_execute_operation.py b/tests/orchestrator/workflows/builtin/test_execute_operation.py
index 4cddbe6..88818ca 100644
--- a/tests/orchestrator/workflows/builtin/test_execute_operation.py
+++ b/tests/orchestrator/workflows/builtin/test_execute_operation.py
@@ -35,7 +35,7 @@ def test_execute_operation(ctx):
ctx.service,
interface_name,
operation_name,
- operation_kwargs={'implementation': 'test'}
+ operation_kwargs=dict(function='test')
)
node.interfaces[interface.name] = interface
ctx.model.node.update(node)
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/f6ee65a9/tests/orchestrator/workflows/core/test_engine.py
----------------------------------------------------------------------
diff --git a/tests/orchestrator/workflows/core/test_engine.py b/tests/orchestrator/workflows/core/test_engine.py
index 8c0705b..43ec9f1 100644
--- a/tests/orchestrator/workflows/core/test_engine.py
+++ b/tests/orchestrator/workflows/core/test_engine.py
@@ -63,11 +63,11 @@ class BaseTest(object):
ignore_failure=None):
node = ctx.model.node.get_by_name(mock.models.DEPENDENCY_NODE_NAME)
interface_name = 'aria.interfaces.lifecycle'
- operation_kwargs = dict(implementation='{name}.{func.__name__}'.format(
+ operation_kwargs = dict(function='{name}.{func.__name__}'.format(
name=__name__, func=func))
if inputs:
- # the operation has to declare the inputs before those may be passed
- operation_kwargs['inputs'] = inputs
+ # the operation has to declare the arguments before those may be passed
+ operation_kwargs['arguments'] = inputs
operation_name = 'create'
interface = mock.models.create_interface(node.service, interface_name, operation_name,
operation_kwargs=operation_kwargs)
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/f6ee65a9/tests/orchestrator/workflows/core/test_events.py
----------------------------------------------------------------------
diff --git a/tests/orchestrator/workflows/core/test_events.py b/tests/orchestrator/workflows/core/test_events.py
index 184071d..6d542e9 100644
--- a/tests/orchestrator/workflows/core/test_events.py
+++ b/tests/orchestrator/workflows/core/test_events.py
@@ -110,8 +110,7 @@ def run_operation_on_node(ctx, op_name, interface_name):
service=node.service,
interface_name=interface_name,
operation_name=op_name,
- operation_kwargs=dict(implementation='{name}.{func.__name__}'.format(name=__name__,
- func=func)))
+ operation_kwargs=dict(function='{name}.{func.__name__}'.format(name=__name__, func=func)))
node.interfaces[interface.name] = interface
eng = engine.Engine(executor=ThreadExecutor(),
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/f6ee65a9/tests/orchestrator/workflows/core/test_task.py
----------------------------------------------------------------------
diff --git a/tests/orchestrator/workflows/core/test_task.py b/tests/orchestrator/workflows/core/test_task.py
index e488933..1ba6422 100644
--- a/tests/orchestrator/workflows/core/test_task.py
+++ b/tests/orchestrator/workflows/core/test_task.py
@@ -43,7 +43,7 @@ def ctx(tmpdir):
relationship.source_node.service,
RELATIONSHIP_INTERFACE_NAME,
RELATIONSHIP_OPERATION_NAME,
- operation_kwargs={'implementation': 'test'}
+ operation_kwargs=dict(function='test')
)
relationship.interfaces[interface.name] = interface
context.model.relationship.update(relationship)
@@ -53,7 +53,7 @@ def ctx(tmpdir):
node.service,
NODE_INTERFACE_NAME,
NODE_OPERATION_NAME,
- operation_kwargs={'implementation': 'test'}
+ operation_kwargs=dict(function='test')
)
node.interfaces[interface.name] = interface
context.model.node.update(node)
@@ -92,7 +92,7 @@ class TestOperationTask(object):
node.service,
NODE_INTERFACE_NAME,
NODE_OPERATION_NAME,
- operation_kwargs=dict(plugin=storage_plugin, implementation='test')
+ operation_kwargs=dict(plugin=storage_plugin, function='test')
)
node.interfaces[interface.name] = interface
ctx.model.node.update(node)
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/f6ee65a9/tests/orchestrator/workflows/core/test_task_graph_into_execution_graph.py
----------------------------------------------------------------------
diff --git a/tests/orchestrator/workflows/core/test_task_graph_into_execution_graph.py b/tests/orchestrator/workflows/core/test_task_graph_into_execution_graph.py
index 2a96d01..1633d4a 100644
--- a/tests/orchestrator/workflows/core/test_task_graph_into_execution_graph.py
+++ b/tests/orchestrator/workflows/core/test_task_graph_into_execution_graph.py
@@ -32,7 +32,7 @@ def test_task_graph_into_execution_graph(tmpdir):
node.service,
interface_name,
operation_name,
- operation_kwargs={'implementation': 'test'}
+ operation_kwargs=dict(function='test')
)
node.interfaces[interface.name] = interface
task_context.model.node.update(node)
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/f6ee65a9/tests/orchestrator/workflows/executor/test_process_executor_concurrent_modifications.py
----------------------------------------------------------------------
diff --git a/tests/orchestrator/workflows/executor/test_process_executor_concurrent_modifications.py b/tests/orchestrator/workflows/executor/test_process_executor_concurrent_modifications.py
index 92f0fc4..8c3f72a 100644
--- a/tests/orchestrator/workflows/executor/test_process_executor_concurrent_modifications.py
+++ b/tests/orchestrator/workflows/executor/test_process_executor_concurrent_modifications.py
@@ -67,7 +67,7 @@ def _test(context, executor, lock_files, func, dataholder, expected_failure):
key = 'key'
first_value = 'value1'
second_value = 'value2'
- inputs = {
+ arguments = {
'lock_files': lock_files,
'key': key,
'first_value': first_value,
@@ -80,8 +80,8 @@ def _test(context, executor, lock_files, func, dataholder, expected_failure):
node.service,
interface_name,
operation_name,
- operation_kwargs=dict(implementation='{0}.{1}'.format(__name__, func.__name__),
- inputs=inputs)
+ operation_kwargs=dict(function='{0}.{1}'.format(__name__, func.__name__),
+ arguments=arguments)
)
node.interfaces[interface.name] = interface
context.model.node.update(node)
@@ -93,12 +93,12 @@ def _test(context, executor, lock_files, func, dataholder, expected_failure):
node,
interface_name=interface_name,
operation_name=operation_name,
- inputs=inputs),
+ inputs=arguments),
api.task.OperationTask(
node,
interface_name=interface_name,
operation_name=operation_name,
- inputs=inputs)
+ inputs=arguments)
)
signal = events.on_failure_task_signal
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/f6ee65a9/tests/orchestrator/workflows/executor/test_process_executor_extension.py
----------------------------------------------------------------------
diff --git a/tests/orchestrator/workflows/executor/test_process_executor_extension.py b/tests/orchestrator/workflows/executor/test_process_executor_extension.py
index 30b23ed..acca0bf 100644
--- a/tests/orchestrator/workflows/executor/test_process_executor_extension.py
+++ b/tests/orchestrator/workflows/executor/test_process_executor_extension.py
@@ -27,7 +27,7 @@ from tests import storage
def test_decorate_extension(context, executor):
- inputs = {'input1': 1, 'input2': 2}
+ arguments = {'input1': 1, 'input2': 2}
def get_node(ctx):
return ctx.model.node.get_by_name(mock.models.DEPENDENCY_NODE_NAME)
@@ -41,24 +41,23 @@ def test_decorate_extension(context, executor):
ctx.service,
interface_name,
operation_name,
- operation_kwargs=dict(implementation='{0}.{1}'.format(__name__,
- _mock_operation.__name__),
- inputs=inputs)
+ operation_kwargs=dict(function='{0}.{1}'.format(__name__, _mock_operation.__name__),
+ arguments=arguments)
)
node.interfaces[interface.name] = interface
task = api.task.OperationTask(
node,
interface_name=interface_name,
operation_name=operation_name,
- inputs=inputs)
+ inputs=arguments)
graph.add_tasks(task)
return graph
graph = mock_workflow(ctx=context) # pylint: disable=no-value-for-parameter
eng = engine.Engine(executor=executor, workflow_context=context, tasks_graph=graph)
eng.execute()
out = get_node(context).attributes.get('out').value
- assert out['wrapper_inputs'] == inputs
- assert out['function_inputs'] == inputs
+ assert out['wrapper_inputs'] == arguments
+ assert out['function_inputs'] == arguments
@extension.process_executor
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/f6ee65a9/tests/orchestrator/workflows/executor/test_process_executor_tracked_changes.py
----------------------------------------------------------------------
diff --git a/tests/orchestrator/workflows/executor/test_process_executor_tracked_changes.py b/tests/orchestrator/workflows/executor/test_process_executor_tracked_changes.py
index 2b628a0..c766fe4 100644
--- a/tests/orchestrator/workflows/executor/test_process_executor_tracked_changes.py
+++ b/tests/orchestrator/workflows/executor/test_process_executor_tracked_changes.py
@@ -88,20 +88,20 @@ def _run_workflow(context, executor, op_func, inputs=None):
node = ctx.model.node.get_by_name(mock.models.DEPENDENCY_NODE_NAME)
interface_name = 'test_interface'
operation_name = 'operation'
- wf_inputs = inputs or {}
+ wf_arguments = inputs or {}
interface = mock.models.create_interface(
ctx.service,
interface_name,
operation_name,
- operation_kwargs=dict(implementation=_operation_mapping(op_func),
- inputs=wf_inputs)
+ operation_kwargs=dict(function=_operation_mapping(op_func),
+ arguments=wf_arguments)
)
node.interfaces[interface.name] = interface
task = api.task.OperationTask(
node,
interface_name=interface_name,
operation_name=operation_name,
- inputs=wf_inputs)
+ inputs=wf_arguments)
graph.add_tasks(task)
return graph
graph = mock_workflow(ctx=context) # pylint: disable=no-value-for-parameter
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/f6ee65a9/tests/resources/service-templates/tosca-simple-1.0/node-cellar/node-cellar.yaml
----------------------------------------------------------------------
diff --git a/tests/resources/service-templates/tosca-simple-1.0/node-cellar/node-cellar.yaml b/tests/resources/service-templates/tosca-simple-1.0/node-cellar/node-cellar.yaml
index 8e80640..ee9e094 100644
--- a/tests/resources/service-templates/tosca-simple-1.0/node-cellar/node-cellar.yaml
+++ b/tests/resources/service-templates/tosca-simple-1.0/node-cellar/node-cellar.yaml
@@ -104,6 +104,16 @@ topology_template:
Maintenance:
enable: juju > charm.maintenance_on
disable: juju > charm.maintenance_off
+ Standard:
+ create:
+ implementation:
+ primary: create_node_cellar.sh
+ dependencies:
+ - "process.args.1 > { get_attribute: [ SELF, tosca_id ] }"
+ - "process.args.2 > { get_property: [ HOST, flavor_name ] }"
+ - ssh.user > admin
+ - ssh.password > '1234'
+ - ssh.use_sudo > true
requirements:
- database: node_cellar_database
capabilities:
@@ -161,16 +171,7 @@ topology_template:
relationship:
interfaces:
Configure:
- target_changed:
- implementation:
- primary: changed.sh
- dependencies:
- #- { concat: [ process.args.1 >, mongodb ] }
- - process.args.1 > mongodb
- - process.args.2 > host
- - ssh.user > admin
- - ssh.password > 1234
- - ssh.use_sudo > true
+ target_changed: changed.sh
nginx:
type: nginx.Nginx
@@ -251,6 +252,7 @@ topology_template:
Standard:
inputs:
openstack_credential: { get_input: openstack_credential }
+ create: create_data_volume.sh
groups:
@@ -309,7 +311,7 @@ policy_types:
client connections cleanly and shut down services.
derived_from: aria.Workflow
properties:
- implementation:
+ function:
type: string
default: workflows.maintenance
enabled: