ARIA-149 Enhance operation configuration
authorTal Liron <tal.liron@gmail.com>
Thu, 20 Apr 2017 22:54:47 +0000 (17:54 -0500)
committerTal Liron <tal.liron@gmail.com>
Wed, 31 May 2017 21:42:02 +0000 (16:42 -0500)
commit9174f9469922c57f9a979c6161bd17a9f3f90c97
treef31b22c6dba27b051f1bbb82d151026dc54f8f9d
parent07d79513a4ac41ba66d84f2922a17fd0ab7ec39c
ARIA-149 Enhance operation configuration

* Also fixes ARIA-121, ARIA-190
* Parse special "dependencies" configuration parameters as YAML and
  treat as Parameter models, allowing them full use of intrinsic
  functions, type coersions, and validations
* Rename various functions that process "properties" to more generically
  process "parameters" (properties, inputs, attributes, arguments, etc.)
* The "configuration" field in OperationTemplate and Operation models
  is now now a dict of Parameter models
* Add "function" and "arguments" fields to Operation model to preserve
  user data (in "implementation" and "inputs") and to clearly demarcate
  orchestration data from user data; update task API accordingly
* Some cleanup of parser code touched by this commit
* Rename "create_parameters" to "merge_parameter_values" and improve
64 files changed:
aria/cli/commands/services.py
aria/cli/execution_logging.py
aria/core.py
aria/modeling/constraints.py [moved from aria/modeling/contraints.py with 100% similarity]
aria/modeling/exceptions.py
aria/modeling/orchestration.py
aria/modeling/service_common.py
aria/modeling/service_instance.py
aria/modeling/service_template.py
aria/modeling/utils.py
aria/orchestrator/__init__.py
aria/orchestrator/context/operation.py
aria/orchestrator/decorators.py
aria/orchestrator/execution_plugin/instantiation.py
aria/orchestrator/workflow_runner.py
aria/orchestrator/workflows/api/task.py
aria/orchestrator/workflows/builtin/execute_operation.py
aria/orchestrator/workflows/core/task.py
aria/orchestrator/workflows/events_logging.py
aria/orchestrator/workflows/executor/base.py
aria/orchestrator/workflows/executor/celery.py
aria/orchestrator/workflows/executor/dry.py
aria/orchestrator/workflows/executor/process.py
aria/orchestrator/workflows/executor/thread.py
aria/utils/formatting.py
aria/utils/validation.py
extensions/aria_extension_tosca/profiles/aria-1.0/aria-1.0.yaml
extensions/aria_extension_tosca/simple_v1_0/assignments.py
extensions/aria_extension_tosca/simple_v1_0/modeling/__init__.py
extensions/aria_extension_tosca/simple_v1_0/modeling/artifacts.py
extensions/aria_extension_tosca/simple_v1_0/modeling/capabilities.py
extensions/aria_extension_tosca/simple_v1_0/modeling/constraints.py
extensions/aria_extension_tosca/simple_v1_0/modeling/data_types.py
extensions/aria_extension_tosca/simple_v1_0/modeling/functions.py
extensions/aria_extension_tosca/simple_v1_0/modeling/interfaces.py
extensions/aria_extension_tosca/simple_v1_0/modeling/parameters.py [moved from extensions/aria_extension_tosca/simple_v1_0/modeling/properties.py with 73% similarity]
extensions/aria_extension_tosca/simple_v1_0/modeling/policies.py
extensions/aria_extension_tosca/simple_v1_0/modeling/requirements.py
extensions/aria_extension_tosca/simple_v1_0/modeling/substitution_mappings.py
extensions/aria_extension_tosca/simple_v1_0/templates.py
extensions/aria_extension_tosca/simple_v1_0/types.py
tests/cli/test_services.py
tests/mock/models.py
tests/mock/topology.py
tests/modeling/test_models.py
tests/orchestrator/context/test_operation.py
tests/orchestrator/context/test_serialize.py
tests/orchestrator/context/test_toolbelt.py
tests/orchestrator/execution_plugin/test_local.py
tests/orchestrator/execution_plugin/test_ssh.py
tests/orchestrator/test_workflow_runner.py
tests/orchestrator/workflows/api/test_task.py
tests/orchestrator/workflows/builtin/test_execute_operation.py
tests/orchestrator/workflows/core/test_engine.py
tests/orchestrator/workflows/core/test_events.py
tests/orchestrator/workflows/core/test_task.py
tests/orchestrator/workflows/core/test_task_graph_into_execution_graph.py
tests/orchestrator/workflows/executor/__init__.py
tests/orchestrator/workflows/executor/test_executor.py
tests/orchestrator/workflows/executor/test_process_executor.py
tests/orchestrator/workflows/executor/test_process_executor_concurrent_modifications.py
tests/orchestrator/workflows/executor/test_process_executor_extension.py
tests/orchestrator/workflows/executor/test_process_executor_tracked_changes.py
tests/resources/service-templates/tosca-simple-1.0/node-cellar/node-cellar.yaml