[Bug 1841225] Re: deb to snap transition uses an ubuntu release channel for the core18 snap
Launchpad Bug Tracker
1841225 at bugs.launchpad.net
Wed Oct 9 17:18:14 UTC 2019
This bug was fixed in the package ubuntu-release-upgrader - 1:19.04.16.7
---------------
ubuntu-release-upgrader (1:19.04.16.7) disco; urgency=medium
* DistUpgrade/DistUpgradeQuirks.py, DistUpgrade/DistUpgradeCache.py:
Modify DistUpgradeQuirks to calculate extra space needed for snaps that
need to be installed during upgrade (replacing old debs) and add that to
estimates done in checkFreeSpace(). (LP: #1783597)
* DistUpgrade/DistUpgradeCache.py: Make sure checkFreeSpace() still works for
update-manager with its own implementation of MyCache.
* DistUpgrade/DistUpgradeQuirks.py: Make sure snaps like core18 are not
refreshed/installed from the stable/ubuntu-VERSION branch but instead use
stable on upgrades. (LP: #1841225)
-- Ćukasz 'sil2100' Zemczak <lukasz.zemczak at ubuntu.com> Mon, 09 Sep
2019 15:41:12 +0200
** Changed in: ubuntu-release-upgrader (Ubuntu Disco)
Status: Fix Committed => Fix Released
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to ubuntu-release-upgrader in
Ubuntu.
https://bugs.launchpad.net/bugs/1841225
Title:
deb to snap transition uses an ubuntu release channel for the core18
snap
Status in ubuntu-release-upgrader package in Ubuntu:
Fix Released
Status in ubuntu-release-upgrader source package in Disco:
Fix Released
Status in ubuntu-release-upgrader source package in Eoan:
Fix Released
Bug description:
[Impact]
During distro upgrades, additional logic exists that replaces existing
debs with snaps and refreshes existing, installed snaps to the branch
of the series we're upgrading to (e.g. from stable/ubuntu-18.04 to
stable/ubuntu-19.04 etc.). However, the upgrader tries to apply the
logic for all the snaps it 'supports' in migration, even though snaps
like core18 do not have per-series branches (and will never have).
This causes non-fatal failures during installation/refresh of the
core18 snap on upgrades. Even though this does not cause a crash or
error, and in theory should should not cause any trouble as core18
*should* be pulled in as a dependency of the other snaps, it is
invalid behavior and might result in core18 not being present on the
end system. Upgrades should not perform commands that fail, if
possible.
[Test Case]
* Prepare a bionic machine
* Make sure ubuntu-desktop and snapd are installed on it
* Make sure core18 is *not* installed on the system - if there are any snaps installed, remove them
* Perform an upgrade to disco (with the --proposed option, to use disco-proposed)
* Reboot
* Make sure that the upgrade succeeded
* Check if core18 is installed, open /var/log/dist-upgrade/main.log and look for 'install of snap core18', make sure the command succeeded
[Regression Potential]
The changes have been constrained to the DistUpgradeQuirks place, only
to the snap handling pieces. So any possible regressions should be
visible in the snap replacement/refresh areas. Most probable ones
would be for the snaps not being installed/refreshed properly, or
using the wrong channels/branches.
[Original Description]
The release upgrader (DistUpgradeQuirks.py) tries to run the following
command when upgrading a system without snaps installed to Ubuntu
19.10 (eoan):
snap install --channel stable/ubuntu-19.10 core18
This channel does not exist and the release upgrade will fail e.g.:
2019-08-23 03:24:45,533 DEBUG quirks: running eoanPostUpgrade
2019-08-23 03:24:45,533 DEBUG running Quirks.eoanPostUpgrade
2019-08-23 03:24:51,547 DEBUG install of snap core18 failed
2019-08-23 03:25:51,348 DEBUG install of snap gnome-3-28-1804 succeeded
The quirk should be updated so that an ubuntu release channel is not
used when installing the core18 snap.
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/ubuntu-release-upgrader/+bug/1841225/+subscriptions
More information about the foundations-bugs
mailing list