libvirt-bin deletes /etc/dnsmasq.d/libvirt-bin on upgrade

Bug #1113821 reported by Tristan Schmelcher
14
This bug affects 2 people
Affects Status Importance Assigned to Milestone
libvirt (Ubuntu)
Fix Released
Medium
Serge Hallyn
Precise
Fix Released
Medium
Serge Hallyn
Quantal
Fix Released
Medium
Serge Hallyn
Raring
Fix Released
Medium
Serge Hallyn
lxc (Ubuntu)
Fix Released
Undecided
Unassigned
Precise
Fix Released
Undecided
Stéphane Graber
Quantal
Fix Released
Undecided
Stéphane Graber
Raring
Fix Released
Undecided
Unassigned
network-manager (Ubuntu)
Triaged
Undecided
Unassigned
Precise
Won't Fix
Undecided
Unassigned
Quantal
Won't Fix
Undecided
Unassigned
Raring
Won't Fix
Undecided
Unassigned

Bug Description

== Rationale ==
Back in quantal we introduced a new /etc/dnsmasq.d/<package>.

That file is meant to avoid conflicts between the various dnsmasq daemons and a main system wide dnsmasq (as provided by the dnsmasq package).

Unfortunately the design of the /etc/dnsmasq.d/<package> logic had one flaw.
To allow restoring the original dnsmasq behaviour as quickly as possible, we put the removal of that file in the remove target of the postrm, which means that if removing and then reinstalling the package, the file would vanish.

The new implementation uses a separate /etc/dnsmasq.d-available directory which contains standard conffiles (only removed on purge) and we now have postinst and postrm hooks to create/remove symlinks from /etc/dnsmasq.d-available/<package> to /etc/dnsmasq.d/<package>.

== Test case ==
1) Install current version from the archive
2) Remove it
3) Install it again
4) Confirm that the file in /etc/dnsmasq.d disappeared (that's the bug)
5) dpkg --purge <package>
6) Reinstall the current version from the archive
7) Update to the version from -proposed
8) Check that /etc/dnsmasq.d/<package> is now a symlink to /etc/dnsmasq.d-available/<package>. You may also want to check with some extra changes in the file prior to upgrade to confirm that it's being moved properly.

== Regression potential ==
It's not the simplest conffile handling code you can think of and it's possible we missed something, though in testing, the solution appears reliable, properly transitions any user made change and allows for the user to remove the conffile if they wish.
If something goes completely wrong, the worst we can end up with is a missing configuration (what we have currently anyway) or a configuration file where it was previously removed by the user.
It's worth noting however that most of our users don't have the system wide dnsmasq daemon installed and those who do, typically want that configuration file anyway (or they'll get quite a mess at boot time), so I consider the risk to be minimal here.

------ original report -------

libvirt-bin deletes its own NON-obsolete conffile /etc/dnsmasq.d/libvirt-bin in its postrm with "rm", but postrm runs on upgrade, so this causes libvirt-bin to delete its own conffile on upgrade. Hence, anything that relies on /etc/dnsmasq.d/libvirt-bin will break whenever upgrading libvirt-bin to a newer version.

libvirt-bin probably should use dpkg-maintscript-helper rm_conffile.

Repro steps:

1) Install latest version of libvirt-bin. Observe that /etc/dnsmasq.d/libvirt-bin is present.
2) Purge libvirt-bin and install an old version. Observe that /etc/dnsmasq.d/libvirt-bin is present.
3) Upgrade libvirt-bit to latest version. Observe that /etc/dnsmasq.d/libvirt-bin is gone.

Expected:

/etc/dnsmasq.d/libvirt-bin should be present on disk after each step, since it is shipped in both versions of the package.

Actual:

/etc/dnsmasq.d/libvirt-bin is gone after step 3.

$ sudo apt-get install libvirt-bin
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
  augeas-lenses bridge-utils cgroup-lite ebtables gawk libaugeas0 libnetcf1
  libsigsegv2 libvirt0 libxenstore3.0
Suggested packages:
  augeas-doc gawk-doc augeas-tools qemu-kvm qemu radvd lvm2
The following NEW packages will be installed:
  augeas-lenses bridge-utils cgroup-lite ebtables gawk libaugeas0 libnetcf1
  libsigsegv2 libvirt-bin libvirt0 libxenstore3.0
