<div dir="ltr"><div><span><span style="font-size:15px;font-family:Arial;color:rgb(0,0,0);background-color:transparent;vertical-align:baseline;white-space:pre-wrap">Hi!</span></span></div><div><span><span style="font-size:15px;font-family:Arial;color:rgb(0,0,0);background-color:transparent;vertical-align:baseline;white-space:pre-wrap"><br>
</span></span></div><div><span><span style="background-color:transparent;vertical-align:baseline"><font color="#000000" face="Arial"><span style="font-size:15px;white-space:pre-wrap">I just forgot to ask about the best way for discussion: w</span></font></span></span><span style="background-color:transparent;color:rgb(0,0,0);font-family:Arial;font-size:15px;white-space:pre-wrap">hat will it be? We have an IRC channel #murano at FreeNode, so you can find someone from our team here. The best way probably will be a Google hangout or Webex meeting for a live discussion and document sharing.</span></div>
</div><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Oct 9, 2013 at 12:44 AM, Timur Sufiev <span dir="ltr"><<a href="mailto:tsufiev@mirantis.com" target="_blank">tsufiev@mirantis.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><span><p dir="ltr" style="line-height:1.15;margin-top:0pt;margin-bottom:0pt"><span style="vertical-align:baseline;font-size:15px;white-space:pre-wrap;background-color:transparent;font-family:Arial">Hello!</span></p>

<p dir="ltr" style="line-height:1.15;margin-top:0pt;margin-bottom:0pt"><span style="vertical-align:baseline;font-size:15px;white-space:pre-wrap;background-color:transparent;font-family:Arial"><br></span></p>
<p dir="ltr" style="line-height:1.15;margin-top:0pt;margin-bottom:0pt"><span style="vertical-align:baseline;font-variant:normal;font-style:normal;font-size:15px;white-space:pre-wrap;background-color:transparent;text-decoration:none;font-family:Arial;font-weight:normal">I am an engineer from Murano team. Murano is an OpenStack project built around Windows components deployment. Currently we (Murano team) are working on improving Murano architecture to fit better in OpenStack ecosystem and reuse more functionality from the other projects. As part of that we’ve realized that we need task execution workflow. We see a lot of value in Convection proposal for what we need as well as OpenStack users in general. </span></p>

<p dir="ltr" style="line-height:1.15;margin-top:0pt;margin-bottom:0pt"><span style="vertical-align:baseline;font-size:15px;white-space:pre-wrap;background-color:transparent;font-family:Arial"><b style="font-weight:normal"><br>

<span style="vertical-align:baseline;font-variant:normal;font-style:normal;font-size:15px;white-space:pre-wrap;background-color:transparent;text-decoration:none;font-family:Arial;font-weight:normal"></span></b></span></p>

<p dir="ltr" style="line-height:1.15;margin-top:0pt;margin-bottom:0pt"><span style="vertical-align:baseline;font-variant:normal;font-style:normal;font-size:15px;white-space:pre-wrap;background-color:transparent;text-decoration:none;font-family:Arial;font-weight:normal">We have some ideas around possible design approach as well as bits and pieces that we can potentially reuse from the existing codebase. We would like to start contributing to Convection and get it moving forward. As the first step it would be good to start a discussion with you on how to unify our vision and start the development.</span></p>

<p dir="ltr" style="line-height:1.15;margin-top:0pt;margin-bottom:0pt"><span style="vertical-align:baseline;font-size:15px;white-space:pre-wrap;background-color:transparent;font-family:Arial"><b style="font-weight:normal"><br>

<span style="vertical-align:baseline;font-variant:normal;font-style:normal;font-size:15px;white-space:pre-wrap;background-color:transparent;text-decoration:none;font-family:Arial;font-weight:normal"></span></b></span></p>

