<div dir="ltr">Simon, you should use the deployment_tasks.yaml interface (which will likely eventually move to '*/tasks.yaml' (to mimic library) This uses the same task system as granular deploy. you can set task ordering between known tasks and roles names, in the case that they are not registered they will simply be ignored.<div><br><div>The result will be that the engine will parse out the precise location for tasks to run in the graph (you can run outside of the post-deployment with them). In most cases, you will not need to specify precise ordering between the plugins. I know there is the odd case that two components need to modify the same parts, there are a couple of ways we can work this out, but it ultimately will come down to a case-by case until we solidify the config-db workflow </div></div></div><br><div class="gmail_quote"><div dir="ltr">On Wed, Jan 27, 2016 at 5:45 AM Simon Pasquier <<a href="mailto:spasquier@mirantis.com">spasquier@mirantis.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div><div>Hi,<br><br></div><div>I see that tasks.yaml is going to be deprecated in the future MOS versions [1]. I've got one question regarding the ordering of tasks between different plugins.<br></div><div>With tasks.yaml, it was possible to coordinate the execution of tasks between plugins without prior knowledge of which plugins were installed [2].<br></div><div>For example, lets say we have 2 plugins: A and B. The plugins may or may not be installed in the same environment and the tasks execution should be:<br></div><div>1. Run task X for plugin A (if installed).<br></div><div>2. Run task Y for plugin B (if installed).<br></div><div>3. Run task Z for plugin A (if installed).<br></div><div><br></div><div>Right now, we can set task priorities like:<br><br></div><div># tasks.yaml for plugin A<br></div>- role: ['*']<br>  stage: post_deployment/1000<br>  type: puppet<br>  parameters:<br>    puppet_manifest: puppet/manifests/task_X.pp<br>    puppet_modules: puppet/modules<br><br>- role: ['*']<br>  stage: post_deployment/3000<br>  type: puppet<br>  parameters:<br>    puppet_manifest: puppet/manifests/task_Z.pp<br>    puppet_modules: puppet/modules<br><br></div><div># tasks.yaml for plugin B<br></div>- role: ['*']<br><div>  stage: post_deployment/2000<br>  type: puppet<br>  parameters:<br>    puppet_manifest: puppet/manifests/task_Y.pp<br>    puppet_modules: puppet/modules<br><br><div>How would it be handled without tasks.yaml?<br></div><br></div><div>Regards,<br></div><div>Simon<br></div><div><br>[1] <a href="https://review.openstack.org/#/c/271417/" target="_blank">https://review.openstack.org/#/c/271417/</a><br>[2] <a href="https://wiki.openstack.org/wiki/Fuel/Plugins#Plugins_deployment_order" target="_blank">https://wiki.openstack.org/wiki/Fuel/Plugins#Plugins_deployment_order</a><br></div></div></div>
__________________________________________________________________________<br>
OpenStack Development Mailing List (not for usage questions)<br>
Unsubscribe: <a href="http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe" rel="noreferrer" target="_blank">OpenStack-dev-request@lists.openstack.org?subject:unsubscribe</a><br>
<a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" rel="noreferrer" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br>
</blockquote></div><div dir="ltr">-- <br></div><div dir="ltr"><p dir="ltr">--</p><p dir="ltr"><span style="font-size:13.1999998092651px">Andrew Woodward</span></p><p dir="ltr"><span style="font-size:13.1999998092651px">Mirantis</span></p><p dir="ltr"><span style="font-size:13.1999998092651px">Fuel Community Ambassador</span></p><p dir="ltr"><span style="font-size:13.1999998092651px">Ceph Community</span></p>
</div>