0 upgraded, 11 newly installed, 0 to remove and 65 not upgraded.
Need to get 5,061 kB of archives.
After this operation, 17.2 MB of additional disk space will be used.
Do you want to continue [Y/n]? Y
Get:1 http://us.archive.ubuntu.com/ubuntu/ quantal/main augeas-lenses all 0.10.0-1fakesync1ubuntu1 [179 kB]
Get:2 http://us.archive.ubuntu.com/ubuntu/ quantal/main bridge-utils amd64 1.5-4ubuntu2 [32.5 kB]
Get:3 http://us.archive.ubuntu.com/ubuntu/ quantal/main ebtables amd64 2.0.9.2-2ubuntu3 [90.3 kB]
Get:4 http://us.archive.ubuntu.com/ubuntu/ quantal/main libsigsegv2 amd64 2.9-4ubuntu3 [14.7 kB]
Get:5 http://us.archive.ubuntu.com/ubuntu/ quantal/main gawk amd64 1:4.0.1+dfsg-2 [778 kB]
Get:6 http://us.archive.ubuntu.com/ubuntu/ quantal/main libaugeas0 amd64 0.10.0-1fakesync1ubuntu1 [176 kB]
Get:7 http://us.archive.ubuntu.com/ubuntu/ quantal/main libnetcf1 amd64 0.2.0-1ubuntu1 [51.6 kB]
Get:8 http://us.archive.ubuntu.com/ubuntu/ quantal-updates/main libvirt0 amd64 0.9.13-0ubuntu12.2 [880 kB]
Get:9 http://us.archive.ubuntu.com/ubuntu/ quantal-updates/main libxenstore3.0 amd64 4.1.3-3ubuntu1.2 [19.8 kB]
Get:10 http://us.archive.ubuntu.com/ubuntu/ quantal/main cgroup-lite all 1.5 [3,944 B]
Get:11 http://us.archive.ubuntu.com/ubuntu/ quantal-updates/main libvirt-bin amd64 0.9.13-0ubuntu12.2 [2,836 kB]
Fetched 5,061 kB in 4s (1,029 kB/s)
Selecting previously unselected package augeas-lenses.
(Reading database ... 399268 files and directories currently installed.)
Unpacking augeas-lenses (from .../augeas-lenses_0.10.0-1fakesync1ubuntu1_all.deb) ...
Selecting previously unselected package bridge-utils.
Unpacking bridge-utils (from .../bridge-utils_1.5-4ubuntu2_amd64.deb) ...
Selecting previously unselected package ebtables.
Unpacking ebtables (from .../ebtables_2.0.9.2-2ubuntu3_amd64.deb) ...
Selecting previously unselected package libsigsegv2.
Unpacking libsigsegv2 (from .../libsigsegv2_2.9-4ubuntu3_amd64.deb) ...
Selecting previously unselected package gawk.
Unpacking gawk (from .../gawk_1%3a4.0.1+dfsg-2_amd64.deb) ...
Selecting previously unselected package libaugeas0.
Unpacking libaugeas0 (from .../libaugeas0_0.10.0-1fakesync1ubuntu1_amd64.deb) ...
Selecting previously unselected package libnetcf1.
Unpacking libnetcf1 (from .../libnetcf1_0.2.0-1ubuntu1_amd64.deb) ...
Selecting previously unselected package libvirt0.
Unpacking libvirt0 (from .../libvirt0_0.9.13-0ubuntu12.2_amd64.deb) ...
Selecting previously unselected package libxenstore3.0.
Unpacking libxenstore3.0 (from .../libxenstore3.0_4.1.3-3ubuntu1.2_amd64.deb) ...
Selecting previously unselected package cgroup-lite.
Unpacking cgroup-lite (from .../cgroup-lite_1.5_all.deb) ...
Selecting previously unselected package libvirt-bin.
Unpacking libvirt-bin (from .../libvirt-bin_0.9.13-0ubuntu12.2_amd64.deb) ...
Processing triggers for man-db ...
Processing triggers for ureadahead ...
ureadahead will be reprofiled on next reboot
Setting up augeas-lenses (0.10.0-1fakesync1ubuntu1) ...
Setting up bridge-utils (1.5-4ubuntu2) ...
Setting up ebtables (2.0.9.2-2ubuntu3) ...
Setting up libsigsegv2 (2.9-4ubuntu3) ...
Setting up gawk (1:4.0.1+dfsg-2) ...
Setting up libaugeas0 (0.10.0-1fakesync1ubuntu1) ...
Setting up libnetcf1 (0.2.0-1ubuntu1) ...
Setting up libvirt0 (0.9.13-0ubuntu12.2) ...
Setting up libxenstore3.0 (4.1.3-3ubuntu1.2) ...
Setting up cgroup-lite (1.5) ...
cgroup-lite start/running
Processing triggers for ureadahead ...
Setting up libvirt-bin (0.9.13-0ubuntu12.2) ...
Adding group `libvirtd' (GID 132) ...
Done.
libvirt-bin start/running, process 8181
Processing triggers for libc-bin ...
ldconfig deferred processing now taking place
Processing triggers for ureadahead ...
$ ls -al /etc/dnsmasq.d/libvirt-bin
-rw-r--r-- 1 root root 40 Jan 28 13:14 /etc/dnsmasq.d/libvirt-bin
$ sudo apt-get remove libvirt-bin
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
  augeas-lenses bridge-utils cgroup-lite ebtables libaugeas0 libnetcf1
  libvirt0 libxenstore3.0
Use 'apt-get autoremove' to remove them.
The following packages will be REMOVED:
  libvirt-bin
0 upgraded, 0 newly installed, 1 to remove and 65 not upgraded.
After this operation, 9,947 kB disk space will be freed.
Do you want to continue [Y/n]? Y
(Reading database ... 399856 files and directories currently installed.)
Removing libvirt-bin ...
libvirt-bin stop/waiting
Processing triggers for ureadahead ...
Processing triggers for man-db ...
$ ls -al /etc/dnsmasq.d/libvirt-bin
ls: cannot access /etc/dnsmasq.d/libvirt-bin: No such file or directory
$ sudo apt-get purge libvirt-bin
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
  augeas-lenses bridge-utils cgroup-lite ebtables libaugeas0 libnetcf1
  libvirt0 libxenstore3.0
Use 'apt-get autoremove' to remove them.
The following packages will be REMOVED:
  libvirt-bin*
0 upgraded, 0 newly installed, 1 to remove and 65 not upgraded.
After this operation, 0 B of additional disk space will be used.
Do you want to continue [Y/n]? Y
(Reading database ... 399765 files and directories currently installed.)
Removing libvirt-bin ...
Purging configuration files for libvirt-bin ...
/usr/sbin/delgroup: `libvirt-dnsmasq' still has `libvirtd' as their primary group!
dpkg: warning: while removing libvirt-bin, directory '/var/lib/libvirt/qemu' not empty so not removed
dpkg: warning: while removing libvirt-bin, directory '/etc/libvirt/qemu/networks/autostart' not empty so not removed
Processing triggers for ureadahead ...
$ sudo apt-get install libvirt-bin=0.9.13-0ubuntu12 libvirt0=0.9.13-0ubuntu12
Reading package lists... Done
Building dependency tree
Reading state information... Done
Suggested packages:
  qemu-kvm qemu radvd lvm2
The following NEW packages will be installed:
  libvirt-bin
The following packages will be DOWNGRADED:
  libvirt0
0 upgraded, 1 newly installed, 1 downgraded, 0 to remove and 65 not upgraded.
Need to get 3,719 kB of archives.
After this operation, 9,944 kB of additional disk space will be used.
Do you want to continue [Y/n]? Y
Get:1 http://us.archive.ubuntu.com/ubuntu/ quantal/main libvirt0 amd64 0.9.13-0ubuntu12 [880 kB]
Get:2 http://us.archive.ubuntu.com/ubuntu/ quantal/main libvirt-bin amd64 0.9.13-0ubuntu12 [2,839 kB]
Fetched 3,719 kB in 3s (974 kB/s)
dpkg: warning: downgrading libvirt0 from 0.9.13-0ubuntu12.2 to 0.9.13-0ubuntu12
(Reading database ... 399717 files and directories currently installed.)
Preparing to replace libvirt0 0.9.13-0ubuntu12.2 (using .../libvirt0_0.9.13-0ubuntu12_amd64.deb) ...
Unpacking replacement libvirt0 ...
Selecting previously unselected package libvirt-bin.
Unpacking libvirt-bin (from .../libvirt-bin_0.9.13-0ubuntu12_amd64.deb) ...
Processing triggers for man-db ...
Processing triggers for ureadahead ...
Setting up libvirt0 (0.9.13-0ubuntu12) ...
Setting up libvirt-bin (0.9.13-0ubuntu12) ...
libvirt-bin start/running, process 11373
Processing triggers for libc-bin ...
ldconfig deferred processing now taking place
Processing triggers for ureadahead ...
$ ls -al /etc/dnsmasq.d/libvirt-bin
-rw-r--r-- 1 root root 40 Oct 5 17:58 /etc/dnsmasq.d/libvirt-bin
$ sudo apt-get install libvirt-bin
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
  libvirt0
