Commit Graph

3401 Commits

Author SHA1 Message Date
Michael Hudson-Doyle 19bee4e8b6 tweak behaviour on failure slightly 2020-03-30 10:26:18 +13:00
Michael Hudson-Doyle b1ab79989d fixity 2020-03-30 10:17:26 +13:00
Michael Hudson-Doyle 0f53b9b1f6 do not capture errors applying autoinstall config
outer handling gets this closer to right now
2020-03-30 10:17:26 +13:00
Michael Hudson-Doyle caf713d289 shuffle run loop around 2020-03-30 10:17:22 +13:00
Michael Hudson-Doyle 0012c5ff70 validate data on loading controllers 2020-03-30 10:15:09 +13:00
Michael Hudson-Doyle 57f0a869d3 validate schema, and fix some bits 2020-03-30 10:15:09 +13:00
Michael Hudson-Doyle ac6d938ffa add command to dump schema out 2020-03-30 10:15:09 +13:00
Michael Hudson-Doyle 716557df03 trivial fixes 2020-03-30 10:15:09 +13:00
Michael Hudson-Doyle a9cb6c0770 type out some more schemas 2020-03-30 10:15:09 +13:00
Michael Hudson-Doyle 75f29cee70 type out some schema stuff 2020-03-30 10:15:09 +13:00
Michael Hudson-Doyle c87e8a15d6
Merge pull request #659 from mwhudson/curtin-update
Curtin update
2020-03-27 14:37:09 +13:00
Michael Hudson-Doyle 7e69fe6d54 allow reformatting of raids 2020-03-27 14:17:37 +13:00
Michael Hudson-Doyle 6622121b4b
Merge pull request #658 from mwhudson/no-cloud-init-if-disabled
do not look at cloud config at all if cloud-init is disabled
2020-03-27 13:52:55 +13:00
Michael Hudson-Doyle e7603d82c9 do not look at cloud config at all if cloud-init is disabled 2020-03-27 13:32:01 +13:00
Michael Hudson-Doyle 100661b60c use wipe/preserve refactor commit from curtin 2020-03-27 13:23:10 +13:00
Michael Hudson-Doyle ecb6f380ac do not wait for cloud-init in dry run mode, fails on travis 2020-03-27 11:58:40 +13:00
Michael Hudson-Doyle 1e6c9c6468
Merge pull request #657 from CanonicalLtd/no-delete-virtual-all-the-time
Only delete virtual devices when config has changed
2020-03-27 11:07:52 +13:00
Dimitri John Ledkov d97bf081ea Only delete virtual devices when config has changed 2020-03-26 21:26:34 +00:00
Michael Hudson-Doyle b799a873d7
Merge pull request #654 from mwhudson/cloud-init-wait
wait for cloud init & extract autoinstall config
2020-03-27 10:11:41 +13:00
Michael Hudson-Doyle e82c6f939a neuter cloud init access in dry-run mode 2020-03-26 12:49:51 +13:00
Michael Hudson-Doyle c616012a39 use better code for getting stuff out of cloud-init 2020-03-26 12:46:54 +13:00
Michael Hudson-Doyle 0189965949 dump using safeyaml 2020-03-26 12:44:00 +13:00
Michael Hudson-Doyle e3341d98bd
Merge pull request #656 from mwhudson/py36-cancelled-error
asyncio.CancelledError inherits from Exception in Python 3.6 :(
2020-03-25 15:14:57 +13:00
Michael Hudson-Doyle 50580caed4 asyncio.CancelledError inherits from Exception in Python 3.6 :( 2020-03-25 14:55:12 +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
Maciej Borzecki 5d77d71499 subiquitycore: allow overriding input/output when creating screens
The interaction with snap-recovery-chooser happens over stdin/stdout. The early
setup code in console-conf will attempt to restore sys.stdin/sys.stdout and hook
them up to the current tty.

The patch allows passing input/output streams explicitly as parameters to the
constructors.

Also, default to sys.stdin/sys.stdout and pass both streams explicitly when
constructing urwid.raw_display.Screen(), to workaround the bug in their
constructor. THe constructor is defined as follows:

    class Screen(BaseScreen, RealTerminal):
        def __init__(self, input=sys.stdin, output=sys.stdout):

What means, that even if we override sys.stdout/sys.stdin globally in our setup
code, this will have no effect as `input` and `output` already got their values.

Signed-off-by: Maciej Borzecki <maciej.zenon.borzecki@canonical.com>
2020-03-24 13:32:52 +01:00
Michael Hudson-Doyle f0d6beba63 read autoinstall from cloud config 2020-03-20 15:40:04 +13:00
Michael Hudson-Doyle defd3d7328 wait for cloud-init at startup 2020-03-20 15:39:06 +13:00
Michael Hudson-Doyle aca4c513fd add cloud-init to stage-packages 2020-03-20 14:48:16 +13:00
Michael Hudson-Doyle 9636b7a9ef
Merge pull request #653 from mwhudson/20.03.1-oopsies
20.03.1 oopsies
2020-03-20 10:54:12 +13:00
Michael Hudson-Doyle 31ce375a1d display messages when no big disks and no disks are found
probably could do with wordsmithing but better than crashing
2020-03-20 10:25:27 +13:00
Michael Hudson-Doyle 470be04f46 don't offer tiny disks for the guided options 2020-03-20 10:12:48 +13:00
Michael Hudson-Doyle 3856a11186 fix deleting virtual network devices 2020-03-20 09:18:25 +13:00
Michael Hudson-Doyle cc52bb62a5 fix enabling dhcp on a virtual interface 2020-03-20 09:17:29 +13:00
Michael Hudson-Doyle ac587f9bf6 remove /target after unmounting it 2020-03-20 09:17:23 +13:00
Michael Hudson-Doyle 0967777a2d increase block probe timeout
Seeing a few error reports with this timing out and they look sort of
real from the logs. Maybe probing is slow just after startup when so
much other stuff is going on? Let's just increase the timeout and see if
they go away.
2020-03-20 09:16:56 +13:00
Michael Hudson-Doyle 293cb187a6 fix formatting an unformatted, pre-existing raid 2020-03-20 08:41:20 +13:00
Michael Hudson-Doyle 26e18679de
Merge pull request #652 from mwhudson/release-tweaks
Release tweaks
2020-03-17 12:26:19 +13:00
Michael Hudson-Doyle 7596e63a9f pass **kw args to arun_command in run_command_in_foreground
this makes the debug shell run in / rather than /snap/subiquity/whatever
2020-03-17 12:23:06 +13:00
Michael Hudson-Doyle 11374103dc pass check=True to right function when cancelling unattended-upgrades 2020-03-17 12:21:17 +13:00
Dimitri John Ledkov 828febd0b6
Merge pull request #651 from mwhudson/restart-after-fail-snafu
fix various restarting snafus
2020-03-16 13:59:08 +00:00
Dimitri John Ledkov f9a504674b
Merge pull request #636 from bboozzoo/bboozzoo/snapd-chooser-integration
bin/console-conf-wrapper: detect whether snapd recovery chooser should run
2020-03-16 13:54:24 +00:00
Michael Hudson-Doyle b4ab4d8f1b Only mark definitively seen screens as configured.
Mark a screen as configured if:
 - last-screen is present
 - the screen was before the screen last-screen indicates
2020-03-16 16:37:25 +13:00
Michael Hudson-Doyle 94611c58e2 remove last-screen file before restarting or exiting
unless we are restarting because of a snap refresh.

ths lead to all kinds of confusion after e.g. a ui crash after a snap refresh
2020-03-16 16:37:16 +13:00
Michael Hudson-Doyle 499cd78c1e Revert "fix installation hang after refreshing snap"
This reverts commit 910b00b0c7.

This approach failed rather badly in the case of refreshing the snap,
then trying to restart after a failed install -- all models were
considered to be configured, which means the install restarts
straightaway and then promptly fails.
2020-03-16 16:34:02 +13:00
Steve Langasek eca2728dfa
Merge pull request #650 from xnox/i18n-docs
Update i18n docs
2020-03-11 15:35:56 -07:00