summary |
shortlog | log |
commit |
commitdiff |
tree
first ⋅ prev ⋅ next
max-orlov [Mon, 8 May 2017 11:46:58 +0000 (14:46 +0300)]
ARIA-160 Tests fail spordically over parameter binding
max-orlov [Mon, 8 May 2017 12:25:37 +0000 (15:25 +0300)]
ARIA-165 Make node name suffix UUIDs become more readable
max-orlov [Mon, 8 May 2017 14:29:29 +0000 (17:29 +0300)]
ARIA-230 Dry execution doesn't log empty operations
max-orlov [Sun, 7 May 2017 13:12:56 +0000 (16:12 +0300)]
ARIA-214 Dry execution changes the state of non implemented operations
Ran Ziv [Sun, 7 May 2017 13:36:39 +0000 (16:36 +0300)]
ARIA-215 Refactor plugin-related code into PluginManager
Refactored plugin-related code from ProcessExecutor into PluginManager.
Additionally, renamed plugin_prefix to plugin_dir in PluginManager.
max-orlov [Wed, 3 May 2017 09:42:27 +0000 (12:42 +0300)]
ARIA-160 Operation toolbelt unit tests fail spordically
Inroduced a filesystem based data holder
Avia Efrat [Sun, 7 May 2017 08:42:58 +0000 (11:42 +0300)]
ARIA-156 Better handle exceptions in the process executor
Previously, if an exception was raised during the starting of a task,
the task's process was permanently blocked on receiving a message.
The reason was that the exception caused the 'listener thread' to
not send a response to the task's process, as the exception was not
handled inside the 'with' block of the listener thread.
The first change I introduced was to wrap the yielding of the message and
the response inside a try-except-finally block, so the exception will be
handled within the 'with' scope, and to ensure a response is sent to the
task's process.
The second change is to move the sending of the 'task started' message in
the task's process to a place where encountering an exception will be
handled via sending a 'task failed' message back to the listener thread.
Ran Ziv [Thu, 4 May 2017 14:07:50 +0000 (17:07 +0300)]
ARIA-209 Fix create-archive CLI command help
max-orlov [Sun, 30 Apr 2017 13:05:27 +0000 (16:05 +0300)]
ARIA-163 Update node state for empty tasks
Additional changes:
* removed `for_node` and `for_relationship` from the api OperationTask.
* api based OperationTask could also have an empty implementation.
* each core task wields its own executor.
* Reordered some of the helper functions for creating tasks.
* intoduced 2 new executors: StubTaskExecutor (for stub tasks) and EmptyOperationExecutor (for empty tasks)
Ran Ziv [Sun, 30 Apr 2017 12:40:57 +0000 (15:40 +0300)]
ARIA-161 Disable end2end tests on Windows
Ran Ziv [Sun, 30 Apr 2017 12:15:37 +0000 (15:15 +0300)]
ARIA-155 Clean models from unused fields
max-orlov [Thu, 27 Apr 2017 14:09:14 +0000 (17:09 +0300)]
ARIA-158 Restore support for relationship ordering
max-orlov [Thu, 20 Apr 2017 15:51:46 +0000 (18:51 +0300)]
ARIA-146 Support colorful execution logging
Ran Ziv [Thu, 27 Apr 2017 12:11:15 +0000 (15:11 +0300)]
ARIA-154 Create end-to-end test for the Nodecellar example
Ran Ziv [Wed, 26 Apr 2017 17:21:19 +0000 (20:21 +0300)]
ARIA-153 Write end-to-end tests for ARIA
Created infrastructure for end-to-end tests,
plus a test for the hello-world example.
Avia Efrat [Thu, 20 Apr 2017 10:23:32 +0000 (13:23 +0300)]
Improve execution cancelling
Unhandled execution status transitions resulting from cancelling an
execution via the CLI, that we indentified and tried to address:
1. TERMINATED -> CANCELLING
You cancel the execution, but by the time we try to set the status to
CANCELLING, the execution thread had already finished, and therefore,
in SUCCEEDED status.
2. FAILED -> CANCELLING
You cancel the execution, but by the time we try to set the status to
CANCELLING, the execution thread had already encountered an error,
and therefore, in FAILED state.
3. TERMINATED -> CANCELLED
Similar to #1, but with CANCELLED instead of CANCELLING.
4. FAILED -> CANCELLED
Similar to #1, but with CANCELLED instead of CANCELLING.
In all of the above cases (#1-#4), we skip updating the execution
status, and log that the execution already succeeded/failed before we
were able to cancel it.
5. CANCELLING -> STARTED
You cancel the execution while it is still in pending state. Meanwhile,
while the execution status was already set to CANCELLING, we try to set
the execution status
6. CANCELLED -> STARTED
Similar to #5, but after the status is set to CANCELLING, it also gets
set to CANCELLED before attempting to set it to STARTED.
In cases #5-#6, we skip updtating the execution status, and nothing
is logged.
Ran Ziv [Sun, 23 Apr 2017 12:39:57 +0000 (15:39 +0300)]
ARIA-150 Fixed simple hello-world example
The simple hello-world example had a missing host node,
which caused an error at service creation phase.
The example now uses custom types which do not require
the extra host node.
max-orlov [Wed, 19 Apr 2017 14:14:15 +0000 (17:14 +0300)]
ARIA-138-Make-logging-more-informative
Ran Ziv [Thu, 20 Apr 2017 12:00:30 +0000 (15:00 +0300)]
ARIA-145 deploying CLI config file at installation
max-orlov [Wed, 19 Apr 2017 18:31:08 +0000 (21:31 +0300)]
ARIA-142-defaults-missing-for-execution-plugin
Ran Ziv [Tue, 28 Mar 2017 09:17:46 +0000 (12:17 +0300)]
ARIA-48 Revamped ARIA CLI
This is a large commit which revolves mostly around creating the
new CLI, but is also tying ARIA's various components together
for real for the first time - allowing a complete run of the
"hello-world" example and more.
This commit introduces a few other important modules:
- aria/core.py - used for managing service-templates and services.
- aria/orchestator/workflow_runner.py - used for managing
a workflow execution on a service.
- aria/orchestrator/dry.py - a "dry executor", used for
dry-executing workflows and printing the tasks that would run.
Other fixes that were required for the successful usage of
ARIA end-to-end have also been introduced in this commit, but
there have been too many to list; Review the commit for more info.
Tal Liron [Fri, 24 Mar 2017 21:33:11 +0000 (16:33 -0500)]
ARIA-92 Automatic operation task configuration
Tal Liron [Tue, 11 Apr 2017 23:19:38 +0000 (18:19 -0500)]
ARIA-127 Make use of in-memory sqlite more robust
Tal Liron [Tue, 11 Apr 2017 20:26:43 +0000 (15:26 -0500)]
ARIA-128 Make test_engine more robust
Tal Liron [Fri, 31 Mar 2017 19:34:41 +0000 (14:34 -0500)]
ARIA-134 Parser populates service workflows
max-orlov [Tue, 4 Apr 2017 17:41:59 +0000 (20:41 +0300)]
ARIA-137-Support-for-predicate-based-queries-in-the-SQL-mapi
max-orlov [Tue, 4 Apr 2017 09:22:12 +0000 (12:22 +0300)]
ARIA-132-fixed-support-for-cascading-deletion
max-orlov [Sun, 2 Apr 2017 16:24:20 +0000 (19:24 +0300)]
ARIA-136-ctx-binary-doesnt-get-installed-via-pip-install
max-orlov [Sun, 2 Apr 2017 11:53:46 +0000 (14:53 +0300)]
ARIA-125-Filtering-returns-the-wrong-models
max-orlov [Thu, 30 Mar 2017 14:29:17 +0000 (17:29 +0300)]
ARIA-86-Create-a-basic-Hello-World-blueprint-example
max-orlov [Thu, 30 Mar 2017 10:56:36 +0000 (13:56 +0300)]
ARIA-135-Add-plugin-field-to-MockTask
Avia Efrat [Tue, 28 Mar 2017 09:51:42 +0000 (12:51 +0300)]
ARIA-133 Add status-related properties to the Execution, Task and Node models
We are adding these properties so it will be easier to filter those models
from storage according to their status, and to not make use of the their
`status` constants outside of the models themselves.
It should be noted, since we currently have the concept of `StubTasks`
(that are not part of the model), we had to implement the same logic for
them, although they don't direct access to the state constants of the
task model. We did this since they are treated as 'regular' model tasks
in some parts of the code.
max-orlov [Sun, 26 Mar 2017 11:13:47 +0000 (14:13 +0300)]
ARIA-132-Models-cascading-deletion-raises-constraint-errors
Additional fixes:
- The relationships are now defined on both sides. we no longer use backref, but back_populates.
max-orlov [Mon, 13 Mar 2017 14:35:10 +0000 (16:35 +0200)]
ARIA-120-Builtin-workflows-relationship-operations-execution-order
Avia Efrat [Wed, 22 Mar 2017 15:19:58 +0000 (17:19 +0200)]
ARIA-126 Add node states
1. The states are described in section 3.3.1 of the TOSCA spec.
2. The state is changed if a standard lifecycle operation runs of the
node, as described in sections 5.7.4.1, 5.7.4.4.1, and 5.7.4.4.2 of the TOSCA spec.
3. We did not address the 'error' state yet.
This state is defined as part of the possible node states in the model, but currently no execution path leads to setting a node's state to 'error'.
4. No validation of state transiontions.
For example, we do not validate if a node goes from 'created'
to 'started' without going through the 'configured' state in between.
Tal Liron [Wed, 22 Mar 2017 20:07:57 +0000 (15:07 -0500)]
ARIA-83 Support ARIA profile for TOSCA
max-orlov [Thu, 23 Mar 2017 10:48:44 +0000 (12:48 +0200)]
ARIA-131-Make-demand-for-networkx-more-strict
Avia Efrat [Thu, 9 Mar 2017 10:02:06 +0000 (12:02 +0200)]
ARIA-96 Improve our requirements handling
1. Currently, don't vendor any library.
2. Use pip-tools (specifically, pip-compile) to manage our dependencies
requirement files.
3. requirements.in:
The requirements.in will be read into `install_requires`, and includes
loose dependencies (as possible, and only direct dependencies), as is
common when installing using a setup.py file.
Since we haven't tested ARIA with many versions of our dependencies, our
dependencies are not very loose, but we are hoping to improve this as
our project matures.
Currently, when we provide an upper bound, it is either because of python
2.6 compatibility, or according to a semantic versioning (i.e. future
versions that could break the current API). Lower boundaries are
usually the lowest version that we tested with ARIA, or because version
before are lacking functionality we are using.
4. requirements.txt:
The requirements.txt is generated from requirements.in via pip-compile,
and includes fixed-version dependencies, including all transitive
dependencies, in order to provide an stable environment that ARIA is
ensured to work on.
max-orlov [Wed, 22 Mar 2017 17:19:53 +0000 (19:19 +0200)]
ARIA-130-Passing-inputs-from-the-workflow-to-the-operation-changes-the-inputs
Tal Liron [Fri, 17 Feb 2017 22:00:40 +0000 (16:00 -0600)]
ARIA-105 Integrate parser and orchestrator models
max-orlov [Mon, 6 Mar 2017 14:43:58 +0000 (16:43 +0200)]
ARIA-117-Log-model-should-have-an-Task-field
max-orlov [Sun, 5 Mar 2017 17:18:21 +0000 (19:18 +0200)]
ARIA-115-Log-model-should-have-an-Execution-field
max-orlov [Sun, 5 Mar 2017 16:31:36 +0000 (18:31 +0200)]
ARIA-116-Missing-type_hierarchy-in-relationship
mxmrlv [Mon, 13 Feb 2017 10:28:27 +0000 (12:28 +0200)]
ARIA-106-Create-sqla-logging-handler
Ran Ziv [Thu, 16 Feb 2017 14:38:51 +0000 (16:38 +0200)]
ARIA-108 Add API for deleting a resource for resource storage
Dan Kilman [Mon, 30 Jan 2017 14:49:00 +0000 (16:49 +0200)]
ARIA-79-concurrent-modifications
Tal Liron [Wed, 15 Feb 2017 18:48:56 +0000 (12:48 -0600)]
ARIA-88 Add TOSCA use-case examples
mxmrlv [Thu, 19 Jan 2017 09:39:36 +0000 (11:39 +0200)]
ARIA-44 Merge parser and storage model
Additional Changes:
* As a part of this task the name to address the model has been changes to the __tablename__ (or __mapiname__ if specified)
* All of the relationships return a query, so accessing the entire list should be done via all()
mxmrlv [Wed, 1 Feb 2017 14:16:01 +0000 (16:16 +0200)]
ARIA-42-Generic-ctx-serialization-mechanism
Tal Liron [Fri, 3 Feb 2017 19:32:46 +0000 (13:32 -0600)]
ARIA-99 Straightforward end-to-end tests for parser and built-in workflow
Ran Ziv [Thu, 2 Feb 2017 12:58:37 +0000 (14:58 +0200)]
ARIA-98 Updated two dependencies to support a range of versions
mxmrlv [Wed, 1 Feb 2017 17:26:27 +0000 (19:26 +0200)]
ARIA-95-pip-wheel-for-aria-ignores-dependencies
mxmrlv [Mon, 30 Jan 2017 16:24:15 +0000 (18:24 +0200)]
ARIA-81-Install-execution-plugin-ctx-entry-point-by-default
mxmrlv [Sun, 15 Jan 2017 17:07:29 +0000 (19:07 +0200)]
ARIA-66-Convert-custom-parser-fields-into-sqla-based-fields
Tal Liron [Wed, 25 Jan 2017 14:30:16 +0000 (16:30 +0200)]
ARIA-61 Initial version of CLI "workflow" command
Dan Kilman [Wed, 25 Jan 2017 14:22:41 +0000 (16:22 +0200)]
ARIA-36 plugin workdir
Tal Liron [Wed, 25 Jan 2017 13:25:33 +0000 (15:25 +0200)]
ARIA-73 Transfer parser's TOSCA model to storage
Tal Liron [Tue, 24 Jan 2017 15:57:50 +0000 (17:57 +0200)]
ARIA-12 New "Runner" class for simple workflow executions
Dan Kilman [Tue, 24 Jan 2017 14:58:10 +0000 (16:58 +0200)]
ARIA-68 Update runtime properties during operation
Tal Liron [Tue, 24 Jan 2017 07:52:36 +0000 (09:52 +0200)]
ARIA-72 Rework built-in workflows to match TOSCA normative lifecycle
Dan Kilman [Mon, 23 Jan 2017 14:55:41 +0000 (16:55 +0200)]
ARIA-74 Add process executor extension registration hooks
Dan Kilman [Sun, 22 Jan 2017 18:43:40 +0000 (20:43 +0200)]
ARIA-70 fix task plugin_name
Tal Liron [Sun, 22 Jan 2017 10:49:12 +0000 (12:49 +0200)]
ARIA-65 Add validation for relationship assignment type
Dan Kilman [Tue, 3 Jan 2017 15:00:46 +0000 (17:00 +0200)]
ARIA-46 Execution plugin
Dan Kilman [Sun, 15 Jan 2017 15:42:23 +0000 (17:42 +0200)]
ARIA-63 Implement attribute tracking for subprocesses
Tal Liron [Sun, 15 Jan 2017 14:45:35 +0000 (16:45 +0200)]
ARIA-60 Fix use of thread locals in parser context
Tal Liron [Sun, 8 Jan 2017 21:12:12 +0000 (23:12 +0200)]
ARIA-59 Inherit default interfaces in relationships
mxmrlv [Tue, 27 Dec 2016 14:42:57 +0000 (16:42 +0200)]
ARIA-52-Support-order-management-in-relationships
Dan Kilman [Thu, 5 Jan 2017 13:01:16 +0000 (15:01 +0200)]
ARIA-56 Implement ip property on node instance model
Dan Kilman [Thu, 5 Jan 2017 12:15:40 +0000 (14:15 +0200)]
ARIA-34 Adding get/download resource and render API (as jinja template)
Dan Kilman [Thu, 5 Jan 2017 11:00:01 +0000 (13:00 +0200)]
ARIA-55 Implement task retry and abort mechanism
mxmrlv [Thu, 5 Jan 2017 09:30:30 +0000 (11:30 +0200)]
ARIA-58-Storage-model-to_dict-creates-symbolic-links
As part of this commits, ARIA will use the builtin MutableDict and List
mxmrlv [Thu, 5 Jan 2017 09:32:08 +0000 (11:32 +0200)]
ARIA-57-Custom executions state transition support
As part of this commit, a new valid transition was added between cancelling
and force cancelling
Ran Ziv [Tue, 3 Jan 2017 12:41:01 +0000 (14:41 +0200)]
ARIA-53 Add badges to README file
mxmrlv [Sun, 11 Dec 2016 22:50:09 +0000 (00:50 +0200)]
ARIA-39-Genericize-storage-models
Dan Kilman [Mon, 19 Dec 2016 15:05:54 +0000 (17:05 +0200)]
ARIA-41 Provide (initial) means for serializing an operation context object
Dan Kilman [Sun, 27 Nov 2016 14:31:29 +0000 (16:31 +0200)]
ARIA-26 Implement operation plugin mechanism
Dan Kilman [Mon, 5 Dec 2016 13:28:29 +0000 (15:28 +0200)]
ARIA-31 Add registry mechanism for extensions
mxmrlv [Sun, 27 Nov 2016 11:20:46 +0000 (13:20 +0200)]
ARIA-30 SQL based storage implementation
Dan Kilman [Wed, 30 Nov 2016 12:13:06 +0000 (14:13 +0200)]
ARIA-28 Integrate with appveyor
Dan Kilman [Thu, 17 Nov 2016 10:43:49 +0000 (12:43 +0200)]
ARIA-23 Add initial CSAR support
nirb [Sun, 27 Nov 2016 12:52:59 +0000 (14:52 +0200)]
ARIA-27 Verify tosca version string
Tal Liron [Thu, 17 Nov 2016 21:05:27 +0000 (15:05 -0600)]
ARIA-24 Add Sphinx documentation
Tal Liron [Wed, 16 Nov 2016 22:05:39 +0000 (16:05 -0600)]
ARIA-22 Add CLI commands for parser
Dan Kilman [Wed, 16 Nov 2016 15:16:12 +0000 (17:16 +0200)]
ARIA-21 Move general code from parser.utils to top level utils
mxmrlv [Tue, 15 Nov 2016 17:55:00 +0000 (19:55 +0200)]
ARIA-21 reorder repository sturcutre
Additional changes:
- some importing issues in the parser
Tal Liron [Wed, 9 Nov 2016 14:34:52 +0000 (16:34 +0200)]
ARIA-18 Migrate DSL parser and TOSCA extension code
Additional changes:
- Added several rules to pylint configuration.
mxmrlv [Thu, 27 Oct 2016 17:39:09 +0000 (20:39 +0300)]
ARIATOSCA-9-API-for-operation-context
An API for operation context. users can now use operation context
in their operations.
Additional changes:
- Inroduced the toolbelt for the operation. providing with useful function working within the operation.
- Added a mechanism which simplifies the use of user based Tasks. Using the node_instance/relationship_instance.
- Added raising exceptions when trying to access a non existing resource on the storage.
Dan Kilman [Mon, 14 Nov 2016 11:24:13 +0000 (13:24 +0200)]
ARIA-20 Add support for ignoring task failures
Dan Kilman [Mon, 14 Nov 2016 08:44:22 +0000 (10:44 +0200)]
ARIA-17 Change task max-retries to max-attempts
Dan Kilman [Wed, 9 Nov 2016 14:37:43 +0000 (16:37 +0200)]
ARIA-11 Add cancel workflow execution support
This commit also adds an API to supply custom field validation
functions in the storage mechanism.
Dan Kilman [Tue, 8 Nov 2016 09:03:08 +0000 (11:03 +0200)]
ARIA-10 Implement task retries mechanism
Ran Ziv [Fri, 21 Oct 2016 10:21:25 +0000 (13:21 +0300)]
ARIA-3 Create an api for building workflows
ARIA-4 Create an API for the task graph
ARIA-5 Adapt workflow API uses to modified API
An API for creating workflows. Users can build graphs of tasks and
set depenedencies in between tasks to execute them in a specific
order.
Additional changes:
- Remodeling for engine and user tasks.
- Remodeling for Operation into Task in the storage.
- Mminimal reorganization of a few test modules, so they are now
using the same file system hierarchy as the modules which they test.
Dan Kilman [Thu, 3 Nov 2016 13:18:52 +0000 (15:18 +0200)]
ARIA-15 fix tox.ini
Dan Kilman [Tue, 1 Nov 2016 14:42:34 +0000 (16:42 +0200)]
ARIA-14 Implement initial engine tests
Dan Kilman [Sun, 30 Oct 2016 15:21:36 +0000 (17:21 +0200)]
ARIA-7 Initial celery based executor implementation
This commit also includes code re-org. Executors now live under
their own package.
Ran Ziv [Tue, 25 Oct 2016 14:47:35 +0000 (17:47 +0300)]
ARIA-6 Add tox.ini and .travis files for CI
The files actually existed but were out of date.
Both are now up to date. Tox will take care of installing both
code requirements and tests requirements before running the tests.
Additional changes:
- several setup.py changes (set version to 0.1.0; updated email)
- minor changes to tests' requirements (removed tox, froze mock)
- fixed typo in "test_base_model_members" unit test
- modified networkx dependency version to 1.9 (for py2.6 support)
- added missing license header to requirements.txt files
Dan Kilman [Thu, 13 Oct 2016 09:35:17 +0000 (12:35 +0300)]
ARIA-2 Move initial ARIA workflow code into Apache repo