improve UTC setting migration on upgrades

Bug #1572752 reported by Martin Pitt on 2016-04-20
20
This bug affects 3 people
Affects Status Importance Assigned to Milestone
sysvinit (Ubuntu)
High
Unassigned
Xenial
High
Steve Langasek

Bug Description

[SRU Justification]
On upgrade, some users who have selected a non-default setting for their clock handling in the installer will see prompts for a conffile they never edited by hand.

[Regression potential]
Because we are adding a pre-dependency to a package, there is risk of this causing upgrade failures. The upgrade path should be tested aggressively with different profiles from both 14.04 and 15.10 before publishing to -updates.

[Test case]
1. On a newly-installed 14.04 system, edit /etc/default/rcS to contain 'UTC=no' instead of 'UTC=yes'. Make no other changes to this file.
2. Enable -proposed in your apt sources.
3. Run do-release-upgrade or update-manager to upgrade to 16.04.
4. Confirm that the upgrade succeeds.
5. Confirm that you are not shown a conffile prompt for /etc/default/rcS on upgrade.
6. Confirm that /etc/adjtime has been created, with 'LOCAL' as the third line of the file.
7. Repeat steps 1-6 for a newly-installed 15.10 system.

slangasek | pitti: I see sysvinit Breaks: systemd (<< 228-5ubuntu3), but that doesn't enforce systemd 228-5ubuntu3 being configured before sysvinit, which means the conffile may already be migrated away before systemd postinst runs... I think the right way to do this is with initscripts Pre-Depends: systemd, and for initscripts' preinst script to handle any conffile cleaning so that users are spared conffile prompts on upgrade
pitti | slangasek: ah, good point; this needs to be tested thoroughly, pre-depends have some habit of causing trouble

See bug 1541532 and http://launchpadlibrarian.net/236311219/systemd_228-5ubuntu2_228-5ubuntu3.diff.gz and http://launchpadlibrarian.net/236367969/sysvinit_2.88dsf-59.3ubuntu1_2.88dsf-59.3ubuntu2.diff.gz

Martin Pitt (pitti) on 2016-04-20
Changed in systemd (Ubuntu Xenial):
assignee: nobody → Martin Pitt (pitti)
status: New → Triaged
description: updated
Changed in systemd (Ubuntu Xenial):
milestone: none → xenial-updates
affects: systemd (Ubuntu Xenial) → sysvinit (Ubuntu Xenial)
Changed in sysvinit (Ubuntu Xenial):
assignee: Martin Pitt (pitti) → nobody
Steve Langasek (vorlon) wrote :

I have a fixed package prepared locally and am testing it now.

affects: sysvinit (Ubuntu Xenial) → Ubuntu Xenial
Steve Langasek (vorlon) on 2016-04-21
description: updated
Martin Pitt (pitti) on 2016-04-21
affects: Ubuntu Xenial → sysvinit (Ubuntu Xenial)

Hello Martin, or anyone else affected,

Accepted sysvinit into xenial-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/sysvinit/2.88dsf-59.3ubuntu3 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 sysvinit (Ubuntu Xenial):
status: Triaged → Fix Committed
tags: added: verification-needed
Martin Pitt (pitti) wrote :

Regression report in bug 1573240

Launchpad Janitor (janitor) wrote :

This bug was fixed in the package sysvinit - 2.88dsf-59.3ubuntu3

---------------
sysvinit (2.88dsf-59.3ubuntu3) xenial; urgency=medium

  * debian/initscripts.preinst: revert any changes to UTC setting in
    /etc/default/rcS, so we can avoid unnecessary conffile prompts on upgrade.
  * Don't just Breaks: systemd (<< 228-5ubuntu3), but
    Pre-Depend: systemd (>= 228-5ubuntu3) so that the systemd postinst has a
    chance to migrate any UTC setting out of /etc/default/rcS before upgrade.
    LP: #1572752

 -- Steve Langasek <email address hidden> Wed, 20 Apr 2016 14:49:11 -0700

Changed in sysvinit (Ubuntu):
status: Fix Committed → Fix Released
Martin Pitt (pitti) on 2016-04-22
tags: added: verification-failed
removed: verification-needed
Adam Conrad (adconrad) wrote :

To expand on the verification-failed tag added above: This change breaks debootstrap and, thus, d-i and image builds.

Changed in sysvinit (Ubuntu):
milestone: xenial-updates → none
importance: Undecided → High
Changed in sysvinit (Ubuntu Xenial):
importance: Undecided → High
Martin Pitt (pitti) wrote :

This is only an issue for upgrades to 16.04, so this does not affect yakkety. Closing the yakkety task then. Xenial will need a followup upload, but this delta can be dropped entirely in Yakkety.

Changed in sysvinit (Ubuntu):
assignee: Steve Langasek (vorlon) → nobody
status: Fix Released → Invalid
Changed in sysvinit (Ubuntu Xenial):
status: Fix Committed → In Progress
Martin Pitt (pitti) wrote :

I removed 2.88dsf-59.3ubuntu3 from xenial-proposed now.

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers