<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div>1. as I mentioned above, we should have an interface, and if interface doesn't</div><div>    provide required information, you will have to fix it in two places,</div><div>    in Nailgun and in external-serializers, instead of a single place i.e. in Nailgun,</div><div>    another thing if astute.yaml is a bad interface and we should provide another</div><div>    versioned interface, or add more data into deployment serializer.</div></blockquote><div>But why to add another interface when there is one already (rest api)? And plugin developer</div><div>may query whatever he want (detailed information about volumes, interfaces, master node settings).</div><div>It is most full source of information in fuel and it is already needs to be protected from incompatible changes.</div><div><br></div><div>If our API will be not enough for general use - ofcourse we will need to fix it, but i dont quite understand what do</div><div>you mean by - fix it in two places. API provides general information that can be consumed by serializers (or any other service/human actually),</div><div>and if there is some issues with that information - API should be fixed. Serializers expects that information in specific format and makes</div><div>additional transformation or computation based on that info.</div><div><br></div><div>What is your opinion about serializing additional information in plugins code? How it can be done, without exposing db schema?</div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div>2. it can be handled in python or any other code (which can be wrapped into tasks),</div><div>    why should we implement here another entity (a.k.a external serializers)?</div></blockquote></div>Yep, i guess this is true, i thought that we may not want to deliver credentials to the target nodes, and only token that can be used</div><div class="gmail_extra">for limited time, but...</div></div>