Suggested packages:
  qemu-kvm qemu radvd lvm2
The following packages will be upgraded:
  libvirt-bin libvirt0
2 upgraded, 0 newly installed, 0 to remove and 65 not upgraded.
Need to get 0 B/3,716 kB of archives.
After this operation, 3,072 B of additional disk space will be used.
Do you want to continue [Y/n]? Y
(Reading database ... 399857 files and directories currently installed.)
Preparing to replace libvirt-bin 0.9.13-0ubuntu12 (using .../libvirt-bin_0.9.13-0ubuntu12.2_amd64.deb) ...
libvirt-bin stop/waiting
Unpacking replacement libvirt-bin ...
Preparing to replace libvirt0 0.9.13-0ubuntu12 (using .../libvirt0_0.9.13-0ubuntu12.2_amd64.deb) ...
Unpacking replacement libvirt0 ...
Processing triggers for man-db ...
Processing triggers for ureadahead ...
Setting up libvirt0 (0.9.13-0ubuntu12.2) ...
Setting up libvirt-bin (0.9.13-0ubuntu12.2) ...
libvirt-bin start/running, process 13043
Processing triggers for libc-bin ...
ldconfig deferred processing now taking place
$ ls -al /etc/dnsmasq.d/libvirt-bin
ls: cannot access /etc/dnsmasq.d/libvirt-bin: No such file or directory
$ ubuntu-bug libvirt-bin

ProblemType: Bug
DistroRelease: Ubuntu 12.10
Package: libvirt-bin 0.9.13-0ubuntu12.2
ProcVersionSignature: Ubuntu 3.5.0-22.34-generic 3.5.7.2
Uname: Linux 3.5.0-22-generic x86_64
NonfreeKernelModules: nvidia
ApportVersion: 2.6.1-0ubuntu9
Architecture: amd64
Date: Sat Feb 2 14:14:06 2013
InstallationDate: Installed on 2011-04-30 (644 days ago)
InstallationMedia: Ubuntu 11.04 "Natty Narwhal" - Release amd64 (20110427.1)
KernLog:

MarkForUpload: True
SourcePackage: libvirt
UpgradeStatus: Upgraded to quantal on 2012-10-21 (104 days ago)
modified.conffile..etc.dnsmasq.d.libvirt.bin: [deleted]

Revision history for this message
Tristan Schmelcher (tschmelcher) wrote :
Revision history for this message
Tristan Schmelcher (tschmelcher) wrote :

Actually, dpkg-maintscript-helper rm_conffile is probably not the right solution since the conffile is not obsolete.

Perhaps the conffile should be moved elsewhere (/etc/libvirt ?) and the postinst/postrm should create/delete a symlink?

Changed in libvirt (Ubuntu):
status: New → Confirmed
importance: Undecided → Low
Changed in lxc (Ubuntu):
status: New → Confirmed
importance: Undecided → Low
Changed in lxc (Ubuntu):
status: Confirmed → Invalid
no longer affects: lxc (Ubuntu)
Revision history for this message
Stéphane Graber (stgraber) wrote :

Closing the lxc task as the lxc postinst doesn't suffer from this bug.

In lxc we have:
    remove)
        rm -f /etc/dnsmasq.d/lxc 2>/dev/null || true

        # Try to restart a potential system wide dnsmasq
        invoke-rc.d dnsmasq restart 2>/dev/null || true
    ;;

Whereas in libvirt we have:
    remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
        rm -f /etc/dnsmasq.d/libvirt-bin 2>/dev/null || true

        # Try to restart a potential system wide dnsmasq
        invoke-rc.d dnsmasq restart 2>/dev/null || true
    ;;

Note that in libvirt's case, the file will be removed in all cases, whereas in lxc (and network-manager) we only do the removal on remove.

Changed in libvirt (Ubuntu Raring):
importance: Low → Medium
Changed in libvirt (Ubuntu Quantal):
importance: Undecided → Medium
Changed in libvirt (Ubuntu Precise):
importance: Undecided → Medium
Changed in libvirt (Ubuntu Quantal):
status: New → Triaged
Changed in libvirt (Ubuntu Precise):
status: New → Triaged
Revision history for this message
Tristan Schmelcher (tschmelcher) wrote :

That's still a bug. If you remove and reinstall the package, the file won't come back.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package libvirt - 1.0.2-0ubuntu3

