[openstack-dev] [packaging][all] Sample Config Files in setup.cfg

Thomas Goirand zigo at debian.org
Mon Oct 9 15:03:21 UTC 2017


On 10/06/2017 10:23 AM, James Page wrote:
> On Tue, 3 Oct 2017 at 18:15 Doug Hellmann <doug at doughellmann.com
> <mailto:doug at doughellmann.com>> wrote:
> 
>     Excerpts from Jesse Pretorius's message of 2017-10-03 15:57:17 +0000:
>     > On 10/3/17, 3:01 PM, "Doug Hellmann" <doug at doughellmann.com
>     <mailto:doug at doughellmann.com>> wrote:
>     >
>     > >> Given that this topic has gone through several cycles of
>     discussion and has never gone anywhere, does it perhaps merit
>     definition as a project interface so that we can define the problem
>     this is trying to solve and set a standard formally once and for all?
>     >
>     > >    Maybe a couple of the various packaging projects can agree
>     and just
>     > >    set a de facto rule (and document it). That worked out OK for us
>     > >    with the doc reorganization when we updated the docs.o.o site
>     > >    templates.
>     >
>     > I’m happy to facilitate that. Is there some sort of place where
>     such standards are recorded? Ie Where do I submit a review to and is
>     there an example to reference for the sort of information that
>     should be in it?
>     >
> 
>     The docs team put that info in the spec for the migration. Do we
>     have a packaging SIG yet? That seems like an ideal body to own a
>     standard like this long term. Short term, just getting some agreement
>     on the mailing list would be a good start.
> 
> 
> Bah - missed the start of this thread but here's my tuppence
> 
> 1) +1 for a consistent approach across projects - /usr/share/<module>
> sounds like a sensible location - avoiding any complexity with managing
> changes made by users in /etc/<project> for deploy from source
> use-cases, and allowing packagers to know where to expect
> reference/sample config files to appear during the package
> build-out/install process.

The /usr/share/<something> issue is, in Debian, it goes most of the time
in /usr/share/<someting>-common. For example for nova, it goes in:

/usr/share/nova-common/nova.conf

and then this file is copied in the postinst to /etc/nova. The reason is
we want /etc/nova to be accessible from the nova user only (ie: not
accessible system wide) because of security issues. And the only way to
do that, is to dynamically copy the file to /etc/nova after the nova
system user is created.

So yeah, you can push files in /usr/share/nova, but then we'll have to
actually *delete* them in the packaging, because it doesn't fit our use
case. So in fact, best would be if this could be overridden, for example
using an environment variable. Something like:

export OSLO_CONFIG_FILE_DEST=/usr/share/nova-common

This way, I wouldn't have to manually move/copy/delete/regenerate config
files by hand in debian/rules.

I hope this helps,
Cheers,

Thomas Goirand (zigo)



More information about the OpenStack-dev mailing list