[Bug 1831933] Re: do-release-upgrade tries to install snaps even if it knows it can't reach the snapstore

Dan Streetman dan.streetman at canonical.com
Wed Jun 19 17:06:05 UTC 2019


** Changed in: ubuntu-release-upgrader (Ubuntu Disco)
     Assignee: (unassigned) => Dan Streetman (ddstreet)

** Changed in: ubuntu-release-upgrader (Ubuntu Cosmic)
     Assignee: (unassigned) => Dan Streetman (ddstreet)

** Changed in: ubuntu-release-upgrader (Ubuntu Bionic)
     Assignee: (unassigned) => Dan Streetman (ddstreet)

** Changed in: ubuntu-release-upgrader (Ubuntu Disco)
   Importance: Undecided => Medium

** Changed in: ubuntu-release-upgrader (Ubuntu Cosmic)
   Importance: Undecided => Medium

** Changed in: ubuntu-release-upgrader (Ubuntu Bionic)
   Importance: Undecided => Medium

** Changed in: ubuntu-release-upgrader (Ubuntu Disco)
       Status: New => In Progress

** Changed in: ubuntu-release-upgrader (Ubuntu Cosmic)
       Status: New => In Progress

** Changed in: ubuntu-release-upgrader (Ubuntu Bionic)
       Status: New => In Progress

-- 
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/1831933

Title:
  do-release-upgrade tries to install snaps even if it knows it can't
  reach the snapstore

Status in ubuntu-release-upgrader package in Ubuntu:
  Fix Released
Status in ubuntu-release-upgrader source package in Bionic:
  In Progress
Status in ubuntu-release-upgrader source package in Cosmic:
  In Progress
Status in ubuntu-release-upgrader source package in Disco:
  In Progress
Status in ubuntu-release-upgrader source package in Eoan:
  Fix Released

Bug description:
  [impact]

  do-release-upgrade has a quirk that, if ubuntu-desktop and snapd are
  installed, tries to replace installed debs with snaps.  To do this, it
  first, early in the upgrade process, checks the connectivity to the
  snap store.  If that fails, it notifies the user and asks if upgrade
  should be aborted.  If the user says no (or if the user is upgrading
  in non-interactive mode) then upgrade continues.  At the end, the
  upgrade tries to replace some installed debs with snaps, even if it
  already knows that it can't connect to the snap store, from the
  earlier connectivity check.

  This results in a minor annoyance, of extra time trying to install
  snaps when there is no possibility of it working, as well as 'error'
  messages printed:

  Installing snap gnome-3-26-1604 
  error: cannot install "gnome-3-26-1604": Post 
  https://api.snapcraft.io/v2/snaps/refresh: dial tcp 91.189.92.38:443: 
  connect: connection refused 

  Installing snap gtk-common-themes 
  error: cannot install "gtk-common-themes": Post 
  https://api.snapcraft.io/v2/snaps/refresh: dial tcp 91.189.92.38:443: 
  connect: connection refused 

  Installing snap gnome-calculator 
  error: cannot install "gnome-calculator": Post 
  https://api.snapcraft.io/v2/snaps/refresh: dial tcp 91.189.92.19:443: 
  connect: connection refused 

  Installing snap gnome-characters 
  error: cannot install "gnome-characters": Post 
  https://api.snapcraft.io/v2/snaps/refresh: dial tcp 91.189.92.38:443: 
  connect: connection refused 

  Installing snap gnome-logs 
  error: cannot install "gnome-logs": Post 
  https://api.snapcraft.io/v2/snaps/refresh: dial tcp 91.189.92.19:443: 
  connect: connection refused 

  Installing snap gnome-system-monitor 
  error: cannot install "gnome-system-monitor": Post 
  https://api.snapcraft.io/v2/snaps/refresh: dial tcp 91.189.92.38:443: 
  connect: connection refused 

  
  [test case]

  install a xenial system in a VM and block (only) access to the snap
  store, e.g:

  $ virsh nwfilter-dumpxml block-snapstore 
  <filter name='block-snapstore' chain='root'>
    <uuid>36dbe3e7-4085-4da8-bc9b-f56f2029431a</uuid>
    <rule action='reject' direction='inout' priority='0'>
      <ip dstipaddr='91.189.92.19'/>
    </rule>
    <rule action='reject' direction='inout' priority='0'>
      <ip dstipaddr='91.189.92.38'/>
    </rule>
    <rule action='reject' direction='inout' priority='0'>
      <ip dstipaddr='91.189.92.41'/>
    </rule>
    <rule action='reject' direction='inout' priority='0'>
      <ip dstipaddr='91.189.92.20'/>
    </rule>
    <rule action='reject' direction='inout' priority='0'>
      <ip srcipaddr='91.189.92.19'/>
    </rule>
    <rule action='reject' direction='inout' priority='0'>
      <ip srcipaddr='91.189.92.38'/>
    </rule>
    <rule action='reject' direction='inout' priority='0'>
      <ip srcipaddr='91.189.92.41'/>
    </rule>
    <rule action='reject' direction='inout' priority='0'>
      <ip srcipaddr='91.189.92.20'/>
    </rule>
  </filter>

  and add this inside a VM's <interface> xml:
        <filterref filter='block-snapstore'/>                             
                                                                                                                                                                                                         

  Then in the VM, make sure to install both ubuntu-desktop and snapd,
  and then run do-release-upgrade.  During the upgrade it should prompt
  due to the failed connectivity to the snapstore; tell it to continue
  the upgrade.  At the end, the above 'error' messages should print out,
  when the snaps are attempted to be installed.

  [regression potential]

  any regression would likely involve incorrectly not installing snaps.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/ubuntu-release-upgrader/+bug/1831933/+subscriptions



More information about the foundations-bugs mailing list