Commit Graph

99 Commits

Author SHA1 Message Date
Carlos Nihelton f9d3877feb Corrected list type hint for Python 3.8.
- CI failed on Focal due Python version unable to understand list[str].
2021-11-08 19:03:10 -03:00
Carlos Nihelton eb6bd2d263 Smaller functions, early returns and funny mocking 2021-11-08 13:11:30 -03:00
Carlos Nihelton 6be4aea138 l-s-c as dep on Makefile, avoid raising exceptions
- And clear .subiquity/var/cache
2021-11-05 18:09:15 -03:00
Carlos Nihelton 5f9f2122ce System locale manipulation wired into Subiquity.
- We don't have cloud-init in WSL.
    - Subiquity must perform any actions to support the choosen locale.
    - l-s-c package added as dependency.
2021-11-05 17:29:33 -03:00
Carlos Nihelton 106b8c758e Temporary fix for integration tests chroot'ing
useradd -R does chroot.
useradd -P doesn't.
2021-11-03 15:53:02 -03:00
Didier Roche 277fe55599 Don’t block on running commands in configure
Those commands needs to be async to be able to still answer GET/POST
request while configure is running.
This allows showing up the summary page immediately.

Co-authored-by: Jean-Baptiste Lallement <jean-baptiste@ubuntu.com>
2021-11-03 12:35:25 +01:00
Carlos Nihelton 4c0ad44738 Moving logic form SystemSetupModel to controllers.
- In order to stay confined into system_setup,
WSLLocaleController had to be recriated.
2021-10-29 12:53:06 -03:00
Carlos Nihelton 2125acffe6 WSL Locale controller is not needed anymore.
- With 'prefill' working, calling Powershell to find Windows locale
is not required anymore.
- Since `f21986be` subiquity's default locale controller respects
  mode.selected_language initialization.
2021-10-28 15:52:24 -03:00
Patrick Wu a3fce9f9c2
system_setup: add useradd tests 2021-10-20 00:27:10 +08:00
Patrick Wu ec04a6833a
system_setup: shutdown/reboot tests 2021-10-18 17:15:45 +08:00
Didier Roche 31fa83e79e
Merge pull request #1078 from canonical/wsl_oobe_deeng_83
DEENG-83 - Implement a reboot in shutdown to restart WSL instances to take new configuration in effect.
2021-10-12 18:13:07 +02:00
Patrick Wu 1d19dfb772
system_setup: implement shutdown/reboot action 2021-10-12 23:20:05 +08:00
Patrick Wu 8559d7fe7d modulizing the usergroup retriving 2021-10-12 10:07:45 +08:00
Patrick Wu 271b72b41a
system_setup: setup user with wsl.conf 2021-10-11 15:33:46 +08:00
Patrick Wu 7ae8e108a6
system_setup: include full autoinstall system 2021-10-11 10:20:18 +08:00
Patrick Wu 1c111c764c
system_setup: write files to .subiquity when dryrun 2021-10-07 16:25:07 +08:00
Patrick Wu c934268813 system_setup: changes and fixes
1. rebase with main and update autoinstall-system-setup.yml
2. provide a more unified indent style
3. update get_userandgroups() to the dropped one
4. fix the problematic os action
5. simply asignments
6. assign default_loader a default value
7. provide a type-to-file dict in wsl_conf
8. provide stderr info when providing error in creating user
9. update schema and example files
2021-10-06 22:13:15 +08:00
Patrick Wu 1a7274dbba system_setup: unify api names and simply WSLconfig class into function 2021-10-06 22:13:15 +08:00
Patrick Wu 5c0e64e78a system_setup: address the run_command fail issue 2021-10-06 22:13:15 +08:00
Patrick Wu 9fbff87fe1 system_setup: changes to the get-usersandgroups 2021-10-06 22:13:15 +08:00
Patrick Wu 32a62748c9 system_setup: initial redesign of generic config handler
Also have to change the logic for default loader
2021-10-06 22:13:15 +08:00
Patrick Wu f31e252436 system_setup: reduce code duplication in getting default value 2021-10-06 22:13:15 +08:00
Patrick Wu 225cb1bd37 system_setup: fixes for after rebasing
1. add extra logs
2. improve the answers file
3. await the self.configured in wslconf API
2021-10-06 22:13:15 +08:00
Patrick Wu 032412a938 system_setup: provide configuration calls 2021-10-06 22:13:15 +08:00
Patrick Wu a211689e08 system_setup: update client_variant to variant 2021-10-06 22:13:15 +08:00
Patrick Wu 0a0c53a61b system_setup: move all write file actions to configure controller
This completes 5. Move all “Commits/Write to file” in the configure controller.
2021-10-06 22:13:15 +08: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 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
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 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
Patrick Wu 1aac580dfd system_setup: update the detection logic 2021-09-20 21:58:16 +08:00
Michael Hudson-Doyle 9051a33c4f make SubiquityController.configured async 2021-09-16 20:59:01 +12:00
Jean-Baptiste Lallement 717cb5b541 system-setup: finished removing duplicated fields
There was some remaining duplicated fields in the controllers and models
between base and advanced configuration, which made the code crash.