<p dir="ltr" style="line-height:1.15;margin-top:0pt;margin-bottom:0pt"><span style="vertical-align:baseline;font-variant:normal;font-style:normal;font-size:15px;white-space:pre-wrap;background-color:transparent;text-decoration:none;font-family:Arial;font-weight:normal">Here are some of the areas that we would like to discuss:</span></p>

<ul style="margin-top:0pt;margin-bottom:0pt"><li dir="ltr" style="vertical-align:baseline;list-style-type:disc;font-variant:normal;font-style:normal;font-size:15px;background-color:transparent;text-decoration:none;font-family:Arial;font-weight:normal">

<p dir="ltr" style="line-height:1.15;margin-top:0pt;margin-bottom:0pt"><span style="vertical-align:baseline;font-variant:normal;font-style:normal;font-size:15px;white-space:pre-wrap;background-color:transparent;text-decoration:none;font-family:Arial;font-weight:bold">Workflow definition proposal.</span><span style="vertical-align:baseline;font-variant:normal;font-style:normal;font-size:15px;white-space:pre-wrap;background-color:transparent;text-decoration:none;font-family:Arial;font-weight:normal"> We propose YAML as a task workflow definition format. Each node in the workflow has state, dependencies and an action associated with it. Action is defined as a generic instruction to call some other component using a specific transport (e.g. RabbitMQ). Dependency means “in order to execute this task it is required that some other tasks be in a certain state”.</span></p>

</li><li dir="ltr" style="vertical-align:baseline;list-style-type:disc;font-variant:normal;font-style:normal;font-size:15px;background-color:transparent;text-decoration:none;font-family:Arial;font-weight:normal">
<p dir="ltr" style="line-height:1.15;margin-top:0pt;margin-bottom:0pt"><span style="vertical-align:baseline;font-variant:normal;font-style:normal;font-size:15px;white-space:pre-wrap;background-color:transparent;text-decoration:none;font-family:Arial;font-weight:bold">Workflow definitions API proposal</span><span style="vertical-align:baseline;font-variant:normal;font-style:normal;font-size:15px;white-space:pre-wrap;background-color:transparent;text-decoration:none;font-family:Arial;font-weight:normal">. We are discussing and prototyping an API for uploading workflow definitions, modifying them, adding the sources triggering new tasks to be scheduled for execution and so forth. We propose to adapt this API to Convection needs and possible rewrite and extend it.</span></p>

</li><li dir="ltr" style="vertical-align:baseline;list-style-type:disc;font-variant:normal;font-style:normal;font-size:15px;background-color:transparent;text-decoration:none;font-family:Arial;font-weight:normal">
<p dir="ltr" style="line-height:1.15;margin-top:0pt;margin-bottom:0pt"><span style="vertical-align:baseline;font-variant:normal;font-style:normal;font-size:15px;white-space:pre-wrap;background-color:transparent;text-decoration:none;font-family:Arial;font-weight:bold">Task dependencies resolution engine proposal</span><span style="vertical-align:baseline;font-variant:normal;font-style:normal;font-size:15px;white-space:pre-wrap;background-color:transparent;text-decoration:none;font-family:Arial;font-weight:normal">. We already have a generic engine which processes workflows. It is essentially a parallel multithreaded state machine. We propose to use this engine as a basis for Convection and extend it by adding external event sources like timers and Ceilometer alarms.</span></p>
<span class="HOEnZb"><font color="#888888">
</font></span></li></ul><span class="HOEnZb"><font color="#888888"><p dir="ltr" style="line-height:1.15;margin-top:0pt;margin-bottom:0pt"><span style="vertical-align:baseline;font-size:15px;white-space:pre-wrap;background-color:transparent;font-family:Arial"><br>

</span></p></font></span></span><span class="HOEnZb"><font color="#888888">-- <br><div dir="ltr">Timur Sufiev</div>
</font></span></div>
</blockquote></div><br><br clear="all"><div><br></div>-- <br><div dir="ltr">Timur Sufiev</div>
</div>