[ UI 2.0b2] MAAS Rack Controller doesn't surface to the UI import issues

Bug #1571031 reported by Andres Rodriguez
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
MAAS
Fix Released
Critical
Unassigned

Bug Description

The rack controller didn't have direct access to the network, and it wa sunable to get some files necessary for pxe booting (those obtained in the archive). MAAS logged:

2016-04-16 01:55:12+0000 [ClusterClient,client] Rack controller '4y3h7q' registered (via maas00:pid=3977).
2016-04-16 02:06:42+0000 [-] Downloading images failed.
        Traceback (most recent call last):
          File "/usr/lib/python3/dist-packages/twisted/internet/defer.py", line 434, in errback
            self._startRunCallbacks(fail)
          File "/usr/lib/python3/dist-packages/twisted/internet/defer.py", line 501, in _startRunCallbacks
            self._runCallbacks()
          File "/usr/lib/python3/dist-packages/twisted/internet/defer.py", line 588, in _runCallbacks
            current.result = callback(current.result, *args, **kw)
          File "/usr/lib/python3/dist-packages/twisted/internet/defer.py", line 1184, in gotResult
            _inlineCallbacks(r, g, deferred)
        --- <exception caught here> ---
          File "/usr/lib/python3/dist-packages/twisted/internet/defer.py", line 1126, in _inlineCallbacks
            result = result.throwExceptionIntoGenerator(g)
          File "/usr/lib/python3/dist-packages/twisted/python/failure.py", line 389, in throwExceptionIntoGenerator
            return g.throw(self.type, self.value, self.tb)
          File "/usr/lib/python3/dist-packages/provisioningserver/pserv_services/image_download_service.py", line 121, in maybe_start_download
            yield self._start_download()
          File "/usr/lib/python3/dist-packages/twisted/internet/defer.py", line 1126, in _inlineCallbacks
            result = result.throwExceptionIntoGenerator(g)
          File "/usr/lib/python3/dist-packages/twisted/python/failure.py", line 389, in throwExceptionIntoGenerator
            return g.throw(self.type, self.value, self.tb)
          File "/usr/lib/python3/dist-packages/provisioningserver/pserv_services/image_download_service.py", line 112, in _start_download
            get_proxy_url("https"))
          File "/usr/lib/python3/dist-packages/twisted/python/threadpool.py", line 246, in inContext
            result = inContext.theWork()
          File "/usr/lib/python3/dist-packages/twisted/python/threadpool.py", line 262, in <lambda>
            inContext.theWork = lambda: context.call(ctx, func, *args, **kw)
          File "/usr/lib/python3/dist-packages/twisted/python/context.py", line 118, in callWithContext
            return self.currentContext().callWithContext(ctx, func, *args, **kw)
          File "/usr/lib/python3/dist-packages/twisted/python/context.py", line 81, in callWithContext
            return func(*args,**kw)
          File "/usr/lib/python3/dist-packages/provisioningserver/utils/twisted.py", line 201, in wrapper
            return func(*args, **kwargs)
          File "/usr/lib/python3/dist-packages/provisioningserver/rpc/boot_images.py", line 106, in _run_import
            boot_resources.import_images(sources)
          File "/usr/lib/python3/dist-packages/provisioningserver/import_images/boot_resources.py", line 276, in import_images
            install_boot_loaders(snapshot_path, image_descriptions.get_image_arches())
          File "/usr/lib/python3/dist-packages/provisioningserver/import_images/boot_resources.py", line 98, in install_boot_loaders
            boot_method.install_bootloader(destination)
          File "/usr/lib/python3/dist-packages/provisioningserver/boot/uefi.py", line 128, in install_bootloader
            'main', 'amd64')
          File "/usr/lib/python3/dist-packages/provisioningserver/boot/utils.py", line 164, in get_updates_package
            package, archive, component, architecture, release=release)
          File "/usr/lib/python3/dist-packages/provisioningserver/boot/utils.py", line 137, in get_package
            package, archive, component, architecture, release=release)
          File "/usr/lib/python3/dist-packages/provisioningserver/boot/utils.py", line 112, in get_package_info
            packages = get_packages(archive, component, architecture, release=release)
          File "/usr/lib/python3/dist-packages/provisioningserver/boot/utils.py", line 91, in get_packages
            release_file = get_file(release_url)
          File "/usr/lib/python3/dist-packages/provisioningserver/boot/utils.py", line 49, in get_file
            response = urllib.request.build_opener().open(url)
          File "/usr/lib/python3.5/urllib/request.py", line 465, in open
            response = self._open(req, data)
          File "/usr/lib/python3.5/urllib/request.py", line 483, in _open
            '_open', req)
          File "/usr/lib/python3.5/urllib/request.py", line 443, in _call_chain
            result = func(*args)
          File "/usr/lib/python3.5/urllib/request.py", line 1271, in http_open
            return self.do_open(http.client.HTTPConnection, req)
          File "/usr/lib/python3.5/urllib/request.py", line 1245, in do_open
            raise URLError(err)
        urllib.error.URLError: <urlopen error [Errno 101] Network is unreachable>

but it didn't surface anything in the UI. The UI didn't really gave any idea of what was going on.

Related branches

Changed in maas:
importance: Undecided → High
milestone: none → 2.0.0
Changed in maas:
status: New → Triaged
summary: - [2.0 beta 2] MAAS Rack Controller doesn't surface to the UI import
- issues
+ [ UI 2.0b2] MAAS Rack Controller doesn't surface to the UI import issues
tags: added: error-surface notifications
Changed in maas:
milestone: 2.0.0 → 2.1.0
importance: High → Critical
Changed in maas:
milestone: 2.1.0 → 2.1.1
Changed in maas:
milestone: 2.1.1 → 2.1.2
Changed in maas:
milestone: 2.1.2 → 2.1.3
Changed in maas:
status: Triaged → Fix Committed
Lee Trager (ltrager)
Changed in maas:
milestone: 2.1.3 → 2.2.0
Changed in maas:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.