ubuntu-advantage enable-esm should ensure correct package requirements are met

Bug #1840091 reported by Chris Johnston on 2019-08-14
16
This bug affects 1 person
Affects Status Importance Assigned to Milestone
ubuntu-advantage-tools (Ubuntu)
Medium
Erlon R. Cruz
Trusty
High
Erlon R. Cruz
Xenial
Medium
Unassigned
Bionic
Medium
Unassigned
Eoan
Medium
Unassigned

Bug Description

[Impact]

To use ESM for 14.04 you must install 1.0.1ubuntu2.23 of apt apt-transport-https apt-utils libapt-inst1.5 libapt-pkg4.12

These should be checked and warn/error/install the correct packages when running enable-esm

[Test Case]

* Deploy trusty container with a "apt" package version lower than version: "1.0.1ubuntu2.23"
 ** lxc launch ubuntu:d57cf522816f <CONTAINER_NAME>
    For instance image iD "d57cf522816f" contains apt : 1.0.1ubuntu2.17
* lxc exec <CONTAINER_NAME> bash
* Install ubuntu-advantage-tools
* ubuntu-advantage enable-esm <token>
* sudo apt-get update
* sudo apt-get upgrade

Err https://esm.ubuntu.com/ubuntu/ trusty-security/main bash amd64 4.3-7ubuntu1.8+esm1
HttpError401
Err https://esm.ubuntu.com/ubuntu/ trusty-security/main bzip2 amd64 1.0.6-5ubuntu0.1~esm2
.......
E: Failed to fetch https://esm.ubuntu.com/ubuntu/pool/main/a/apport/apport_2.14.1-0ubuntu3.29+esm1_all.deb HttpError401
E: Failed to fetch https://esm.ubuntu.com/ubuntu/pool/main/g/glib2.0/libglib2.0-data_2.40.2-0ubuntu1.1+esm3_all.deb HttpError401
E: Failed to fetch https://esm.ubuntu.com/ubuntu/pool/main/p/python-urllib3/python-urllib3_1.7.1-1ubuntu4.1+esm1_all.deb HttpError401
E: Failed to fetch https://esm.ubuntu.com/ubuntu/pool/main/s/screen/screen_4.1.0~20120320gitdb59704-9ubuntu0.1~esm1_amd64.deb HttpError401
E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?

Expected behaviour:
Get:3 https://esm.ubuntu.com/ubuntu/ trusty-security/main bash amd64 4.3-7ubuntu1.8+esm1 [575 kB]
Get:6 https://esm.ubuntu.com/ubuntu/ trusty-security/main bzip2 amd64 1.0.6-5ubuntu0.1~esm2 [34.6 kB]
......

If user installs u-a-tools and do not upgrade apt, then complains are that it does not work all the time as expected (see above ^)

Would be better to add some Depends: (as describe by juliank) to avoid users updating the tool but keeping an older version of apt that may introduce esm upgrade problem/failure.

[Potential Regression]

* One situation that Andreas brought up that is worth mentioning here, is that apparently some customer may have intentionally disabled "trusty-updates". If it's the case, then one would need to enable "trusty-updates" back temporary in order to upgrade the "ubuntu-advantage-tools" package and it's Dependencies (apt derived binary packages)

* We simply instruct u-a-tools to update apt (and its derived binary pkg) to a more recent version to avoid problems.

* apt in Trusty is unlikely to change now. There may be other ESM uploads here and there in the future, but Trusty itself is frozen now.

[Other Info]

* Fix has been proposed and agreed by foundation team.

* rmadison:
 apt | 1.0.1ubuntu2 | trusty
 apt | 1.0.1ubuntu2.19 | trusty-security
 apt | 1.0.1ubuntu2.23 | trusty-updates

Chris Johnston (cjohnston) wrote :

I've seen this easily > a dozen times

Steve Langasek (vorlon) wrote :

I agree, this should be addressed with appropriate versioned dependencies from the package so that selective installation of packages from trusty-updates doesn't leave you with a broken package.

Changed in ubuntu-advantage-tools (Ubuntu):
importance: Undecided → High
status: New → Triaged
Julian Andres Klode (juliank) wrote :

Just add Depends for the version in updates pocket for

