Thanks Renat for a clear design summary,
thanks Joshua for the questions,
+1 to "let's move TaskFlow vs Mistral" discussion to separate thread,
and my questions/comments on
https://wiki.openstack.org/wiki/Mistral/Blueprints/ActionsDesign below:
- Async actions: how do results of async action communicates back?
My understanding it it assumes that the remote system will call back to mistral
with action execution id, it's on the engine to call-back, and action needs to
let the engine know to expect call-back. Let's put the explanation here.
- is_sync() - consider using an attribute instead - @mistral.async
- can we think of a way to unify sync and async actions from engine's
standpoint? So that we don't special-case it in the engine? @ Joshua - does
something similar exists in TaskFlow already?
- def dry_run() - maybe name "test", let's stress that this method should
return a representative sample output.
- Input - need a facility to declare, validate and list input parameters. Like
VALID_KEYS=['url', 'parameters''] , def validate():
- class HTTPAction(object):
def __init__(self, url, params, method, headers, body):
Not happy about declaring parameters explicitly. How about using * args
**kvargs, or 'parameters' dictionary?
- DSL In-Place Declaration - I did minor edits in the section, please check.
DZ.
-
On Mar 12, 2014, at 6:54 PM, Joshua Harlow <[email protected]> wrote:
> So taskflow has tasks, which seems comparable to actions?
>
> I guess I should get tired of asking but why recreate the same stuff ;)
>
> The questions listed:
>
> - Does action need to have revert() method along with run() method?
> - How does action expose errors occurring during it's work?
>
> - In what form does action return a result?
>
>
> And more @ https://wiki.openstack.org/wiki/Mistral/Blueprints/ActionsDesign
>
> And quite a few others that haven't been mentioned (how does a action
> retry? How does a action report partial progress? What's the
> intertask/state persistence mechanism?) have been worked on by the
> taskflow team for a while now...
>
> https://github.com/openstack/taskflow/blob/master/taskflow/task.py#L31
> (and others...)
>
> Anyways, I know mistral is still POC/pilot/prototype... but seems like
> more duplicate worked that could just be avoided ;)
>
> -Josh
>
> -----Original Message-----
> From: Renat Akhmerov <[email protected]>
> Reply-To: "OpenStack Development Mailing List (not for usage questions)"
> <[email protected]>
> Date: Tuesday, March 11, 2014 at 11:32 PM
> To: "OpenStack Development Mailing List (not for usage questions)"
> <[email protected]>
> Subject: [openstack-dev] [Mistral] Actions design BP
>
>> Team,
>>
>> I started summarizing all the thoughts and ideas that we¹ve been
>> discussing for a while regarding actions. The main driver for this work
>> is that the system keeps evolving and we still don¹t have a comprehensive
>> understanding of that part. Additionally, we keep getting a lot of
>> requests and questions from our potential users which are related to
>> actions (Œwill they be extensible?¹, Œwill they have dry-run feature?¹,
>> Œwhat are the ways to configure and group them?¹ and so on and so forth).
>> So although we¹re still in a Pilot phase we need to start this work in
>> parallel. Even now lack of solid understanding of it creates a lot of
>> problems in pilot development.
>>
>> I created a BP at launchpad [0] which has a reference to detailed
>> specification [1]. It¹s still in progress but you could already leave
>> your early feedback so that I don¹t go in a wrong direction too far.
>>
>> The highest priority now is still finishing the pilot so we shouldn¹t
>> start implementing everything described in BP right now. However, some of
>> the things have to be adjusted asap (like Action interface and the main
>> implementation principles).
>>
>> [0]:
>> https://blueprints.launchpad.net/mistral/+spec/mistral-actions-design
>> [1]: https://wiki.openstack.org/wiki/Mistral/Blueprints/ActionsDesign
>>
>> Renat Akhmerov
>> @ Mirantis Inc.
>>
>>
>>
>>
>> _______________________________________________
>> OpenStack-dev mailing list
>> [email protected]
>> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
>
>
> _______________________________________________
> OpenStack-dev mailing list
> [email protected]
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
_______________________________________________
OpenStack-dev mailing list
[email protected]
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev