16:00:13 <rakhmerov> #startmeeting Mistral
16:00:14 <openstack> Meeting started Mon Mar 17 16:00:13 2014 UTC and is due to finish in 60 minutes.  The chair is rakhmerov. Information about MeetBot at http://wiki.debian.org/MeetBot.
16:00:15 <NikolayM> hi!
16:00:16 <openstack> Useful Commands: #action #agreed #help #info #idea #link #topic #startvote.
16:00:18 <openstack> The meeting name has been set to 'mistral'
16:00:25 <m4dcoder> o/
16:00:40 <tnurlygayanov> so, we can start our meeting
16:01:04 <tnurlygayanov> Today I will start this meeting and Renat will continue
16:01:19 <tnurlygayanov> we have the following agenda for today https://wiki.openstack.org/wiki/Meetings/MistralAgenda
16:01:52 <tnurlygayanov> and we can start from the your statuses and progress
16:02:03 <dzimine> yes :)
16:02:06 <enykeev> hey
16:03:13 <tnurlygayanov> enykeev, dzimine: hi! :)
16:03:38 <tnurlygayanov> ok, dzimine, how it is going? what about your status? )
16:05:02 <tnurlygayanov> on this week I have just review several commits...
16:05:16 <dzimine> on my side 1) Manas has posted repeater, mainly for discussion, to decide wether we want it in
16:05:39 <rakhmerov> sorry folks, I'll join in a few...
16:05:44 <dzimine> 2) we discussed alternatives to repeater for POC to keep POC representative
16:06:20 <tnurlygayanov> ok
16:06:24 <dzimine> and 3) catching up with TaskFlow integration questions
16:06:40 <enykeev> I spent the week by digging into taskflow. Also, did few reviews.
16:06:54 <dzimine> Renat can fill up with details.
16:07:21 <tnurlygayanov> so, and what about the taskflow?
16:08:19 <tnurlygayanov> we are ready to implement some initial integration with taskflow?
16:08:46 <dzimine> Lets ask Renat; we agreed that we need a prototype of integration to better understand it.
16:09:10 <tnurlygayanov> ok
16:09:25 <tnurlygayanov> NikolayM: what about your status?
16:10:41 <m4dcoder> dzimine: any idea what the architecture will be for the taskflow prototype?  should we start discussion of that somewhere?
16:11:05 <dzimine> I didn't put up any code last week, did the reviews, and looked at task flow code to understand it and to be able to reason about the prototype.
16:11:41 <NikolayM> we discussed task repeater with Renat and how to implement it better (and also technical details)
16:12:52 <m4dcoder> i'm still working on implementation of the local executor.  investigating how to pass the transport instance into the pecan app at the API layer.
16:13:45 <ryanpetrello> m4dcoder: talk to me about this (the pecan app issue)
16:13:49 <ryanpetrello> I'm glad to help
16:13:52 <tnurlygayanov> #info m4dcoder still working on implementation of the local executor.  investigating how to pass the transport instance into the pecan app at the API layer.
16:14:29 <tnurlygayanov> #info dzimine discussed alternatives to repeater for POC to keep POC representative and catching up with TaskFlow integration questions
16:14:47 <tnurlygayanov> #info enykeev spent the week by digging into taskflow. Also, did few reviews.
16:14:52 <NikolayM> Also I did some records about keystone token - find a way how to get it easier from trust and send it in headers to some Openstack service
16:15:46 <tnurlygayanov> #info NikolayM did some records about keystone token - find a way how to get it easier from trust and send it in headers to some Openstack service
16:16:41 <tnurlygayanov> Do we have plans for this week?
16:16:50 <dzimine> yes we need to start the discussion about the prototype. Can we have Renat and enykeev look at it for this week?
16:17:01 <tnurlygayanov> let's assign the action items for next week
16:17:30 <dzimine> From my chat with Renat and enykeev, enykeev will take a crack at task flow integration prototype.
16:17:48 <tnurlygayanov> I think Renat can do this.
16:17:55 <m4dcoder> ryanpetrello: let me give you the ML entry.  it's already explained there.  http://lists.openstack.org/pipermail/openstack-dev/2014-March/029707.html
16:18:43 <tnurlygayanov> ok, enykeev, are you plan to do this on this week?
16:19:05 <tnurlygayanov> can we assign this action item to you and Renat?
16:19:12 <enykeev> yep
16:20:03 <dzimine> we need to decide between checking in the repeater for POC vs alternating POC, I saw the thread but didn't catch up yet.
16:20:07 <dzimine> have we decided?
16:20:38 <tnurlygayanov> #action-item: rakhmerov and enykeev will start the discussion about the prototype
16:21:02 <tnurlygayanov> *Mistral on top of TaskFlow prototype
16:21:42 <tnurlygayanov> ok
16:22:00 <tnurlygayanov> we have next item in agenda
16:22:03 <dzimine> aha, Nicolay, looks like you proposed "“repeat” optional parameter". Let's do this?
16:22:13 <tnurlygayanov> Alternatives to std:repeater
16:24:00 <tnurlygayanov> NikolayM: can you please share the link on this commit?
16:24:31 <tnurlygayanov> do we have any alternatives to std:repeater? )
16:25:05 <NikolayM> not implemented yet
16:25:16 <tnurlygayanov> I know that we plan to change it, let's to discuss this feature.
16:25:17 <dzimine> the alternative is to make 'repeat' functionality part of any task.
16:27:00 <tnurlygayanov> hm and how it will work? task will be in progress while we do not finish repeat action?
16:27:10 <rakhmerov> guys, I apologize
16:27:18 <rakhmerov> I'm finally here
16:27:40 <dzimine> tasks:
16:27:40 <dzimine> task1:
16:27:41 <dzimine> action: ns.whatever
16:27:43 <dzimine> repeat:
16:27:44 <dzimine> retries: 5
16:27:46 <dzimine> delay: 3000
16:27:46 <tnurlygayanov> *happy*
16:27:47 <dzimine> break-on: $.my_data != null
16:27:49 <dzimine> on-success:
16:27:50 <dzimine> task2: $.my_data != null
16:27:50 <dzimine> on-error: task3
16:28:39 <tnurlygayanov> dzimine: let's share the link to paste.openstack.org or etherpad with examples :)
16:28:52 <NikolayM> Timur, in this approach task is responsible for repeating, not action
16:29:11 <tnurlygayanov> rakhmerov: we update the statuses and now discuss alternatives for releater
16:30:11 <rakhmerov> ok
16:30:15 <rakhmerov> yep
16:30:45 <rakhmerov> so my suggestion would be that we implement "repeat" property
16:31:03 <NikolayM> yes :)
16:31:12 <rakhmerov> other options look less attractive to me for a number of reasons
16:32:17 <rakhmerov> for example, there was an option to implement HTTP_POLL action that would itself keep sending HTTP requests to Nova, for example, and finish it work when ip is ready
16:32:37 <m4dcoder> how will this work with repeating a set of tasks instead of a single task?
16:32:50 <rakhmerov> after some thinking we came to conclusion that we'd better not have logic like this inside an action
16:33:06 <rakhmerov> sec
16:33:32 <rakhmerov> because in a more or less concurrent environment we'll quickly get executor starvation
16:33:58 <rakhmerov> de facto, executors will block for a long time and system go down
16:34:12 <rakhmerov> m4dcoder, answering your question...
16:35:18 <dzimine> m4dcoder: the right long term approach to it IMO is enabling enclosing workflows, and making repeater a special flow construct that 1) encloses multiple tasks and 2) has properties on how to repeat the enclosed flow.
16:35:20 <rakhmerov> if we have a task that can be repeated itself multiple times with a configured delay then we can build a simple subgraph consisting of several tasks related to this repeatable task
16:35:44 <rakhmerov> it'll be possible if we use conditional transitions and are able to define break-on condition
16:36:30 <rakhmerov> yes, I agree with dzimine
16:36:32 <m4dcoder> i like the idea of the enclosed workflow.
16:36:37 <rakhmerov> yep
16:36:54 <rakhmerov> btw, we still don't have a BP for this
16:36:58 <rakhmerov> my fault
16:38:26 <rakhmerov> #action (assignee?) create a BP that describes grouping tasks by workflows
16:38:35 <dzimine> the whole search for alternative came from hesitation of checkin in repeater as is, because if the enclosed flow is a long term direction, the current repeater is not on this path. Thus the simple alternative for POC is to make any task 'repeatable'.
16:39:53 <rakhmerov> yes
16:40:18 <rakhmerov> actually, just a note: I don't want Manas to feel like he's doing something useless :)
16:40:30 <rakhmerov> it's definitely giving us useful information
16:40:46 <rakhmerov> and what he's done I think will be useful if we agree on that "repeat" property
16:41:52 <dzimine> agree with rakhmerov: the 'repetition' code can be used, it's just a place where it is right now may not be … 'final'. ;)
16:42:25 <rakhmerov> tnurlygayanov, since you're, in fact, a driver today. Did you want to discuss anything specific according to the meeting plan?
16:42:57 <rakhmerov> is there anything specific left to discuss?
16:43:31 <rakhmerov> I have just one small question but pretty important for my work
16:43:34 <dzimine> the task flow prototype, we touched on it a bit
16:44:01 <m4dcoder> can you clarify current plan for POC and the status of the incubation?
16:45:19 <rakhmerov> ok, two major things that are left for PoC:repeater (in some form)
16:45:34 <rakhmerov> but I think we're already close with it
16:46:16 <rakhmerov> and Nikolay started doing some things in security (proper use of trusts) that is needed to work with a real OpenStack
16:46:46 <rakhmerov> and there's some work left on actions
16:46:52 <dzimine> Prototype of task flow integration: my proposal is at high level  (before we know better) - try to use it as library, use Mistarl as service on top, https://etherpad.openstack.org/p/mistral-taskflow-prototype
16:47:48 <dzimine> it's not "how", I tried to describe a scope of a prototype. As for "how", once enykeev gives it a crack, we'll know better.
16:48:15 <rakhmerov> yes, guys I would suggest we leave it for now since it's a big topic
16:48:23 <rakhmerov> we'll be keeping you posted
16:48:34 <rakhmerov> mostly Kirill will :))
16:48:47 <enykeev> i do xD
16:48:51 <rakhmerov> and not only posted but we'll be discussing that in an open manner
16:49:02 <rakhmerov> I have a question
16:49:19 <rakhmerov> last week I created a BP related to design of Actions
16:49:48 <rakhmerov> #info https://blueprints.launchpad.net/mistral/+spec/mistral-actions-design
16:50:20 <rakhmerov> Dmitri already gave his feedback and looks like we're mostly ok on this design
16:50:51 <rakhmerov> dzimine, I still need to make a couple of changes after our Friday's conversation, I remember that
16:51:02 <rakhmerov> but generally it looks ok to us
16:51:20 <rakhmerov> did you have a chance to look at it? Do you have any suggestions/comments on it?
16:51:29 <dzimine> it looks ok to me (I left comments on openstack-dev)
16:51:38 <rakhmerov> yes, thank you
16:51:53 <rakhmerov> If that looks ok, I'd like to crack it in PoC phase
16:51:58 <rakhmerov> partially
16:52:58 <rakhmerov> full implementation may take up to a couple of weeks but I feel like we already need to tackle some parts of it
16:53:15 <rakhmerov> can I start doing this tomorrow?
16:53:56 <rakhmerov> silence means yes? :))
16:54:09 <dzimine> np :)
16:54:25 <rakhmerov> or if you need some more time to look at it then it's fine
16:55:14 <rakhmerov> ok, then I'll start working on it tomorrow
16:55:33 <rakhmerov> anything else for today?
16:56:30 <rakhmerov> let's finish then
16:56:37 <rakhmerov> thanks for joining guys!
16:56:48 <rakhmerov> bye
16:56:55 <NikolayM> bye!
16:56:57 <m4dcoder> thanks! bye
16:57:05 <rakhmerov> #endmeeting