[pve-devel] [PATCH v1 installer 12/18] auto-installer: add tests for answer file parsing

2024-01-23 Thread Aaron Lauterer
By matching the resulting json to be passed to the low level installer against known good ones. The environment info was gathered from one of our AMD Epyc Rome test servers to have a realistic starting point. Signed-off-by: Aaron Lauterer --- proxmox-auto-installer/tests/parse-answer.rs | 102

[pve-devel] [PATCH v1 installer 10/18] auto-installer: add utils

2024-01-23 Thread Aaron Lauterer
contains several utility structs and functions. For example: a simple pattern matcher that matches wildcards at the beginning or end of the filter. It currently uses a dedicated function (parse_answer) to generate the InstallConfig struct instead of a From implementation. This is because for now

[pve-devel] [PATCH v1 installer 17/18] auto-installer: add proxmox-installer-filter helper tool

2024-01-23 Thread Aaron Lauterer
The proxmox-installer-filter tool is a helper utility to fetch UDEV properties quickly and show them to the user. Additionally it allows the user to test out filters for the auto installer answer file to see which devices would be selected. Since this tool should be able to run outside of the ins

[pve-devel] [PATCH v1 installer 02/18] common: make InstallZfsOption members public

2024-01-23 Thread Aaron Lauterer
as they will be used directly by the auto installer Signed-off-by: Aaron Lauterer --- proxmox-installer-common/src/setup.rs | 10 +- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/proxmox-installer-common/src/setup.rs b/proxmox-installer-common/src/setup.rs index 03beb77.

[pve-devel] [PATCH v1 installer 15/18] auto-installer: use glob crate for pattern matching

2024-01-23 Thread Aaron Lauterer
Signed-off-by: Aaron Lauterer --- proxmox-auto-installer/Cargo.toml | 1 + proxmox-auto-installer/src/utils.rs | 48 +++-- 2 files changed, 19 insertions(+), 30 deletions(-) diff --git a/proxmox-auto-installer/Cargo.toml b/proxmox-auto-installer/Cargo.toml index 078a3

[pve-devel] [PATCH v1 installer 01/18] tui: common: move InstallConfig struct to common crate

2024-01-23 Thread Aaron Lauterer
It describes the data structure expected by the low-level-installer. We do this so we can use it in more than the TUI installer, for example the planned auto installer. Make the members public so we can easily implement a custom From method for each dependent crate. Signed-off-by: Aaron Lauterer

[pve-devel] [PATCH v1 installer 08/18] auto-installer: add answer file definition

2024-01-23 Thread Aaron Lauterer
Signed-off-by: Aaron Lauterer --- proxmox-auto-installer/src/answer.rs | 147 +++ proxmox-auto-installer/src/lib.rs| 1 + 2 files changed, 148 insertions(+) create mode 100644 proxmox-auto-installer/src/answer.rs diff --git a/proxmox-auto-installer/src/answer.rs b

[pve-devel] [PATCH v1 docs 18/18] installation: add unattended documentation

2024-01-23 Thread Aaron Lauterer
Signed-off-by: Aaron Lauterer --- Once we have defined the process on how it can be started, what the ISO is called and so forth, we can include that in the documentation. We should also add an example section to showcase the possibilities better. Maybe also explain how the post/pre commands can

[pve-devel] [PATCH v1 installer 14/18] auto-installer: add fetch answer binary

2024-01-23 Thread Aaron Lauterer
it is supposed to be run first and fetch an answer file. The initial implementation searches for a partition/filesystem called 'proxmoxinst' or 'PROXMOXINST' with an 'answer.toml' file in the root directory. Once it has an answer file, it will call the 'proxmox-auto-installer' and pipe in the con

[pve-devel] [PATCH v1 installer 13/18] auto-installer: add auto-installer binary

2024-01-23 Thread Aaron Lauterer
It expects the contents of an answer file via stdin. It will then be parsed and the JSON for the low level installer is generated. It then calls the low level installer directly. The output of the installaton progress is kept rather simple for now. If configured in the answer file, commands will

[pve-devel] [PATCH v1 installer 11/18] auto-installer: add simple logging

2024-01-23 Thread Aaron Lauterer
Log to stdout and the file the binary needs to set up. This is a first variant. By using the log crate macros we can change that in the future without too much effort. Signed-off-by: Aaron Lauterer --- proxmox-auto-installer/Cargo.toml | 2 ++ proxmox-auto-installer/src/lib.rs | 1 + proxmox-

[pve-devel] [PATCH v1 installer 05/18] low-level: add dump-udev command

2024-01-23 Thread Aaron Lauterer
Fetches UDEV device properties prepended with 'E:' for NICs and disks. The result is stored in its own JSON file. This information is needed to filter for specific devices. Mainly for the auto-installer for now. Signed-off-by: Aaron Lauterer --- Proxmox/Makefile| 1 + Proxmox/Sys/U

[pve-devel] [PATCH v1 installer 16/18] auto-installer: utils: make get_udev_index functions public