---------------
libvirt (1.0.2-0ubuntu3) raring; urgency=low

  * libvirt-bin.postrm: only remove /etc/dnsmasq.d/libvirt-bin during
    remove. (LP: #1113821)
 -- Serge Hallyn <email address hidden> Mon, 04 Feb 2013 10:35:47 -0600

Changed in libvirt (Ubuntu Raring):
status: Confirmed → Fix Released
Revision history for this message
Stéphane Graber (stgraber) wrote :

Confirmed the mentioned remove + install case, the same problem will apply to lxc, libvirt and network-manager as they're all sharing that piece of code.

Changed in libvirt (Ubuntu Raring):
status: Fix Released → Triaged
Changed in lxc (Ubuntu Precise):
status: New → Triaged
Changed in lxc (Ubuntu Quantal):
status: New → Triaged
Changed in lxc (Ubuntu Raring):
status: New → Triaged
Changed in network-manager (Ubuntu Precise):
status: New → Triaged
Changed in network-manager (Ubuntu Quantal):
status: New → Triaged
Changed in network-manager (Ubuntu Raring):
status: New → Triaged
Revision history for this message
Stéphane Graber (stgraber) wrote :

Alright, so I had a very quick look at the maintscript helper, and it won't help us in this case :(

So I think the best thing we can do is drop that rm from the postrm and move the restart of dnsmasq to the purge target.

This will be consistent with what any other similar package does, but has one drawback which is the thing I tried to avoid in the first place with the current implementation:
The file we ship in dnsmasq.d changes the way dnsmasq binds interfaces and I wanted to restore that behaviour without requiring a full purge of the rest of the config of the package. Sadly there's no easy way to do that without a lot of checksumming/preinst/postinst trickery which I'd rather avoid.

So the recommendation here is to just do that change in all 3 packages, SRU were applicable and tell people to use --purge if they want to restore dnsmasq's original behaviour.

Revision history for this message
Serge Hallyn (serge-hallyn) wrote : Re: [Bug 1113821] Re: libvirt-bin deletes /etc/dnsmasq.d/libvirt-bin on upgrade

> So the recommendation here is to just do that change in all 3 packages,
> SRU were applicable and tell people to use --purge if they want to
> restore dnsmasq's original behaviour.

What would be the best place to tell them this? In a comment in the
/etc/dnsmasq.d/lxc file itself?

Revision history for this message
Stéphane Graber (stgraber) wrote :

I'd mention it in the changelog when doing the change but we should indeed include a comment in the file for both lxc and libvirt.
I see that network-manager's own file already has a comment indicating what the file is for and that removing it or the package will revert that change in behaviour.

So standardizing the wording across all 3 packages seems the way to go.

Revision history for this message
Tristan Schmelcher (tschmelcher) wrote :

What about putting the conffile in a different directory, symlinking it in the postinst, and deleting the link in the perm?

Revision history for this message
Stéphane Graber (stgraber) wrote :

Symlinks would work, but we'd have to make sure that:
 - We still ship the main file as a conffile so the user can edit it or remove it.
 - We don't create the symlink if the source file doesn't exist.
 - dnsmasq follows symlinks (likely but still worth checking)

So yeah, that should work. Might be a bit confusing for some users, but from what I can think of now, should cover all the cases we care about.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package lxc - 0.8.0~rc1-4ubuntu49

---------------
lxc (0.8.0~rc1-4ubuntu49) raring; urgency=low

  * Don't directly write/remove /etc/dnsmasq.d/lxc as that's causing problems
    when removing and reinstalling lxc.
    Instead have dnsmasq ship /etc/dnsmasq.d-available/lxc and create/remove
    a symlink in /etc/dnsmasq.d/. (LP: #1113821)
 -- Stephane Graber <email address hidden> Wed, 06 Feb 2013 16:13:18 -0500

Changed in lxc (Ubuntu Raring):
status: Triaged → Fix Released
Changed in libvirt (Ubuntu Raring):
assignee: nobody → Serge Hallyn (serge-hallyn)
Changed in lxc (Ubuntu Precise):
assignee: nobody → Stéphane Graber (stgraber)
status: Triaged → In Progress
Changed in lxc (Ubuntu Quantal):
assignee: nobody → Stéphane Graber (stgraber)
description: updated
description: updated
Changed in lxc (Ubuntu Quantal):
status: Triaged → In Progress
Revision history for this message
Clint Byrum (clint-fewbar) wrote : Please test proposed package

Hello Tristan, or anyone else affected,

Accepted lxc into quantal-proposed. The package will build now and be available at http://launchpad.net/ubuntu/+source/lxc/0.8.0~rc1-4ubuntu39.12.10.2 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 add a comment to this bug, mentioning the version of the package you tested, and change the tag from verification-needed to verification-done. If it does not fix the bug for you, please add a comment stating that, and 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 Quantal):
status: In Progress → Fix Committed
tags: added: verification-needed
Changed in lxc (Ubuntu Precise):
status: In Progress → Fix Committed
Revision history for this message
Clint Byrum (clint-fewbar) wrote :

Hello Tristan, 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-3ubuntu67 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 add a comment to this bug, mentioning the version of the package you tested, and change the tag from verification-needed to verification-done. If it does not fix the bug for you, please add a comment stating that, and 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!

Revision history for this message
Stéphane Graber (stgraber) wrote :

Tested with lxc on precise and quantal.

tags: added: verification-done
removed: verification-needed
Changed in libvirt (Ubuntu Raring):
status: Triaged → In Progress
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package libvirt - 1.0.2-0ubuntu8

---------------
libvirt (1.0.2-0ubuntu8) raring; urgency=low

  * put libvirt-bin dnsmasq file into /etc/dnsmasq.d-available, and
    create a symlink in /etc/dnsmasq.d, to avoid problems when removing
    and re-installing libvirt-bin. (LP: #1113821)
 -- Serge Hallyn <email address hidden> Tue, 26 Feb 2013 12:09:37 -0600

Changed in libvirt (Ubuntu Raring):
status: In Progress → Fix Released
Revision history for this message
Colin Watson (cjwatson) wrote : Update Released

The verification of this Stable Release Update has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regresssions.

Revision history for this message
Launchpad Janitor (janitor) wrote :

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

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

  * Don't directly write/remove /etc/dnsmasq.d/lxc as that's causing problems
    when removing and reinstalling lxc.
    Instead have dnsmasq ship /etc/dnsmasq.d-available/lxc and create/remove
    a symlink in /etc/dnsmasq.d/. (LP: #1113821)
  * Bump debhelper dependency and add Pre-Depends on newer dpkg for above fix.
  * Allow the container to mount efivars on /sys/firmware/efi/efivars.
    efivars is automatically mounted by mountall on UEFI systems, failure to
    do so leads to a complete boot failure. (LP: #1117589)
  * 0221-make-nonflush-upgrades-robust: be more robust about out of date
    container caches. (LP: #942862)
  * 0207-ubuntu-cloud-fixes.patch: cleanups to lxc-ubuntu-cloud.in
    fix for quantal images that do not have user 'ubuntu' present
    (LP: #1045955)
  * 0301-debian-copy-config: Pass all the arguments to copy_configuration.
    (LP: #1111613)
 -- Stephane Graber <email address hidden> Thu, 07 Feb 2013 13:08:07 -0500

Changed in lxc (Ubuntu Precise):
status: Fix Committed → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package lxc - 0.8.0~rc1-4ubuntu39.12.10.2

---------------
lxc (0.8.0~rc1-4ubuntu39.12.10.2) quantal-proposed; urgency=low

  * Don't directly write/remove /etc/dnsmasq.d/lxc as that's causing problems
    when removing and reinstalling lxc.
    Instead have dnsmasq ship /etc/dnsmasq.d-available/lxc and create/remove
    a symlink in /etc/dnsmasq.d/. (LP: #1113821)
  * Allow the container to mount efivars on /sys/firmware/efi/efivars.
    efivars is automatically mounted by mountall on UEFI systems, failure to
    do so leads to a complete boot failure. (LP: #1117589)
 -- Stephane Graber <email address hidden> Thu, 07 Feb 2013 14:26:22 -0500

Changed in lxc (Ubuntu Quantal):
status: Fix Committed → Fix Released
Changed in libvirt (Ubuntu Quantal):
assignee: nobody → Serge Hallyn (serge-hallyn)
status: Triaged → In Progress
Changed in libvirt (Ubuntu Precise):
assignee: nobody → Serge Hallyn (serge-hallyn)
status: Triaged → In Progress
Revision history for this message
Chris Halse Rogers (raof) wrote :

I've rejected this upload from the precise-proposed queue in favour of the older libvirt SRU already in there. If you think this should be folded in, please feel free to fold it into a new upload and we can process them all at once.

Revision history for this message
Serge Hallyn (serge-hallyn) wrote : Re: [Bug 1113821] Re: libvirt-bin deletes /etc/dnsmasq.d/libvirt-bin on upgrade

Quoting Chris Halse Rogers (<email address hidden>):
> I've rejected this upload from the precise-proposed queue in favour of
> the older libvirt SRU already in there. If you think this should be
> folded in, please feel free to fold it into a new upload and we can
> process them all at once.

Thanks - I'd looked through rmadison but not in the queue. I'll wait
until these are verified.

Revision history for this message
Brian Murray (brian-murray) wrote : Please test proposed package

Hello Tristan, or anyone else affected,

Accepted libvirt into precise-proposed. The package will build now and be available at http://launchpad.net/ubuntu/+source/libvirt/0.9.8-2ubuntu17.9 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 add a comment to this bug, mentioning the version of the package you tested, and change the tag from verification-needed to verification-done. If it does not fix the bug for you, please add a comment stating that, and 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 libvirt (Ubuntu Precise):
status: In Progress → Fix Committed
tags: removed: verification-done
tags: added: verification-needed
Revision history for this message
Serge Hallyn (serge-hallyn) wrote :

The fix for libvirt is bad in both raring and precise (and in unapproved quantal), because the /etc/dnsmasq.d-available was being copied to debian/tmp but not in libvirt-bin.{dirs,install}.

Verification failed.

Changed in libvirt (Ubuntu Raring):
status: Fix Released → In Progress
Revision history for this message
Serge Hallyn (serge-hallyn) wrote :

FWIW I will push new packages for SRU for precise, quantal and (after release) raring SRU containing:

diff -Nru libvirt-0.9.8/debian/changelog libvirt-0.9.8/debian/changelog
--- libvirt-0.9.8/debian/changelog 2013-04-16 12:00:59.000000000 +0000
+++ libvirt-0.9.8/debian/changelog 2013-04-24 15:50:20.000000000 +0000
@@ -1,3 +1,9 @@
+libvirt (0.9.8-2ubuntu17.10) precise-proposed; urgency=low
+
+ * debian/libvirt-bin.{dirs,install}: install dnsmasq.d-available/libvirt-bin
+
+ -- Serge Hallyn <email address hidden> Wed, 24 Apr 2013 15:49:38 +0000
+
 libvirt (0.9.8-2ubuntu17.9) precise-proposed; urgency=low

   * put libvirt-bin dnsmasq file into /etc/dnsmasq.d-available, and
diff -Nru libvirt-0.9.8/debian/libvirt-bin.dirs libvirt-0.9.8/debian/libvirt-bin.dirs
--- libvirt-0.9.8/debian/libvirt-bin.dirs 2013-04-16 11:57:59.000000000 +0000
+++ libvirt-0.9.8/debian/libvirt-bin.dirs 2013-04-24 15:40:52.000000000 +0000
@@ -15,3 +15,4 @@
 /var/log/libvirt/uml
 /var/log/libvirt/lxc
 /etc/libvirt/hooks
+/etc/dnsmasq.d-available
diff -Nru libvirt-0.9.8/debian/libvirt-bin.install libvirt-0.9.8/debian/libvirt-bin.install
--- libvirt-0.9.8/debian/libvirt-bin.install 2013-04-16 11:58:12.000000000 +0000
+++ libvirt-0.9.8/debian/libvirt-bin.install 2013-04-24 15:40:12.000000000 +0000
@@ -13,3 +13,4 @@
 usr/share/libvirt/*
 usr/share/man/man8/*
 usr/share/apport/package-hooks/source_libvirt.py
+etc/dnsmasq.d-available/libvirt-bin

Changed in libvirt (Ubuntu Precise):
status: Fix Committed → In Progress
Revision history for this message
Serge Hallyn (serge-hallyn) wrote :

uploaded libvirt fix to precise through saucy.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package libvirt - 1.0.2-0ubuntu12

---------------
libvirt (1.0.2-0ubuntu12) saucy; urgency=low

  * debian/libvirt-bin.{dirs,install}: install dnsmasq.d-available/libvirt-bin
    (LP: #1113821)
 -- Serge Hallyn <email address hidden> Mon, 29 Apr 2013 07:38:07 -0500

Changed in libvirt (Ubuntu):
status: In Progress → Fix Released
Revision history for this message
Adam Conrad (adconrad) wrote :

Hello Tristan, or anyone else affected,

Accepted libvirt into raring-proposed. The package will build now and be available at http://launchpad.net/ubuntu/+source/libvirt/1.0.2-0ubuntu11.13.04.1 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 add a comment to this bug, mentioning the version of the package you tested, and change the tag from verification-needed to verification-done. If it does not fix the bug for you, please add a comment stating that, and 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 libvirt (Ubuntu Raring):
status: In Progress → Fix Committed
Revision history for this message
Serge Hallyn (serge-hallyn) wrote :

@Adam,

The raring-proposed version of libvirt-bin properly sets up /etc/dnsmasq.d/libvirt-bin, and remove/install does not cause the file to be dropped. (fix verified)

madbiologist (me-again)
tags: added: verification-done
removed: verification-needed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package libvirt - 1.0.2-0ubuntu11.13.04.1

---------------
libvirt (1.0.2-0ubuntu11.13.04.1) raring-proposed; urgency=low

  * debian/libvirt-bin.{dirs,install}: install dnsmasq.d-available/libvirt-bin
    (LP: #1113821)
 -- Serge Hallyn <email address hidden> Mon, 29 Apr 2013 07:38:07 -0500

Changed in libvirt (Ubuntu Raring):
status: Fix Committed → Fix Released
Revision history for this message
Brian Murray (brian-murray) wrote :

Hello Tristan, or anyone else affected,

Accepted libvirt into precise-proposed. The package will build now and be available at http://launchpad.net/ubuntu/+source/libvirt/0.9.8-2ubuntu17.10 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 add a comment to this bug, mentioning the version of the package you tested, and change the tag from verification-needed to verification-done. If it does not fix the bug for you, please add a comment stating that, and 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 libvirt (Ubuntu Precise):
status: In Progress → Fix Committed
tags: removed: verification-done
tags: added: verification-needed
Changed in libvirt (Ubuntu Quantal):
status: In Progress → Fix Committed
Revision history for this message
Brian Murray (brian-murray) wrote :

Hello Tristan, or anyone else affected,

Accepted libvirt into quantal-proposed. The package will build now and be available at http://launchpad.net/ubuntu/+source/libvirt/0.9.13-0ubuntu12.3 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 add a comment to this bug, mentioning the version of the package you tested, and change the tag from verification-needed to verification-done. If it does not fix the bug for you, please add a comment stating that, and 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!

Revision history for this message
Serge Hallyn (serge-hallyn) wrote :

Fix verified on precise.

Revision history for this message
Serge Hallyn (serge-hallyn) wrote :

Also verified on quantal.

tags: added: verification-done
removed: verification-needed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package libvirt - 0.9.8-2ubuntu17.10

---------------
libvirt (0.9.8-2ubuntu17.10) precise-proposed; urgency=low

  * debian/libvirt-bin.{dirs,install}: install dnsmasq.d-available/libvirt-bin
    (LP: #1113821)
 -- Serge Hallyn <email address hidden> Wed, 24 Apr 2013 15:49:38 +0000

Changed in libvirt (Ubuntu Precise):
status: Fix Committed → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package libvirt - 0.9.13-0ubuntu12.3

---------------
libvirt (0.9.13-0ubuntu12.3) quantal-proposed; urgency=low

  * put libvirt-bin dnsmasq file into /etc/dnsmasq.d-available, and
    create a symlink in /etc/dnsmasq.d, to avoid problems when removing
    and re-installing libvirt-bin. (LP: #1113821)
  * Add code to postinst to fix any double-migration of /etc/dnsmasq.
    (LP: #1157332)
  * debian/libvirt-bin.{dirs,install}: install dnsmasq.d-available/libvirt-bin
 -- Serge Hallyn <email address hidden> Tue, 16 Apr 2013 07:11:17 -0500

Changed in libvirt (Ubuntu Quantal):
status: Fix Committed → Fix Released
Revision history for this message
Rolf Leggewie (r0lf) wrote :

quantal has seen the end of its life and is no longer receiving any updates. Marking the quantal task for this ticket as "Won't Fix".

Changed in network-manager (Ubuntu Quantal):
status: Triaged → Won't Fix
Revision history for this message
Rolf Leggewie (r0lf) wrote :

raring has seen the end of its life and is no longer receiving any updates. Marking the raring task for this ticket as "Won't Fix".

Changed in network-manager (Ubuntu Raring):
status: Triaged → Won't Fix
Revision history for this message
Steve Langasek (vorlon) wrote :

The Precise Pangolin has reached end of life, so this bug will not be fixed for that release

Changed in network-manager (Ubuntu Precise):
status: Triaged → Won't Fix
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.