[pve-devel] [PATCH 00/12] installer: add crate for common code
Aaron Lauterer
a.lauterer at proxmox.com
Wed Oct 25 17:59:59 CEST 2023
since work on the auto installer is happenning in parallel, now would be
a good point to move commonly used code into its own crate. Otherwise
the auto-installer will always have to play catch up with the ongoing
development of the tui installer.
I tried to split up the commits as much as possible, but there are two
larger ones, copying most the code over to the new repo and making the
switch. The former because it is difficult to pull apart the parts that
belong together. The latter needed to be this big as most local
occurences needed to be removed at the same time to avoid dependency
conflicts.
One last things that is missing, is the "InstallConfig" struct.
This should also be part of the common crate, but I need to look further
into how to make it possible that it can be created from structs of each
crate (tui, auto) as implementing a ::From can only be done within the
crate where the struct lives IIUC.
This series depends on the patches by Christoph to remove the global
unsafe setup info, version 2 [0]. Without those patches applied first,
this series will not apply.
[0] https://lists.proxmox.com/pipermail/pve-devel/2023-October/059628.html
Aaron Lauterer (12):
add proxmox-installer-common crate
common: copy common code from tui-installer
common: utils: add dependency for doc test
common: make InstallZfsOption public
common: disk_checks: make functions public
tui-installer: add dependency for new common crate
tui: switch to common crate
tui: remove now unused utils.rs
common: add installer_setup method
common: document installer_setup method
tui: use installer_setup from common cate
tui: remove unused read_json function
Cargo.toml | 1 +
proxmox-installer-common/Cargo.toml | 12 +
proxmox-installer-common/src/disk_checks.rs | 237 ++++++++++
proxmox-installer-common/src/lib.rs | 4 +
proxmox-installer-common/src/options.rs | 387 +++++++++++++++++
proxmox-installer-common/src/setup.rs | 368 ++++++++++++++++
.../src/utils.rs | 1 +
proxmox-tui-installer/Cargo.toml | 1 +
proxmox-tui-installer/src/main.rs | 51 +--
proxmox-tui-installer/src/options.rs | 403 +-----------------
proxmox-tui-installer/src/setup.rs | 324 +-------------
proxmox-tui-installer/src/system.rs | 2 +-
proxmox-tui-installer/src/views/bootdisk.rs | 248 +----------
proxmox-tui-installer/src/views/mod.rs | 2 +-
proxmox-tui-installer/src/views/timezone.rs | 4 +-
15 files changed, 1054 insertions(+), 991 deletions(-)
create mode 100644 proxmox-installer-common/Cargo.toml
create mode 100644 proxmox-installer-common/src/disk_checks.rs
create mode 100644 proxmox-installer-common/src/lib.rs
create mode 100644 proxmox-installer-common/src/options.rs
create mode 100644 proxmox-installer-common/src/setup.rs
rename {proxmox-tui-installer => proxmox-installer-common}/src/utils.rs (99%)
--
2.39.2
More information about the pve-devel
mailing list