[openstack-dev] [all] Deprecated options in sample configs?

Markus Zoeller mzoeller at linux.vnet.ibm.com
Fri May 20 15:31:45 UTC 2016


On 20.05.2016 16:51, Ben Nemec wrote:
> On 05/20/2016 04:26 AM, Markus Zoeller wrote:
>> On 05/19/2016 09:18 PM, Ben Nemec wrote:
>>> On 05/17/2016 07:27 PM, Matt Fischer wrote:
>>>>
>>>>      If config sample files are being used as a living document then that
>>>>      would be a reason to leave the deprecated options in there. In my
>>>>      experience as a cloud deployer I never once used them in that manner
>>>>      so it didn't occur to me that people might, hence my question to the
>>>>      list.
>>>>
>>>>      This may also indicate that people aren't checking release notes as
>>>>      we hope they are. A release note is where I would expect to find
>>>>      this information aggregated with all the other changes I should be
>>>>      aware of. That seems easier to me than aggregating that data myself
>>>>      by checking various sources.
>>>>
>>>>
>>>>
>>>> One way to think about this is that the config file has to be accurate
>>>> or the code won't work, but release notes can miss things with no
>>>> consequences other than perhaps an annoyed operator. So they are sources
>>>> of truth about the state options on of a release or branch.
>>>
>>> On this note, I had another thought about an alternative way to handle
>>> this.  What if we generated one sample file without deprecated opts, and
>>> another with them (either exclusively, or in addition to all the other
>>> opts)?  That way there's a deprecation-free version for new deployers
>>> and one for people who want to see all the current deprecations.
>>>
>>
>> I'm not sure if it is well known that the "configuration reference" 
>> manual provides a summary page of new, updated and deprecated config 
>> options at [1].
> 
> Ah, I thought I had heard something about that but I couldn't find it.
> I wonder if we could link it from
> http://docs.openstack.org/developer/nova/sample_config.html
> 

Sure, should be a simple patch to [1].

>> Also, the release notes have already a section to announce the 
>> deprecation of a config option and this should be the source of truth 
>> IMO. From Nova I can tell that it is part of the normal reviews to 
>> ensure that a reno file (with a good explanation) is part of the change 
>> when deprecating something (see a updated-per-commit version at [2]). 
>> Introducing yet another way of telling people what's deprecated would 
>> weaken the position of the release notes which I'd like to avoid.
> 
> The problem is that the ultimate source of truth is the code, and since
> the sample config is generated from the code it's the only method not
> subject to human error.  As I said earlier in the thread, I personally
> agree that this is release note information and would prefer to rely on
> the logged deprecation warning to address the human error case, but at
> the same time I can understand that some people are not okay with that
> so I'm trying to find an alternative that both cleans up the sample
> config and still leaves the deprecations somewhere for people to find.
> 
>>
>> References:
>> [1] 
>> http://docs.openstack.org/mitaka/config-reference/tables/conf-changes/nova.html
>> [2] 
>> http://docs.openstack.org/releasenotes/nova/unreleased.html#deprecation-notes
>>
>>>>
>>>>
>>>>
>>>>      Anyways, I have no strong cause for removing the deprecated options.
>>>>      I just wondered if it was a low hanging fruit and thought I would ask.
>>>>
>>>>
>>>> It's always good to have these kind of conversations, thanks for
>>>> starting it.

References:
[1]
https://github.com/openstack/nova/blob/master/doc/source/sample_config.rst

-- 
Regards, Markus Zoeller (markus_z)




More information about the OpenStack-dev mailing list