<html><body><p>Hey Doug, <br><br>    This definitely sounds like something to look into. Would you be interested in being a part of a panel at the upcoming summit in Austin to discuss this? <br><br>All the Best, <br><br>
<table border="0" cellspacing="0" cellpadding="0"><tr valign="top"><td width="433" valign="bottom"><b><font size="4" color="#888888" face="Arial">Kendall J. Nelson</font></b><br><font size="2" face="Arial">Software Engineer &</font><br><font size="2" face="Arial">OpenStack Contributor</font></td></tr></table>
<table border="0" cellspacing="0" cellpadding="0"><tr valign="top"><td width="433" colspan="2" valign="middle"><hr width="100%" size="2" align="left"></td></tr>
<tr valign="top"><td width="266"><b><font size="1" color="#466BB0" face="Arial">E-mail:</font></b><font size="1" color="#5F5F5F" face="Arial"> </font><a href="mailto:zahill@us.ibm.com" target="_blank"><u><font size="1" color="#5F5F5F" face="Arial">kjnelson@us.ibm.com</font></u></a><br><b><font size="1" color="#466BB0" face="Arial">Cell Phone:</font></b><font size="1" color="#5F5F5F" face="Arial"> (952) 215- 4025</font><b><font size="1" color="#466BB0" face="Arial"><br>IRC Nickname:</font></b><font size="1" color="#5F5F5F" face="Arial"> diablo_rojo</font></td><td width="167"><div align="right"><img src="cid:1__=8FBBF5A1DFFB74528f9e8a93df938690918c8FB@" width="55" height="20" alt="IBM"><font size="1" color="#5F5F5F" face="Arial"><br><br>3605 Hwy 52 N<br>Rochester, MN 55901-1407<br>United States</font></div></td></tr></table><br><br><img width="16" height="16" src="cid:2__=8FBBF5A1DFFB74528f9e8a93df938690918c8FB@" border="0" alt="Inactive hide details for Doug Hellmann ---01/06/2016 01:03:08 PM---Excerpts from Jay S. Bryant's message of 2016-01-05 13:55:3"><font color="#424282">Doug Hellmann ---01/06/2016 01:03:08 PM---Excerpts from Jay S. Bryant's message of 2016-01-05 13:55:30 -0600: > Ben,</font><br><br><font size="2" color="#5F5F5F">From:        </font><font size="2">Doug Hellmann <doug@doughellmann.com></font><br><font size="2" color="#5F5F5F">To:        </font><font size="2">openstack-dev <openstack-dev@lists.openstack.org></font><br><font size="2" color="#5F5F5F">Date:        </font><font size="2">01/06/2016 01:03 PM</font><br><font size="2" color="#5F5F5F">Subject:        </font><font size="2">Re: [openstack-dev] [all] Austin Summit Panel on Generation of        Sample Configuration Option Files</font><br><hr width="100%" size="2" align="left" noshade style="color:#8091A5; "><br><br><br><tt>Excerpts from Jay S. Bryant's message of 2016-01-05 13:55:30 -0600:<br>> Ben,<br>> <br>> Please see my in-line responses ...<br>> <br>> On 01/04/2016 05:43 PM, Ben Nemec wrote:<br>> > On 01/04/2016 03:50 PM, Kendall J Nelson wrote:<br>> >> Hello,<br>> >><br>> >><br>> >> In brainstorming ideas for talks at the upcoming summit, I thought about<br>> >> some of the things I had worked on for Cinder and what could still be<br>> >> improved. One of the things I have been looking into is the generation<br>> >> of sample configuration option files. Upon initial research it looks<br>> >> like none of the main projects are doing it the same way.<br>> > I'm not sure what you mean.  Nova, Neutron, Keystone, Glance, and Heat<br>> > (at least) are all using the oslo-config-generator tool for this.  There<br>> > might be some slight variation in how they call it, but they are using it.<br>> Yes, we know that they are all using oslo-config-generator but there is <br>> not consistency<br>> in how the information that oslo-config-generator needs to do its job is <br>> being created.<br>> Kendall is looking to better understand what we should be doing and try <br>> to bring<br>> greater consistency between the projects.<br>> <br>> > I only vaguely recall having discussions about this with Cinder, so I'd<br>> > be interested in a refresher around why Cinder didn't want to do it the<br>> > same way.  I kind of considered it a solved problem.<br>> So, the challenge Cinder has is the fact that there are many <br>> configuration options with all the<br>> different drivers.  We had proposed a static cinder/opts.py file with <br>> hacking checks to ensure<br>> that all new options were pulled into the file.  This was considered <br>> undesirable.  This lead to<br>> the current solution where we are working to find all the possible <br>> option lists to dynamically<br>> create the cinder/opts.py file.  Similar to what we used to do with the <br>> old config generator.<br><br>I proposed, I think, that each driver should have its own entry point,<br>cinder.foo, cinder.bar, etc. Each entry point refers to a single<br>function, which can be maintained inside the driver code by the driver<br>author. Each would then be registered in setup.cfg and listed in the<br>input file for the config generator. If you also ensure that all of the<br>options for a given driver are in their own section of the config file,<br>you'll have a nice neat sample with all of the options. If a deployer or<br>distributor wants to generate a file that only includes the driver in<br>use, that's possible by passing different inputs to the config<br>generator.<br><br>> <br>> For Nova, having a dynamic solution is less important as they don't have <br>> options changing<br>> as frequently.  It appears that Neutron was less concerned about the <br>> potentially dynamic nature<br>> of options in their drivers.<br>> <br>> > For reference:<br>> > Nova: </tt><tt><a href="https://github.com/openstack/nova/blob/master/tox.ini#L90">https://github.com/openstack/nova/blob/master/tox.ini#L90</a></tt><tt><br>> > Neutron: </tt><tt><a href="https://github.com/openstack/neutron/blob/master/tox.ini#L198">https://github.com/openstack/neutron/blob/master/tox.ini#L198</a></tt><tt><br>> > which calls<br>> > </tt><tt><a href="https://github.com/openstack/neutron/blob/master/tools/generate_config_file_samples.sh#L17">https://github.com/openstack/neutron/blob/master/tools/generate_config_file_samples.sh#L17</a></tt><tt><br>> > Keystone: </tt><tt><a href="https://github.com/openstack/keystone/blob/master/tox.ini#L148">https://github.com/openstack/keystone/blob/master/tox.ini#L148</a></tt><tt><br>> > Etc...<br>> ><br>> >> I thought it<br>> >> might be interesting to get a panel together to talk about how it is<br>> >> done for each project, why it is done that way for each project, and<br>> >> maybe discuss a more universal approach that could be implemented in<br>> >> oslo and used by all the projects. Please let me know if you have<br>> >> knowledge on your project’s method and are interested in being part of a<br>> >> panel.<br>> >><br>> >><br>> >> If you are interested in looking at Cinder’s approach, here is the patch<br>> >> I implemented to make the generation of the sample config file dynamic:<br>> >> </tt><tt><a href="https://review.openstack.org/#/c/219700/">https://review.openstack.org/#/c/219700/</a></tt><tt><br>> >><br>> >><br>> >> All the Best,<br>> >><br>> >> *Kendall J. Nelson*<br>> >> Software Engineer &<br>> >><br>> >> Openstack Cinder Contributor<br>> >> ------------------------------------------------------------------------<br>> >> *E-mail:*_kjnelson@us.ibm.com_ <</tt><tt><a href="mailto:zahill@us.ibm.com">mailto:zahill@us.ibm.com</a></tt><tt>><br>> >> *Cell Phone:*(952) 215- 4025*<br>> >> IRC Nickname:*diablo_rojo    <br>> >> IBM<br>> >><br>> >> 3605 Hwy 52 N<br>> >> Rochester, MN 55901-1407<br>> >> United States<br>> >><br>> >><br>> >><br>> >><br>> >><br>> >> __________________________________________________________________________<br>> >> OpenStack Development Mailing List (not for usage questions)<br>> >> Unsubscribe: OpenStack-dev-request@lists.openstack.org?subject:unsubscribe<br>> >> </tt><tt><a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a></tt><tt><br>> >><br>> ><br>> > __________________________________________________________________________<br>> > OpenStack Development Mailing List (not for usage questions)<br>> > Unsubscribe: OpenStack-dev-request@lists.openstack.org?subject:unsubscribe<br>> > </tt><tt><a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a></tt><tt><br>> <br><br>__________________________________________________________________________<br>OpenStack Development Mailing List (not for usage questions)<br>Unsubscribe: OpenStack-dev-request@lists.openstack.org?subject:unsubscribe<br></tt><tt><a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a></tt><tt><br></tt><br><BR>
</body></html>