- apt
- apt-transport-https
- libapt-pkg4.12

that should be enough.

Having libapt-inst1.5 and apt-utils in there does not hurt; but it's also not strictly necessary.

Julian Andres Klode (juliank) wrote :

The version in trusty-updates being 1.0.1ubuntu2.23, so you want apt (>= 1.0.1ubuntu2.23), and so on

Eric Desrochers (slashd) on 2019-08-22
description: updated
Changed in ubuntu-advantage-tools (Ubuntu Trusty):
status: New → Confirmed
importance: Undecided → High
Changed in ubuntu-advantage-tools (Ubuntu):
status: Triaged → Won't Fix
description: updated
tags: added: sts
description: updated
Eric Desrochers (slashd) on 2019-08-22
description: updated
Changed in ubuntu-advantage-tools (Ubuntu Trusty):
assignee: nobody → Erlon R. Cruz (sombrafam)
status: Confirmed → In Progress
Eric Desrochers (slashd) on 2019-08-22
description: updated
description: updated
Eric Desrochers (slashd) on 2019-08-22
description: updated
Eric Desrochers (slashd) on 2019-08-22
description: updated
description: updated
Eric Desrochers (slashd) on 2019-08-26
description: updated
Eric Desrochers (slashd) wrote :

Thanks to Andreas for approving the MP and uploading it into trusty upload queue.

Robie Basak (racb) wrote :

FTR, Steve delegated this to the regular SRU team in #ubuntu-release earlier.

Eric Desrochers (slashd) wrote :

Might be a MUST to have it also in future release before their ESM period start. For that reason, I'm targeting the other LTS version.

Robie Basak (racb) wrote :

Disucssion in #ubuntu-release: we're waiving the usual requirement that this be fixed in future releases first as this is a special case. This comes with a big warning though: please steps to ensure that this doesn't accidentally regress when Xenial enters ESM.

Eric Desrochers (slashd) on 2019-08-28
Changed in ubuntu-advantage-tools (Ubuntu Eoan):
status: Won't Fix → In Progress
Robie Basak (racb) on 2019-08-28
Changed in ubuntu-advantage-tools (Ubuntu Trusty):
status: In Progress → Fix Committed
Eric Desrochers (slashd) on 2019-08-28
Changed in ubuntu-advantage-tools (Ubuntu Eoan):
assignee: nobody → Erlon R. Cruz (sombrafam)
Changed in ubuntu-advantage-tools (Ubuntu Bionic):
assignee: nobody → Erlon R. Cruz (sombrafam)

Hello Chris, or anyone else affected,

Accepted ubuntu-advantage-tools into trusty-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/ubuntu-advantage-tools/10ubuntu0.14.04.4 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 on 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-trusty to verification-done-trusty. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-trusty. 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!

tags: added: verification-needed verification-needed-trusty
Eric Desrochers (slashd) on 2019-08-28
Changed in ubuntu-advantage-tools (Ubuntu Xenial):
assignee: nobody → Erlon R. Cruz (sombrafam)
Changed in ubuntu-advantage-tools (Ubuntu Bionic):
status: New → In Progress
Changed in ubuntu-advantage-tools (Ubuntu Xenial):
status: New → In Progress
Changed in ubuntu-advantage-tools (Ubuntu Eoan):
importance: High → Low
Changed in ubuntu-advantage-tools (Ubuntu Bionic):
importance: Undecided → Medium
Changed in ubuntu-advantage-tools (Ubuntu Xenial):
importance: Undecided → Medium
Changed in ubuntu-advantage-tools (Ubuntu Eoan):
importance: Low → Medium
Eric Desrochers (slashd) wrote :

Base on the discussion with vorlon, I'll mark X/B/E as 'Won't Fix' for now.

[12:27:52] <vorlon> rbasak: there's a complete rewrite of the client that is going to be landed in trusty-updates, definitely before xenial goes ESM. It's been delayed for polish but is definitely happening
[12:28:07] <vorlon> because the ESM service implementation is changing and the old client will not work with ESM for xenial
[12:28:19] <vorlon> so I'm confident in this case :)

[12:31:15] <slashd>rbasak, vorlon, so it's safe to say that we can postpone the fix until the new client is released ? and re-evaluate by then ?
[12:31:24] <slashd>for x and late
[12:31:36] <vorlon> yes

Changed in ubuntu-advantage-tools (Ubuntu Bionic):
status: In Progress → Won't Fix
Changed in ubuntu-advantage-tools (Ubuntu Eoan):
status: In Progress → Won't Fix
Changed in ubuntu-advantage-tools (Ubuntu Xenial):
status: In Progress → Won't Fix
Changed in ubuntu-advantage-tools (Ubuntu Eoan):
assignee: Erlon R. Cruz (sombrafam) → nobody
Changed in ubuntu-advantage-tools (Ubuntu Bionic):
assignee: Erlon R. Cruz (sombrafam) → nobody
Changed in ubuntu-advantage-tools (Ubuntu Xenial):
assignee: Erlon R. Cruz (sombrafam) → nobody
Eric Desrochers (slashd) wrote :

[VERIFICATION TRUSTY]

# Launch an older lxc trusty image:
ii apt 1.0.1ubuntu2.17
ii apt-transport-https 1.0.1ubuntu2.17
ii apt-utils 1.0.1ubuntu2.17
ii libapt-inst1.5:amd64 1.0.1ubuntu2.17
ii libapt-pkg4.12:amd64 1.0.1ubuntu2.17

# Enable trusty-proposed
# Installed u-a-tools from trusty-proposed [10ubuntu0.14.04.4]
.....
The following extra packages will be installed:
  apt apt-transport-https apt-utils libapt-inst1.5 libapt-pkg4.12
Suggested packages:
  dpkg-dev apt-doc
The following NEW packages will be installed:
  ubuntu-advantage-tools
The following packages will be upgraded:
  apt apt-transport-https apt-utils libapt-inst1.5 libapt-pkg4.12
5 upgraded, 1 newly installed, 0 to remove and 162 not upgraded.
Need to get 1880 kB of archives.
After this operation, 196 kB of additional disk space will be used.
Get:1 http://archive.ubuntu.com/ubuntu/ trusty-updates/main libapt-pkg4.12 amd64 1.0.1ubuntu2.23 [647 kB]
Get:2 http://archive.ubuntu.com/ubuntu/ trusty-updates/main apt amd64 1.0.1ubuntu2.23 [962 kB]
Get:3 http://archive.ubuntu.com/ubuntu/ trusty-updates/main libapt-inst1.5 amd64 1.0.1ubuntu2.23 [58.7 kB]
Get:4 http://archive.ubuntu.com/ubuntu/ trusty-updates/main apt-utils amd64 1.0.1ubuntu2.23 [172 kB]
Get:5 http://archive.ubuntu.com/ubuntu/ trusty-updates/main apt-transport-https amd64 1.0.1ubuntu2.23 [25.7 kB]
Get:6 http://archive.ubuntu.com/ubuntu/ trusty-proposed/main ubuntu-advantage-tools all 10ubuntu0.14.04.4 [14.8 kB]
....

# Enable ESM with "ubuntu-advantage-tools enable-esm" cmd
$ apt get update
$ apt get upgrade

No errors observed like previous u-a-tools version.

Chris Johnston (cjohnston) wrote :

I've also tested and this works as it should.

tags: added: verification-done-trusty
removed: verification-needed-trusty
Łukasz Zemczak (sil2100) wrote :

Ok, as per earlier discussion on IRC, since realistically there are no real users of trusty-proposed and baking the package there for 7 days makes no sense, I will be releasing this early.

Launchpad Janitor (janitor) wrote :

This bug was fixed in the package ubuntu-advantage-tools - 10ubuntu0.14.04.4

---------------
ubuntu-advantage-tools (10ubuntu0.14.04.4) trusty; urgency=medium

  * d/control: Fix missing dependency to apt package (LP: #1840091)

 -- <email address hidden> (Erlon R. Cruz) Fri, 23 Aug 2019 10:12:57 -0300

Changed in ubuntu-advantage-tools (Ubuntu Trusty):
status: Fix Committed → Fix Released

The verification of the Stable Release Update for ubuntu-advantage-tools 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 regressions.

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

Other bug subscribers