2024-01-23 Thread Aaron Lauterer
because we will need to access them directly in the future from a separate binary Signed-off-by: Aaron Lauterer --- proxmox-auto-installer/src/utils.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/proxmox-auto-installer/src/utils.rs b/proxmox-auto-installer/src/utils.

[pve-devel] [PATCH v1 installer 07/18] auto-installer: add dependencies

2024-01-23 Thread Aaron Lauterer
Signed-off-by: Aaron Lauterer --- proxmox-auto-installer/Cargo.toml | 4 1 file changed, 4 insertions(+) diff --git a/proxmox-auto-installer/Cargo.toml b/proxmox-auto-installer/Cargo.toml index 75cfb2c..211c605 100644 --- a/proxmox-auto-installer/Cargo.toml +++ b/proxmox-auto-installer/Car

[pve-devel] [PATCH v1 installer/docs 00/18] add automated/unattended installation

2024-01-23 Thread Aaron Lauterer
This patch series adds the possibility to do an automated / unattended installation of Proxmox VE. It assumes that the patch series to use JSON output on the low-level-installer is already applied [1]. The overall idea is that we will have a dedicated ISO for the unattended installation. It shoul

[pve-devel] [PATCH v1 installer 06/18] add auto-installer crate

2024-01-23 Thread Aaron Lauterer
Signed-off-by: Aaron Lauterer --- Cargo.toml| 1 + Makefile | 1 + proxmox-auto-installer/Cargo.toml | 10 ++ proxmox-auto-installer/src/lib.rs | 0 4 files changed, 12 insertions(+) create mode 100644 proxmox-auto-installer/Cargo.toml

[pve-devel] [PATCH v1 installer 09/18] auto-installer: add struct to hold udev info

2024-01-23 Thread Aaron Lauterer
Signed-off-by: Aaron Lauterer --- proxmox-auto-installer/src/lib.rs | 1 + proxmox-auto-installer/src/udevinfo.rs | 9 + 2 files changed, 10 insertions(+) create mode 100644 proxmox-auto-installer/src/udevinfo.rs diff --git a/proxmox-auto-installer/src/lib.rs b/proxmox-auto-instal

[pve-devel] [PATCH v1 installer 03/18] common: tui: use BTreeMap for predictable ordering

2024-01-23 Thread Aaron Lauterer
necessary for the disk selection and network interfaces maps to have tests with results that can be compared without much additional effort. Signed-off-by: Aaron Lauterer --- proxmox-installer-common/src/setup.rs | 8 proxmox-tui-installer/src/options.rs | 4 ++-- proxmox-tui-installer

[pve-devel] [PATCH v1 installer 04/18] Makefile: fix handling of multiple usr_bin files

2024-01-23 Thread Aaron Lauterer
Otherwise the build will fail once we define more than one USR_BIN file. Signed-off-by: Aaron Lauterer --- Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 601c836..f0c361b 100644 --- a/Makefile +++ b/Makefile @@ -104,7 +104,7 @@ install: $(I

Re: [pve-devel] [PATCH qemu] add patch to work around stuck guest IO with iothread and VirtIO block/SCSI

2024-01-23 Thread dea
Very good news Fiona For quite some time I have been using patchlevel 5 of the pve-qemu package (the one that has CPU overloads) because package 4-6 gives me stuck storage problems, as you correctly describe in your post. Very thanks ! Il 23/01/24 14:13, Fiona Ebner ha scritto: This e

[pve-devel] [PATCH qemu] add patch to work around stuck guest IO with iothread and VirtIO block/SCSI

2024-01-23 Thread Fiona Ebner
This essentially repeats commit 6b7c181 ("add patch to work around stuck guest IO with iothread and VirtIO block/SCSI") with an added fix for the SCSI event virtqueue, which requires special handling. This is to avoid the issue [4] that made the revert 2a49e66 ("Revert "add patch to work around stu

Re: [pve-devel] [PATCH v2 storage] lvm: improve warning in case vgs output contains unexpected lines

2024-01-23 Thread Friedrich Weber
On 19/01/2024 12:31, Fiona Ebner wrote: > Am 19.01.24 um 11:59 schrieb Fiona Ebner: >> Am 18.01.24 um 12:11 schrieb Friedrich Weber: >>> diff --git a/src/PVE/Storage/LVMPlugin.pm b/src/PVE/Storage/LVMPlugin.pm >>> index 4b951e7..5377823 100644 >>> --- a/src/PVE/Storage/LVMPlugin.pm >>> +++ b/src/PV

Re: [pve-devel] [PATCH container] fix #5194: delete environment variables set by pve

2024-01-23 Thread Fabian Grünbichler
On January 22, 2024 11:12 am, Folke Gleumes wrote: > proxmox-perl-rs set's SSL_CERT_{DIR,FILE}, which can break ssl in > containers if their certificate store can't be found in the same spot. > This patch explicitly unsets those variables before starting the > container. after a short talk with Wo