On 01/30/2017 05:03 PM, Vivek Goyal wrote: > On Mon, Jan 30, 2017 at 05:00:34PM -0500, Lokesh Mandvekar wrote: >> Hi, >> >> I'm looking at the per-product packaging doc at >> https://fedoraproject.org/wiki/Packaging:Per-Product_Configuration >> and I see that variants for all products are installed at package install time, with >> the ghost file pointing to the appropriate product variant. >> >> Just wondering if there's a reason for installing all variants and/or if it's >> worth considering installation of just the particular variant appropriate for >> the system at install time? > > We are looking at installing per-product configuration for > docker-storage-setup. Now we are ending up with many configuration > files. > > /etc/sysconfig/docker-storage-setup-default > /etc/sysconfig/docker-storage-setup-server > /etc/sysconfig/docker-storage-setup-workstation > /etc/sysconfig/docker-storage-setup-atomic > /etc/sysconfig/docker-storage-setup-cloud > > This really looks ugly. So question is can we just install the default > and config file specific to that product and ignore rest? > The reason for this is because there are situations where it is impossible to know what variant is in use until the %posttrans scripts have fired. (This is because on initial system installation, the variant is selected when the fedora-release-$EDITION package %post has been run). All file installation happens well before the %post and %posttrans operations are run, and therefore there isn't any way to determine which file belongs on the system. I *do* recommend that you consider moving the original, versioned config files into a subdirectory somewhere and only include the `docker-storage-setup` symlink in the actual end-user location. The reason for using symlinks rather than copies here was originally to support the possibility of converting between editions (such as promoting Fedora Cloud to a Fedora Server Edition) and having the configuration automatically swapped for you, but that never got implemented. Given that this is never going to happen (we decided that changing the config implicitly is a bad idea), I should update the policy to recommend using copies rather than symlinks and keeping the variant configs in /usr/share instead of in the /etc hierarchy. So in this specific case, I'd recommend that you install: /usr/share/docker-storage-setup/docker-storage-setup-default /usr/share/docker-storage-setup/docker-storage-setup-server /usr/share/docker-storage-setup/docker-storage-setup-workstation /usr/share/docker-storage-setup/docker-storage-setup-atomic /usr/share/docker-storage-setup/docker-storage-setup-cloud And then copy the appropriate one from there to /etc/sysconfig/docker-storage-setup in %posttrans. I'll also note that you only need individual config files *if they differ*. For example, if the "atomic" and "cloud" configs are identical, it's okay to skip the duplication. Ditto if "default" and "server" should be the same, etc.
Attachment:
signature.asc
Description: OpenPGP digital signature
_______________________________________________ devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx