<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div>Thank you for the excellent run-down of the CLI commands. I assume this will make its way into the developer documentation? I would like to know if you could point me to more information about the inner workings of granular deployment. Currently it's challenging to debug issues related to granular deployment. </div></blockquote><div><br></div><div>All tasks that are in scope of role are serialized right into deployment configuration that is consumed by astute. So it can be traced in the logs <br></div><div>(nailgun or astute) or in astute.yaml that is stored on node itself. Here is what it looks like [0].</div><div>Some other internals described in spec - <a href="https://review.openstack.org/#/c/113491/">https://review.openstack.org/#/c/113491/</a>.</div><div><br></div><div>For developer it makes sense to get familiar with networkx data structures [1], and then dive into debuging of [2].</div><div>But it is not an option for a day-to-day usage, and UX will be improved by graph visualizer [3].</div><div><br></div><div>One more option that can improve understanding is human-readable planner..</div><div>For example it can output smth like this:</div><div><br></div><div>>> fuel deployment plan --start hiera --end netconfig</div><div><br></div><div>   Manifest hiera.pp will be executed on nodes [1,2,3]</div><div>   Manifest netconfig will be executed on nodes [1,2]</div><div><br></div><div>But i am not sure is this thing really necessary, dependencies are trivial in comparison to puppet, and i hope it will take very little time to</div><div>understand how things are working :)</div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div></div><div>As an example there is a bug [0] where tasks appear to be run in the wrong order based on which combination of roles exist in the environment. However, it's not clear how to determine what decides which tasks to run and when (is it astute, fuel-library, etc.), where the data comes from. etc. </div></blockquote></div><div class="gmail_extra"><br></div><div class="gmail_extra">As for the bug - it may be a duplicate for <a href="https://launchpad.net/bugs/1417579">https://launchpad.net/bugs/1417579</a>, which was fixed by <a href="https://review.openstack.org/#/c/152511/">https://review.openstack.org/#/c/152511/</a></div><br>[0] <a href="http://paste.openstack.org/show/168298/">http://paste.openstack.org/show/168298/</a></div><div class="gmail_extra">[1] <a href="http://networkx.github.io/documentation/latest/tutorial/tutorial.html#directed-graphs">http://networkx.github.io/documentation/latest/tutorial/tutorial.html#directed-graphs</a></div><div class="gmail_extra">[2] <a href="https://github.com/stackforge/fuel-web/blob/master/nailgun/nailgun/orchestrator/deployment_graph.py#L29">https://github.com/stackforge/fuel-web/blob/master/nailgun/nailgun/orchestrator/deployment_graph.py#L29</a></div><div class="gmail_extra">[3] <a href="https://review.openstack.org/#/c/152434/">https://review.openstack.org/#/c/152434/</a></div></div>