<div dir="ltr">I'm pulling this conversation out of the gerrit review as I think it needs more discussion.<div><br></div><div><a href="https://review.openstack.org/#/c/53499/">https://review.openstack.org/#/c/53499/</a><br>
</div><div><br></div><div>I want to discuss the design decision to not use Jinja templates for the heat templates. My arguments for using Jinja for heat as well are:</div><div><br></div><div>1. We have to rewrite all the template loading logic. The current implementation is pretty simple but in order to make in production worthy it will need to handle many more edge cases as we use develop this feature. The main argument I have heard against using the existing ENV is that the path is hard coded. (This can and should be turned into a config flag)</div>
<div>2. We are already using Jinja templates for config files so it will be less confusing for a new person starting up. Why do these custom templates go here but these over here? Having one place to override defaults makes sense.</div>
<div>3. Looking at the current heat templates I could easily see some areas that could take advantage of being a real Jinja template, an admin could create a base template and extend that for each different service and just change a few values in each.</div>
<div>4. The default templates could be package with trove (using the Jijna PackageLoader) so the initial setup out of the box will work.</div><div><br></div><div>If we go this route it would also be a good time to discuss the origination of the templates. Currently the templates are just in </div>
<div><br></div><div>- trove/templates/{data_store}.config.template</div><div>- trove/templates/{data_store}.heat.template</div><div><br></div><div><br></div><div>I suggest that we move this into a folder structure like so:</div>
<div><br></div><div>- trove/template/{data_store}/config.template</div><div>- trove/template/{data_store}/heat.template</div><div>- trove/template/{data_store}/the_next.template</div><div> </div><div>Thanks!</div><div>Robert</div>
</div>