Co-authored-by: Didier Roche <didrocks@ubuntu.com>
2021-09-10 12:07:55 +02:00
Jean-Baptiste Lallement 5b2e78a8a1 Ensure we always exit the server
Co-authored-by: Didier Roche <didrocks@ubuntu.com>
2021-09-01 17:42:19 +02:00
Jean-Baptiste Lallement 3eb5231fca Only proceed for installation when ready.
Wait for models to be configured before proceeding with installation.

Co-authored-by: Didier Roche <didrocks@ubuntu.com>
2021-09-01 10:48:44 +02:00
Jean-Baptiste Lallement 9b67591335 More linting fixes
Co-authored-by: Didier Roche <didrocks@ubuntu.com>
2021-08-31 15:56:08 +02:00
Jean-Baptiste Lallement dcab9c2e6e Removal of --reconfigure for server
Load all the server controller independently whether it is in first
configuration or reconfiguration mode.

Co-authored-by: Didier Roche <didrocks@ubuntu.com>
2021-08-31 15:52:03 +02:00
Jean-Baptiste Lallement 518cff3d3b Fixed linting 2021-08-31 15:52:03 +02:00
Jean-Baptiste Lallement 41945cb84c Renamed configuration pages
In order to make naming more explicit renamed wslconf1 to wslconfbase
and wslconf2 to wslconfadvanced.
2021-08-31 15:52:03 +02:00
Jean-Baptiste Lallement 57a2212c7b List of TODOs
This is the list of identified TODOs for the OOBE.
2021-08-31 15:52:03 +02:00
Jean-Baptiste Lallement f41f44e9d6 Misc cleanups
* Rename/add debug with correct naming
* Remove uneeded and unused hostname in identity
* Add automatic answer support to overview
2021-08-31 15:52:03 +02:00
Jean-Baptiste Lallement 688af116f5 Added shutdown and configure controller for the WSL server
This is the WSL implementation of the Install and Shutdown controllers
that inherit from the base controllers.
2021-08-31 15:52:03 +02:00
Jinming Wu, Patrick aff93e5cda system_setup: PEP8 linting fixes 2021-08-31 15:52:03 +02:00
Jinming Wu, Patrick a97cc28ae6 Reconfigure mode: WIP 2021-08-31 15:52:03 +02:00
Didier Roche f00d1d659e Add missing copyrights 2021-08-31 15:52:03 +02:00
Jinming Wu, Patrick 84774c5dc4 WSL User API reimplementation 2021-08-31 15:52:03 +02:00
Jinming Wu, Patrick ef2be951b2 WSLConfiguration2 API complete 2021-08-31 15:52:03 +02:00
Jinming Wu, Patrick 339e66a2c3 system_setup: initial setup 2021-08-31 15:52:03 +02:00