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

Thomas Goirand zigo at debian.org
Tue Oct 10 19:05:05 UTC 2017

On 10/09/2017 11:20 AM, Luigi Toscano wrote:
> On Saturday, 7 October 2017 12:30:54 CEST Thomas Goirand wrote:
>> Though people doing the packaging will suffer. Please don't throw the
>> baby over the wall, and let's fix the issue.
> This is an overstatement.

Pardon me if I'm wrong, but if you think that's an overstatement, then
you are admitting at least partly that I'm right, no? :)

I'm here, like everyone, only trying to find a solution that works for
everyone. I don't think pushing config files in the correct location is
*THAT* hard, is it?

With PBR, we had a *very* long standing issue with the module version of
projects, until Monty had the brilliant idea to propose a patch to read
from the environment variable OSLO_PACKAGE_VERSION. Once this was done,
I hard-wired this env var reading debian/changelog (using
dpkg-parsechangelog and a bit of sed magic). These days, it's just
included in openstack-pkg-tools's pkgos.make, which everyone (in both
Debian and Ubuntu) is using, and we don't even have to think about it.
I'd love if we could have a similar answer: something fully automated
that works for everyone.

> For example, sahara have been installing those files for a long time under 
> data_files, When the patch changed the location from /usr, I just changed the 
> way those files are copied:
> https://review.rdoproject.org/r/#/c/9722/
> (this does not happen for Ubuntu and Debian packaging right now, so there are 
> duplicated files).

The very point is: it is happening for all distros, meaning at least 4
workaround have to be wrriten, which is silly.

> This means that:
> 1) if the files are not installed through data_files, you have to manually 
> copy them using the packaging script ;
> 2) if the files are installed using data_files, you either move them in the 
> right position or delete that copy and still copy the proper files in the 
> right place

So 2) is more work, you'd need to rm -rf /usr/etc. Instead, we could
have absolutely everything completely automated, once and for all in all
distros, with files copied in the right place. In Debian, I'd write
something that would parse debian/control, and look if the foo-common
package exist, and then do the right thing (tm) so config files are
pushed to the correct location. But instead, right now, we have to deal
with the issue. Repeat this 3 dozen times, multiply by 4 distros, and
consider how much time loss we're facing, just because config files are
dropped in /usr/etc.

I'm still convince we can do better, toward perfect automation, and that
the problem isn't that hard to solve!

>> Let's get there then. In the mean while, don't break stuff.
> Nothing is broken, see above.

You'll have a hard time convincing me that config files written in
/usr/etc is not a broken feature. :)


Thomas Goirand (zigo)

More information about the OpenStack-dev mailing list