Commit Graph

156 Commits

Author SHA1 Message Date
Michael Hudson-Doyle 00e33ae0e1 include ssh host key details in ssh help 2020-04-06 14:10:26 +12:00
Michael Hudson-Doyle fac202d123 move newly added tests to tests directories 2020-04-02 10:18:07 +13:00
Dimitri John Ledkov 590b4b8f23
Merge pull request #655 from bboozzoo/bboozzoo/uc20-recovery-chooser
console_conf: implement UC20 recovery chooser
2020-04-01 22:05:30 +01:00
Dimitri John Ledkov c2aa72a9ee
Merge pull request #672 from xnox/consoleconf-focus-identity
consoleconf: focus on entry field in identy.
2020-04-01 21:54:00 +01:00
Maciej Borzecki 0b58dd598b console_conf/controllers: add tests for recovery chooser
Signed-off-by: Maciej Borzecki <maciej.zenon.borzecki@canonical.com>
2020-04-01 16:17:20 +02:00
Maciej Borzecki b0ea2e1be7 console_conf/controllers/chooser: show current system actions first
When we know which system is current, show its actions first. Optionally allow
opening the list of other systems.

Signed-off-by: Maciej Borzecki <maciej.zenon.borzecki@canonical.com>
2020-04-01 16:17:20 +02:00
Maciej Borzecki 95b65d1caf console_conf/ui/views: add screen with actions of the current system
Signed-off-by: Maciej Borzecki <maciej.zenon.borzecki@canonical.com>
2020-04-01 16:17:20 +02:00
Maciej Borzecki 6ae155faf7 console_conf/ui/views: sort recovery systems, indicate which is the current one
Signed-off-by: Maciej Borzecki <maciej.zenon.borzecki@canonical.com>
2020-04-01 16:00:34 +02:00
Maciej Borzecki d7e03cd5a8 console_conf/models: identify the current system
When creating a recovery systems model, find out which of the systems is
current.

Signed-off-by: Maciej Borzecki <maciej.zenon.borzecki@canonical.com>
2020-04-01 15:58:34 +02:00
Dimitri John Ledkov dffed63df5 consoleconf: focus on entry field in identy. 2020-04-01 14:32:55 +01:00
Michael Hudson-Doyle cab565304a write netplan directly to the target
rather than via curtin and then cloud-init
2020-04-01 19:37:02 +13:00
Maciej Borzecki a147c720ba console_conf: run as recovery chooser when --recovery-chooser-mode is provided
Add support for --recover-chooser-mode command line argument. When provided, run
as a recovery chooser, rather than as a regular console-conf instance.

Signed-off-by: Maciej Borzecki <maciej.zenon.borzecki@canonical.com>
2020-03-24 15:09:50 +01:00
Maciej Borzecki f6ea3bc960 console_conf: add an app for the recovery chooser
Add an app and hook it up with the rest of elements.

Signed-off-by: Maciej Borzecki <maciej.zenon.borzecki@canonical.com>
2020-03-24 15:09:50 +01:00
Maciej Borzecki 8d2f1f9a8b console_conf/controllers: add recovery chooser controllers
Add controller used by the recovery chooser.

Signed-off-by: Maciej Borzecki <maciej.zenon.borzecki@canonical.com>
2020-03-24 15:09:50 +01:00
Maciej Borzecki 5504a9aa91 console_conf/views: add recovery chooser views
Add views used by recovery chooser:
- welcome - recovery chooser specific message
- chooser - list of seed systems and actions
- confirm - where user confirms the selected action

Signed-off-by: Maciej Borzecki <maciej.zenon.borzecki@canonical.com>
2020-03-24 15:09:50 +01:00
Maciej Borzecki c328152fb8 console_conf/models: add models for recovery systems
Add models for recovery chooser systems, brand information, snapd models and
recovery actions.

Signed-off-by: Maciej Borzecki <maciej.zenon.borzecki@canonical.com>
2020-03-24 15:09:50 +01:00
Michael Hudson-Doyle cb52ab75a2 use the asyncio loop object rather than the urwid loop almost everywhere 2019-12-20 12:04:38 +13:00
Michael Hudson-Doyle 01e5261b3f kill off other top level signals 2019-12-16 23:09:17 +13:00
Michael Hudson-Doyle 2765e6a773 replace next-screen/prev-screen signals with method calls 2019-12-16 23:02:03 +13:00
Dimitri John Ledkov d19e405666 Unbreak console-conf in UC20 images 2019-12-14 03:00:17 +00:00
Michael Hudson-Doyle 64378cdb95 refactor how controllers are stored a bit 2019-12-12 10:38:03 +13:00
Michael Hudson-Doyle a2ccb0cd9e remove all remaining footer-related things 2019-09-30 09:32:23 +13:00
Michael Hudson-Doyle b24dbf7095 remove environment_check stuff 2019-09-09 15:27:29 +12:00
Michael Hudson-Doyle 5dca5e861e remove some pointless wrapping of exceptions 2019-09-09 14:30:49 +12:00
Dimitri John Ledkov 25ed1e281f
Merge pull request #533 from mwhudson/app-specific-uis
allow the application to have a widget in the bottom right
2019-09-05 14:36:12 +01:00
Michael Hudson-Doyle 3f8c005237 allow console_conf and subiquity to use different UI classes
Subiquity is going to grow some global UI elements that console_conf
does not want.
2019-09-05 11:58:25 +12:00
Michael Hudson-Doyle 9a05653150 Tweak Controller API
* rename 'default' method to 'start_ui'
 * add 'end_ui' hook
 * add Application.cur_controller helper
2019-09-04 15:18:45 +12:00
Michael Hudson-Doyle caf026fb23 fix error logging in host_key_fingerprints 2019-09-03 13:13:58 +12:00
Michael Hudson-Doyle f85fb6aac7
Merge pull request #525 from mwhudson/outermost-pile
Make the outermost widget an instance of Pile rather than Frame
2019-08-16 14:51:32 +12:00
Michael Hudson-Doyle 9e40dcbad6 Make the outermost widget an instance of Pile rather than Frame
Current plans involve putting a focusable widget (a help button) in the
footer, and Pile's behaviour is much more what we want than Frame for
this.
2019-08-16 14:31:03 +12:00
Michael Hudson-Doyle b38f47bf42 Merge branch 'master' into core-cleanups 2019-08-16 14:24:56 +12:00
Michael Hudson-Doyle 90d376fbbd put the terminal into raw mode
For whatever reason, urwid puts the terminal into cbreak mode during
initialization. If we put the terminal into raw mode instead, then we
don't have to ignore SIGINT and SIGQUIT, which is good, because when we
support dropping to a subshell we don't want to run that subshell with
those signals ignored, because that is extremely confusing.

This also lets me dump the code that puts the terminal into raw mode
during keyboard detection.
2019-08-15 13:50:23 +12:00
Michael Hudson-Doyle cad6817118 fix console-conf again 2019-08-15 13:34:10 +12:00
Michael Hudson-Doyle 81b9c883f3 do not copy so many things from app to controller in Controller.__init__ 2019-08-15 13:34:09 +12:00
Michael Hudson-Doyle 98908e91b2 get rid of silly common dictionary that was passed around a bit everywhere 2019-08-15 13:33:38 +12:00
Dimitri John Ledkov 968fe145e6 consoleconf: Fixup write_login_details_standalone
Port to use prober API, stop using removed APIs.
2019-08-14 14:04:29 +01:00
Dimitri John Ledkov dfab5563c1 console_conf: unbreak LoginView 2019-08-08 15:02:39 +01:00
Dimitri John Ledkov e755bf4b5f console_conf/subiquity: split identitymodel, as it is not the same at all. 2019-08-08 15:02:39 +01:00
Dimitri John Ledkov 290c26d244 consoleconf: rewrite identity page. 2019-08-07 21:35:35 +01:00
Dimitri John Ledkov a4c7e36408 consoleconf: fix welcome header/excerpt 2019-08-07 21:26:14 +01:00
Dimitri John Ledkov dcb3458810 Introduce (currently unused) click/script arguments to console-conf
This prevents crash on startup.
2019-08-07 20:13:29 +01:00
Michael Hudson-Doyle bdf33a2adf make SubiquityModel objects easier to construct
So I can write a unittest more easily.

This involves shuffling around how locale changes are done but as my new
design document says the "controller also manages the relationship
between the outside world and the model and views" this does make things
more consistent.
2019-05-10 09:44:01 +12: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 c0d66f5540 make scrollbar less intrusive
also pretty up its implementation a bit while I am here
2018-06-18 21:24:23 +12:00
Michael Hudson-Doyle 0d95adb89e
Merge pull request #360 from sil2100/console-conf-core-version
console-conf identity: do not hard-code the core version
2018-06-15 14:18:52 +12:00
Michael Hudson-Doyle 9ef56239f8 fix snap build
* use a different way to avoid depending on i18n in tox
 * add __init__.py files to new packages
2018-06-13 13:21:20 +12:00
Łukasz 'sil2100' Zemczak d5413fde2d Zyga is right - better to check the ID instead of NAME. 2018-06-12 17:14:37 +02:00
Łukasz 'sil2100' Zemczak 75bdbab36b Whoops, it was a real failure reported by flake8 - fix missing bracket. 2018-06-11 13:22:39 +02:00
Łukasz 'sil2100' Zemczak 32b724e608 Forgot the version string in one template. 2018-06-11 13:17:30 +02:00
Łukasz 'sil2100' Zemczak 17c6358320 console-conf identity: Reuse the login_details_tmpl_no_ip template in standalone, use os-release to determine the Ubuntu Core version as we now support both 16 and 18. 2018-06-08 21:21:02 +02:00