Commit Graph

578 Commits

Author SHA1 Message Date
Michael Hudson-Doyle 6a72b229b1 try probing for blockdev only if probing fails; report failure to user 2019-04-29 15:58:19 +12:00
Michael Hudson-Doyle e8423acd28 do storage probing in the background 2019-04-29 15:54:47 +12:00
Michael Hudson-Doyle 3e8bc81190 add some logging around moving between screens
my best guess at why CI is currently hanging sometimes is that the
'next-screen' signal is being sent too often / too early.  add some
logging around this so that we will be able to confirm / deny this by
reading the logs.
2019-04-18 10:22:05 +12:00
Dimitri John Ledkov 488f6fd2c0
Lock answers file. 2019-04-12 17:36:12 +01:00
Michael Hudson-Doyle 7cc56a8b58 trying to debug edge ci failures
* add a bit more logging
* wait for initial network apply to finish before moving on from
  network screen
2019-04-04 12:06:41 +13:00
Michael Hudson-Doyle ec15929d60 Update to probert tip
The minimum required: it still only looks at the "blockdev" key in the
probe data, none of the exciting new stuff.
2019-04-02 13:43:09 +13:00
Michael Hudson-Doyle 3384eb5c84 small fixes 2019-03-26 11:32:02 +13:00
Michael Hudson-Doyle b485cf487b make the re-dhcp on entry to the network screen a little more discreet 2019-03-26 10:59:50 +13:00
Michael Hudson-Doyle 099e658670 make applying changes less jarring for virtual devices 2019-03-26 10:59:50 +13:00
Michael Hudson-Doyle 23488a6f2e some fixes found in testing 2019-03-26 10:59:50 +13:00
Michael Hudson-Doyle b571b3d1a9 track and display DHCP status
Mark all devices with DHCP enabled as pending when the config is
applied, and mark them as timed out ten seconds later if they have not
received any addresses.
2019-03-26 10:57:36 +13:00
Michael Hudson-Doyle eae2497d41 auto disable inactive NICs
This disables any NIC that does not have a global address by the first
time the network screen is shown
2019-03-26 10:57:36 +13:00
Michael Hudson-Doyle 3bb9268974 apply network changes immediately, rather than when the "Done" is pressed
diff makes this change look more involved than really necessary :(
2019-03-26 10:57:33 +13:00
Michael Hudson-Doyle 594db86618 have DownNetworkDevices do its work in a background thread
not that it should block, but no reason not to
2019-03-26 10:57:13 +13:00
Michael Hudson-Doyle ff59de4a9c change "Done" button to "Continue without network" if there is no default route 2019-03-26 10:57:13 +13:00
Michael Hudson-Doyle 680da7d299 rename/redefine default route waiter to watcher
the callbacks now get called whenever the set of default routes changes,
not just when one appears
2019-03-26 10:57:13 +13:00
Michael Hudson-Doyle c0f4a90179 refactor network view
The visible impact of this is that the addresses for a NIC are now
displayed underneath its name and a long "info line" (i.e. mac / model /
vendor) for a nic no longer distorts its table.

This lays the groundwork for better handling of NICs that fail to dhcp
and things like that.
2019-03-25 09:25:53 +13:00
Michael Hudson-Doyle d2349b0507 move spinner to subiquitycore 2019-03-21 14:48:48 +13:00
Michael Hudson-Doyle bc1a1e7fe6 fix Signal.register to accommodate strange urwid behaviour 2019-03-14 09:55:03 +13:00
Michael Hudson-Doyle b169d35316 display any error received when checking for updates 2019-03-12 11:49:03 +13:00
Michael Hudson-Doyle b91c961165 implement screens up to the point of offering the update
don't display anything about check failures yet, or actually allow the
user to start the update
2019-03-12 11:49:03 +13:00
Michael Hudson-Doyle 9aea579027 support a controller being shown more than once 2019-03-12 11:48:58 +13:00
Michael Hudson-Doyle a888ed222c kick off snap list when a default route appears, not at startup
of course in the common case these are more or less the same time. but
this is conceptually nicer
2019-03-07 15:46:40 +13:00
Michael Hudson-Doyle a51f04b02c start network probing after all signals have been connected 2019-03-07 15:31:39 +13:00
Michael Hudson-Doyle 6e077ef457 move code for configuring snapd proxy out of snaplist controller 2019-03-07 15:18:34 +13:00
Michael Hudson-Doyle 1c5ce7c07a remove no-longer-used code for stacking signals 2019-03-07 14:22:50 +13:00
Michael Hudson-Doyle 756d923424 remove long disabled views for setting default route
as and when we add route configuration to subiquity, we will need new
views anyway.
2019-03-07 14:13:37 +13:00
Michael Hudson-Doyle d0c41469a7 remove login model/controller/view from subiquitycore
long ago subsumed into other code
2019-03-07 14:01:52 +13:00
Michael Hudson-Doyle 9937ebe6e1 add a more systematic way for controllers to record their state
so we can return the point where the user left off on update
2019-03-06 15:55:15 +13:00
Michael Hudson-Doyle 98bf6a4254 add a way for a controller to be skipped
will need this for the refresh screen if there is no update
2019-03-06 15:32:31 +13:00
Michael Hudson-Doyle 53d1006a06 Make the code for talking to snapd more generic
In preparation for the self-refresh and snap enterprise proxy work, both
of which will require talking to the snapd API.

This also makes the "snaps-from-examples" fakery happen at a lower level.
2019-03-04 16:18:57 +13:00
Michael Hudson-Doyle 3b4d7a4266 move snap title into header 2019-02-27 15:56:02 +13:00
Michael Hudson-Doyle 2587b6dd02 fix some dodgy algebra in scrollbars 2019-02-27 14:28:05 +13:00
Michael Hudson-Doyle b77aa9499e make sure all delays during replaying answers repsect SUBIQUITY_REPLAY_TIMESCALE 2019-02-21 11:07:54 +01:00
Michael Hudson-Doyle bc755cc953 fix a race condition in network answers support 2019-02-21 09:32:45 +01:00
Michael Hudson-Doyle c571f58dcc fix saving static network data with search domains 2019-02-21 08:35:19 +01:00
Michael Hudson-Doyle f25bb21c08 fix netdev info dialog 2019-02-19 14:40:19 +01:00
Michael Hudson-Doyle f4cf947b0a center the list of disks 2019-02-04 17:41:11 +13:00
Michael Hudson-Doyle fae9be9103 make the network view slightly less of a snowflake 2019-02-04 17:25:31 +13:00
Michael Hudson-Doyle 0b3d44f911 oops 2019-02-04 16:17:58 +13:00
Michael Hudson-Doyle 4e0af495df more 2019-02-04 14:47:00 +13:00
Michael Hudson-Doyle a553246a30 add a min_width of 96 to the content area of the "standard" view 2019-02-04 14:43:19 +13:00
Michael Hudson-Doyle aebb0b2e2e fill identity fields if you go back to that form 2018-12-13 14:49:55 +13:00
Michael Hudson-Doyle 2eb9420a75 move ssh key fetching over to ssh view 2018-12-13 14:15:43 +13:00
Michael Hudson-Doyle 16a853107e add form fields to ssh view 2018-12-13 14:15:43 +13:00
Dimitri John Ledkov 0d35fa613c core: special case s390x vt220 console on /dev/ttysclp0, as it supports colors. 2018-11-23 01:24:34 +00:00
Michael Hudson-Doyle bee1109a2d Much more fine grained answers support for networking. 2018-10-31 09:59:31 +13:00
Michael Hudson-Doyle 5f8e3dc2a4 do not call next-screen from a background thread 2018-10-31 09:58:58 +13:00
Michael Hudson-Doyle 09bbe3ff19 Do not call the default route waiter repeatedly.
This can crash when multiple interfaces get routes.
2018-10-31 09:58:58 +13:00
Michael Hudson-Doyle 15b6bb1114 Major refactor of network model
The main thrust of this is to not create virtual interfaces until
applying the config.

This meant that the network model has to change a bit to be able to
represent interfaces that do not yet exist on the system. I did this
by ripping out most of the existing network device code: now a
NetworkDev is really just a wrapper for the config for a device and (if
it exists) the netlink data too. A few places had to adjust to checking
if the netlink info is available before accessing it but all in all it
was not that painful.

There are a few other refactorings in this commit that perhaps should be
split out (how the bond parameters are handled, some stuff about
resizing the table rows when interfaces are edited) but it doesn't
really seem worth it.
2018-10-31 09:58:56 +13:00