Don't provide transitional package for python3-google-compute-engine, add Breaks: in google-guest-agent instead

Bug #1905986 reported by Balint Reczey on 2020-11-27
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
gce-compute-image-packages (Ubuntu)
Undecided
Unassigned
Groovy
Undecided
Unassigned
google-guest-agent (Ubuntu)
Undecided
Unassigned
Groovy
Undecided
Unassigned

Bug Description

[Impact]

 * gce-compute-image-packages has been split to multiple source packages and google-guest-agent (written in Go) replaced the services originally written in Python. The upgrade to gce-compute-image-packages compatible with google-guest-agent replaced the Python modules (python3-google-compute-engine) with an empty transitional package. The removal of the modules could break local software relying on those modules.
 * The fix is not providing the empty python3-google-compute-engine transitional package, but adding Breaks: to google-guest-agent to force the removal of it. Since removals are not performed automatically by apt-get upgrade (not unattended-upgrades) the administrator needs to approve removal.

[Test Case]

 * Set up a system with the unfixed version of the packages, including python3-google-compute-engine installed.
 * Upgrade to the new set of packages:
   apt-get upgrade
 * Observe that the gce-compute-image-packages is kept back
 * Upgrade gce-compute-image-package manually:
   apt install gce-compute-image-package
 * This should succeed, removing python3-google-compute-engine

[Where problems could occur]

 * The packages may become uninstallable upon upgrade or dist-upgrade. Testing was performed to avoid such regressions.

 * Since the aim of this fix is preventing accidental upgrades should a security update of the affected packages be released the fix will prevent automatic application of this updated. In such case the the transitional package can be reintroduced and the Breaks: can be converted to a versioned Breaks: on the non-transitional package versions.

Balint Reczey (rbalint) on 2020-11-27
description: updated
Balint Reczey (rbalint) on 2020-11-27
description: updated
Liam Hopkins (liamh-google) wrote :

I've never heard of the 'empty python3-google-compute-engine transitional package'; for upstream packaging, we use "Conflicts: python3-google-compute-engine" and this will cause the top level package (called google-compute-engine upstream, I think called gce-compute-image-packages in Ubuntu) to be skipped in upgrades, and an administrator would have to issue dist-upgrade to enable the automatic removal of the conflicting package.

Balint Reczey (rbalint) on 2021-01-13
description: updated
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package google-guest-agent - 20200617.00-0ubuntu8

---------------
google-guest-agent (20200617.00-0ubuntu8) hirsute; urgency=medium

  * debian/rules: Build the package as preferred by upstream
    - Strip the binary
    - Set main.version (LP: #1900897)
  * Declare Breaks: on python3-google-compute-engine
    to force conscious removal of the Python libraries that are not maintained
    and this package make obsolete. (LP: #1905986)

 -- Balint Reczey <email address hidden> Wed, 13 Jan 2021 13:24:40 +0100

Changed in google-guest-agent (Ubuntu):
status: New → Fix Released
Łukasz Zemczak (sil2100) wrote :

For groovy, I suspect this change won't really have any effect, right? Since python3-google-compute-engine has already been turned into a transitional package, so any users that regularly updated already got the modules removed and overridden by the empty package. But let's pull it in for consistency.
For focal this still seems to make sense, so I'll get to that one soon.

Hello Balint, or anyone else affected,

Accepted gce-compute-image-packages into groovy-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/gce-compute-image-packages/20201222.00-0ubuntu2~20.10.0 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, what testing has been performed on the package and change the tag from verification-needed-groovy to verification-done-groovy. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-groovy. In either case, without details of your testing we will not be able to proceed.

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

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Changed in gce-compute-image-packages (Ubuntu Groovy):
status: New → Fix Committed
tags: added: verification-needed verification-needed-groovy
Łukasz Zemczak (sil2100) wrote :

Hello Balint, or anyone else affected,

Accepted google-guest-agent into groovy-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/google-guest-agent/20201217.02-0ubuntu1~20.10.0 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, what testing has been performed on the package and change the tag from verification-needed-groovy to verification-done-groovy. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-groovy. In either case, without details of your testing we will not be able to proceed.

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

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Changed in google-guest-agent (Ubuntu Groovy):
status: New → Fix Committed
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers