[pve-devel] [PATCH installer 0/6] switch low-level installer protocol to json

Christoph Heiss c.heiss at proxmox.com
Wed Dec 6 12:34:49 CET 2023


This switches the stdio-protocol for the low-level installer from
simple, line-based messages to JSON.

This solves a number of problems, most prominently that messages can now
contain multiline text (or for that matter, any kind of data), as JSON
handles that transparently.

The actual "meaty" changes are in #3, the others are either some simple
cleanups or test infra.

I have also included a testsuite for both the Perl side of things, as
well as the TUI, to ensure that it works and cannot be accidently broken
easily in the future.

Tested this by installing of PVE and PBS.

Christoph Heiss (6):
  low-level: align wording of finish message
  ui: stdio: log error if display_html() is called on stdio backend
  tui, ui: switch over to JSON-based protocol
  test: add tests for UI^2 stdio protocol
  buildsys: setup proper test environment for testsuite
  tui: install progress: add tests for UI^2 stdio protocol

 Makefile                                      |   9 +-
 Proxmox/UI/StdIO.pm                           |  43 ++--
 proxmox-low-level-installer                   |   2 +-
 .../src/views/install_progress.rs             | 195 +++++++++++++-----
 test/Makefile                                 |   6 +-
 test/ui2-stdio.pl                             |  96 +++++++++
 6 files changed, 280 insertions(+), 71 deletions(-)
 create mode 100755 test/ui2-stdio.pl

--
2.42.0





More information about the pve-devel mailing list