do-release-upgrade crashed with AttributeError in _replaceDebsWithSnaps(): 'UbuntuDistroInfo' object has no attribute 'version'

Bug #1833753 reported by Brian Murray on 2019-06-21
12
This bug affects 2 people
Affects Status Importance Assigned to Milestone
ubuntu-release-upgrader (Ubuntu)
High
Brian Murray

Bug Description

python3-distro-info doesn't have the ability to "Support getting release version by codename in the Perl and Python API" as that appeared in distro-info (0.21) which is only available in disco.

ProblemType: Crash
DistroRelease: Ubuntu 19.10
Package: ubuntu-release-upgrader-core 1:19.10.8
ProcVersionSignature: Ubuntu 4.15.0-48.51-generic 4.15.18
Uname: Linux 4.15.0-48-generic x86_64
Architecture: amd64
CrashDB: ubuntu
Date: Thu Jun 20 11:58:49 2019
ExecutablePath: /usr/bin/do-release-upgrade
ExecutableTimestamp: 1560873548
InstallationDate: Installed on 2018-08-13 (311 days ago)
InstallationMedia: Ubuntu 18.04 LTS "Bionic Beaver" - Release amd64 (20180426)
InterpreterPath: /usr/bin/python3.6
PackageArchitecture: all
ProcCmdline: /usr/bin/python3 ./eoan --frontend DistUpgradeViewText
ProcCwd: /tmp/u-r-u-eoan
Python3Details: /usr/bin/python3.7, Python 3.7.3, python3-minimal, 3.7.3-1
PythonArgs: ['/usr/bin/do-release-upgrade', '--frontend', 'DistUpgradeViewText']
PythonDetails: N/A
SourcePackage: ubuntu-release-upgrader
Title: do-release-upgrade crashed with AttributeError in _replaceDebsWithSnaps(): 'UbuntuDistroInfo' object has no attribute 'version'
UpgradeStatus: Upgraded to eoan on 2019-06-20 (0 days ago)
UserGroups:

Related branches

Brian Murray (brian-murray) wrote :
information type: Private → Public
Brian Murray (brian-murray) wrote :

Here's the traceback:

Traceback (most recent call last):
  File "./eoan", line 8, in <module>
    sys.exit(main())
  File "/tmp/u-r-u-eoan/DistUpgrade/DistUpgradeMain.py", line 238, in main
    if app.run():
  File "/tmp/u-r-u-eoan/DistUpgrade/DistUpgradeController.py", line 2086, in run
    return self.fullUpgrade()
  File "/tmp/u-r-u-eoan/DistUpgrade/DistUpgradeController.py", line 2063, in fullUpgrade
    self.doPostUpgrade()
  File "/tmp/u-r-u-eoan/DistUpgrade/DistUpgradeController.py", line 1428, in doPostUpgrade
    self.quirks.run("PostUpgrade")
  File "/tmp/u-r-u-eoan/DistUpgrade/DistUpgradeQuirks.py", line 93, in run
    func()
  File "/tmp/u-r-u-eoan/DistUpgrade/DistUpgradeQuirks.py", line 132, in eoanPostUpgrade
    self._replaceDebsWithSnaps()
  File "/tmp/u-r-u-eoan/DistUpgrade/DistUpgradeQuirks.py", line 444, in _replaceDebsWithSnaps
    fromVersion = di.version('%s' % self.controller.fromDist).split()[0]
AttributeError: 'UbuntuDistroInfo' object has no attribute 'version'

Changed in ubuntu-release-upgrader (Ubuntu):
status: New → In Progress
importance: Undecided → High
assignee: nobody → Brian Murray (brian-murray)
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package ubuntu-release-upgrader - 1:19.10.9

---------------
ubuntu-release-upgrader (1:19.10.9) eoan; urgency=medium

  * DistUpgrade/DistUpgradeCache.py, DistUpgrade/DistUpgradeController.py:
    drop code which identified obsolete kernels and marked them for removal as
    it is redundant with functionality that exists in apt. (LP: #1828100)
  * DistUpgrade/DistUpgradeQuirks.py: Create a fallback mechanism for
    determining the version of a release (necessary for Ubuntu 18.04) when
    replacing debs with snaps. (LP: #1833753)

 -- Brian Murray <email address hidden> Fri, 21 Jun 2019 14:30:19 -0700

Changed in ubuntu-release-upgrader (Ubuntu):
status: In Progress → Fix Released
To post a comment you must log in.