lxc-clone shouldn't be messing with dhclient.conf, causes conffile upgrade prompts on quantal

Bug #1021416 reported by Stéphane Graber on 2012-07-05
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
lxc (Ubuntu)
Undecided
Unassigned
Precise
Medium
Stéphane Graber
Quantal
Undecided
Unassigned

Bug Description

lxc-clone currently updates the host-name option of /etc/dhcp/dhclient.conf when copying a container.
This isn't needed as Ubuntu uses "<hostname>" or "gethostname()" as dynamic placeholders specifically to avoid updating that file.

In quantal, I replaced our "<hostname>" patch by the isc upstream "gethostname()" call in dhclient.conf, the upgrade worked fine for any regular system but would cause a conffile upgrade prompt on containers that were copied using lxc-clone.

I updated lxc-clone to only update host-name on systems that don't have "<hostname>" or "gethostname()" so we don't regress the behaviour for other distros but fix Debian and Ubuntu.

[rational]
There's no reason to currently updated /etc/dhcp/dhclient.conf on Ubuntu and Debian systems, this causes extra conffile prompts on upgrades and goes against our policy of using a clean Ubuntu system for our containers.

[test case]
1) lxc-create -t ubuntu -n p1
2) lxc-clone -o p1 -n p2
3) grep host-name /var/lib/lxc/p2/rootfs/etc/dhcp/dhclient.conf

3) shouldn't contain the container's hostname but "<hostname>" or "gethostname()" (depending on Ubuntu versions of isc-dhcp)

[regression potential]
I believe the grep call is correct but should it fail, the worst that can happen is some system not getting their /etc/dhcp/dhclient.conf mangled (on non-ubuntu/non-debian containers) or having ubuntu/debian containers getting their /etc/dhcp/dhclient.conf mangled in an identical way as we do pre-sru.

Changed in lxc (Ubuntu Quantal):
status: New → Fix Released
Changed in lxc (Ubuntu Precise):
importance: Undecided → Medium
assignee: nobody → Stéphane Graber (stgraber)
status: New → In Progress

Hello Stéphane, or anyone else affected,

Accepted lxc into precise-proposed. The package will build now and be available at http://launchpad.net/ubuntu/+source/lxc/0.7.5-3ubuntu60 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please change the bug tag from verification-needed to verification-done. If it does not, change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Changed in lxc (Ubuntu Precise):
status: In Progress → Fix Committed
tags: added: verification-needed
Stéphane Graber (stgraber) wrote :

Fix verified.

tags: added: verification-done
removed: verification-needed
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package lxc - 0.7.5-3ubuntu60

---------------
lxc (0.7.5-3ubuntu60) precise-proposed; urgency=low

  * Update lxc-ubuntu template to use "dpkg --add-architecture" in containers
    running dpkg >= 1.16.2. (LP: #1017862)
  * Patch lxc-clone to stop messing with dhclient.conf when it contains a
    placeholder (<hostname> or gethostname()). Fixes cases where dpkg will
    prompt for modified config file on upgrade. (LP: #1021416)
  * Allow write access to /proc/sys/kernel/shm* as these are namespaced (IPC).
    (LP: #1021411)
  * Allow fstype=fuse.*, for all containers. (LP: #1021421)
  * Rebase lxc-list on quantal's, properly shows FROZEN containers and prints
    error messages on stderr. (LP: #1021429)
  * Only run dh_apparmor against the lxc package. (LP: #1021428)
  * Depend on adduser as it's being used in postinst.
  * Fix lintian-overrides syntax.
 -- Stephane Graber <email address hidden> Thu, 05 Jul 2012 12:18:47 -0400

Changed in lxc (Ubuntu Precise):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers