How to deploy custom set of configuration files?
Intuitive way to implement that would be to create a custom
package containing selected configuration files, and install it as a
last package. However according to [Debian GNU/Linux FAQ], [section
11.7], it is not as simple. The wording of the answer to this question
is confusing, however:
11.7 *How does the package management system deal with
packages that contain configuration files for other
packages?*
Some users wish to create, for example, a new server by
installing a group of Debian packages and a locally
generated package consisting of configuration files. This
is not generally a good idea, because dpkg will not know
about those configuration files if they are in a different
package, and may write conflicting configurations when one
of the initial "group" of packages is upgraded.
Instead, create a local package that modifies the
configuration files of the "group" of Debian packages of
interest. Then dpkg and the rest of the package management
system will see that the files have been modified by the
local "sysadmin" and will not try to overwrite them when
those packages are upgraded.
I don’t see how scenarios from paragraphs one and two are
different. What is the difference between “package consisting of
configuration files” and “pacakage that modifies the configuration
files”?
I’m aware of chef, puppet, and other configuration managment programs,
but I thought for simple cases it is too much overhead.
[Debian GNU/Linux FAQ] https://www.debian.org/doc/manuals/debian-faq
[section 11.7]
https://www.debian.org/doc/manuals/debian-faq/ch-customizing.en.html#s-interconffiles
Reply to: