Commit Graph

4119 Commits

Author SHA1 Message Date
Michael Hudson-Doyle 52b260bc22 never match a disk with 0 size when converting autoinstall config
Sometimes empty CD drives or SD card readers show up as block devices
with 0 size. It never makes sense to select these when converting
autoinstall config to curtin config (and size: smallest is quite likely
to do so!)

For https://bugs.launchpad.net/subiquity/+bug/1943609
2021-09-29 15:03:07 +13:00
Michael Hudson-Doyle fbc921d9f3
Merge pull request #1065 from dbungert/serializer-defaults
Serializer: clarify default / optional
2021-09-29 10:03:00 +13:00
Michael Hudson-Doyle 0d0bd39991
Merge pull request #1059 from dbungert/pubsub-arg
pubsub: optional argument at broadcast time
2021-09-29 09:59:56 +13:00
Michael Hudson-Doyle 9b4c7f341f
Merge pull request #1044 from canonical/wsl_autoinstall
DE-91 - System Setup autoinstall
2021-09-29 09:58:45 +13:00
Jean-Baptiste Lallement 4a2f2af268 Run WSL tests on 20.04+
The behaviour of python regarding asynchronous packages changed between
18.04 and 20.04+. OOBE is only supported on 20.04 and higher and there
is no point in making the WSL specific code compatible with ealier
releases than 20.04

Co-authored-by: Didier Roche <didrocks@ubuntu.com>
2021-09-28 09:32:39 +02:00
Jean-Baptiste Lallement 44b0b66531 Block shutdown controller on installation done
A race existed due to ~he shutdown controller not waiting for the
install task to be complete.

Co-authored-by: Didier Roche <didrocks@ubuntu.com>
2021-09-28 09:32:39 +02:00
Jean-Baptiste Lallement fecd1cc68c Remove empty "required" in schema
There are no required for WSLConf*, remove it instead of using empty
lists.

Co-authored-by: Didier Roche <didrocks@ubuntu.com>
2021-09-28 09:32:39 +02:00
Jean-Baptiste Lallement 4966173d6c Test system setup autoinstall
It also adds an argument --ignore-tz to the schema comparison test to
not fail on system where the schema has no TZ like WSL.

Co-authored-by: Didier Roche <didrocks@ubuntu.com>
2021-09-28 09:32:39 +02:00
Jean-Baptiste Lallement 475e900570 Added reference schema for system setup
Co-authored-by: Didier Roche <didrocks@ubuntu.com>
2021-09-28 09:32:36 +02:00
Jean-Baptiste Lallement b81447c988 Added schema for system setup autoinstall
Co-authored-by: Didier Roche <didrocks@ubuntu.com>
2021-09-28 09:26:29 +02:00
Jean-Baptiste Lallement f13bb1121f Fix: use right identity controller for system setup
Co-authored-by: Didier Roche <didrocks@ubuntu.com>
2021-09-28 09:26:10 +02:00
Jean-Baptiste Lallement c2ae0a7df4 Proceed with (post)install even without controllers
The server was waiting forever if there is no controller defined for
install or post-install events.

Co-authored-by: Didier Roche <didrocks@ubuntu.com>
2021-09-28 09:21:01 +02:00
Dan Bungert 7ca28afb49 Serializer: clarify default / optional
Optional means a field can be none.
A field having a default means we don't have to supply it.
Explicitly reject non-real fields.
2021-09-27 21:22:22 -06:00
Michael Hudson-Doyle 1a3a25bb4b
Merge pull request #1063 from mwhudson/lp-1941968
allow a lvm_partition to not have a size
2021-09-28 10:01:14 +13:00
Didier Roche f947847e31
Merge pull request #1050 from canonical/wsl_oobe_win_locale
DE-100 - Locale/Base/Advanced models initialization
2021-09-27 17:24:50 +02:00
Patrick Wu 65530cf3b3
system_setup: additional Base/Avanced changes and fixes
the fixes includes:
1. renamed helpers.py to wsl_utils.py
2. update several log strings
3. renamed LocaleController to WSLLocaleController
4. improving logic and warnings in get_windows_locale()
5. move config_ref to wsl_utils.py
5. fixes bool_converter()
6. fixes locale configured() getting stuck
2021-09-27 20:36:25 +08:00
Michael Hudson-Doyle 80accd88f9
Merge pull request #1054 from mwhudson/server-state-backchannel
write server state to disk when it is updated
2021-09-27 22:27:27 +13:00
Michael Hudson-Doyle 3b6436434c remove server-state file when starting up dry-run system_setup 2021-09-27 22:10:07 +13:00
Michael Hudson-Doyle 51aaf7265c allow a lvm_partition to not have a size
for autoinstalls. Curtin supports this.

https://bugs.launchpad.net/subiquity/+bug/1941968
2021-09-27 13:17:39 +13:00
Michael Hudson-Doyle 3b5e7ff92c
Merge pull request #1062 from frank-heimes/frank-heimes-lp1944516
Add '--quiet' to 'lszdev' to omit additional progress msg - lp1944516
2021-09-27 09:49:04 +13:00
fheimes f6154d9129
Update zdev-generate.py
adjusted whitespaces
2021-09-25 20:09:54 +02:00
Dan Bungert af8dcfe6c3 pubsub: remove subscribe args, more broadcast args
Remove the subscribe time args, as they weren't used.
With that flexibility we can add many args at broadcast time.
2021-09-24 13:11:55 -06:00
Dan Bungert 350ce11dd9 pubsub: optional argument at broadcast time 2021-09-24 13:10:04 -06:00
fheimes 913436c77a
Update zdev-generate.py
Adding "--quiet" as additional option to "lszdev" - here more for the reason of completeness and for consistency reasons.
The relevant change for solving LP#1944516 is the change in subiquity/server/controllers/zdev.py
2021-09-24 20:01:31 +02:00
fheimes 6cdf97088a
Update zdev.py
Adding "--quiet" as additional option to "lszdev" omits additional progress status messages that "lszdev" might produce in case a significant amount of ccw devices are present (in the range of thousands of devices), since such progress messages will eventually cause parsing issues, like mentioned in LP#1944516.
2021-09-24 19:40:40 +02:00
Michael Hudson-Doyle c0f1bbf5a1 cope with the server going away earlier too 2021-09-24 15:53:48 +12:00
Michael Hudson-Doyle d025ddaa27 write server state to disk when it is updated
and check this in client when getting status over api fails
2021-09-24 15:53:48 +12:00
Michael Hudson-Doyle 2f9c22961e
Merge pull request #1042 from canonical/wsl_oobe_auto_reconf_mode
DE-98/DE-99 - system_setup: Wsl oobe auto reconf mode
2021-09-24 14:26:23 +12:00
Dan Bungert d23f00f771
Merge pull request #1060 from dbungert/autoinstall-generation
autoinstall: fix issues in autoinstall roundtrip
2021-09-23 16:59:38 -06:00
Michael Hudson-Doyle 3ba3815e73
Merge pull request #1061 from mwhudson/log-dir-permissions
set wider permissions on log directory
2021-09-23 21:50:42 +12:00
Michael Hudson-Doyle 7f6af23694 set wider permissions on log directory 2021-09-23 21:24:44 +12:00
Patrick Wu ee3a3df893
sustem_setup: fixes according to Michael's feedback 2021-09-23 15:10:39 +08:00
Michael Hudson-Doyle df3724881f keep answers compatibility for snaplist 2021-09-23 15:41:09 +12:00
Dan Bungert 3de314a64f fixup: snap & autoinstall 2021-09-22 17:45:58 -06:00
Dan Bungert e41851765e autoinstall: fix snap output
schema wanted to match on classic, but autoinstall was generating as
is_classic.
2021-09-22 16:54:03 -06:00
Dan Bungert 46c57fc6f0 autoinstall: fix kernel output
The generated autoinstall was doing an extra level of kernel output.
2021-09-22 16:50:56 -06:00
Didier Roche fa9957d27d
Merge pull request #1055 from canonical/wsl_oobe_no_dry_mode
WSL OOBE - no dry mode
2021-09-21 11:49:38 +02:00
Dan Bungert 7153a03d36
Merge pull request #1057 from dbungert/cleanup-runtests
runtests: misc cleanup
2021-09-20 17:46:17 -06:00
Dan Bungert 525060be16 runtests: misc cleanup
* remove a stray space
* remove an extra call to check-yaml-fields.py, which can accept a list
  of directives
* remove an entire redundant autoinstall run that I added as part of
  bitlocker work but isn't actually verified in any way other than not
  timing out
2021-09-20 16:46:23 -06:00
Michael Hudson-Doyle 78fe5e82a8
Merge pull request #1053 from mwhudson/broadcast-configured
Have SubiquityController.configured broadcast rather than set an event
2021-09-21 10:09:58 +12:00
Michael Hudson-Doyle 4710e81367
Merge pull request #1052 from mwhudson/generalize-packages
generalize how models can ask for pcakges to be installed in the target
2021-09-21 10:03:45 +12:00
Jean-Baptiste Lallement 0a5b8fcf46 Do not wait on cloud-init on system without cloud-init
On systems where cloud-init cannot run (ie WSL) we where waiting forever
on cloud-init

Co-authored-by: Didier Roche <didrocks@ubuntu.com>
2021-09-20 19:30:36 +02:00
Jean-Baptiste Lallement eee1e9de6d Start server if not socket activated
On systems without socket activation enabled, the client starts the
server manually.

Co-authored-by: Didier Roche <didrocks@ubuntu.com>
2021-09-20 19:29:10 +02:00
Patrick Wu 365769c365 system_setup: update Summary code 2021-09-20 21:58:16 +08:00
Patrick Wu 1aac580dfd system_setup: update the detection logic 2021-09-20 21:58:16 +08:00
Patrick Wu ceae8e9d19 system_setup: fixes according to the feedback
1. update client_variant comment
2. remove Welcome controller
3. remove a TODO
2021-09-20 19:54:27 +08:00
Patrick Wu 6303b5d6c5
system_setup: proper wsl_configuration UI setup
This fixes In wsl_configuration mode the UI shows ”base”/”advanced” screens.
2021-09-20 19:54:14 +08:00
Patrick Wu 018185af49 system_setup: system setup API for Flutter UI part
This completes TODO "provide an API for this for the flutter UI to know
about it"

API is at /meta/client_variant with GET method, returns a string
2021-09-20 19:39:20 +08:00
Patrick Wu 78221ebf25 system setup: auto reconf mode general completion
Mostly complete the second task except the API for GUI:
Implement an API in the server to know if we are in reconfigure or setup mode based on existing UID user >= 1000. Fetch that API from the client and set the variant to wsl_setup or wsl_configuration.
2021-09-20 19:39:20 +08:00
Michael Hudson-Doyle 156aabbd35 allow target_packages to be async 2021-09-17 15:48:24 +12:00