From 3e3d24e12750a5a79925ae36b5e48598116d5636 Mon Sep 17 00:00:00 2001 From: Craig Jennings Date: Sun, 18 Jan 2026 13:25:00 -0600 Subject: Add CI/CD test infrastructure - Add Makefile with targets: all, test, test-unit, test-install, build, release, clean, lint - Add test-install.sh for automated VM installation testing - Add test configs: single-disk, mirror, raidz1, no-ssh, custom-locale - Add test-logs/ to .gitignore - Uses sshpass for SSH authentication to live ISO - Copies latest install-archzfs to VM before testing (allows testing without rebuild) - Supports --list to show available configs --- scripts/test-configs/custom-locale.conf | 13 +++++++++++++ scripts/test-configs/mirror.conf | 14 ++++++++++++++ scripts/test-configs/no-ssh.conf | 13 +++++++++++++ scripts/test-configs/raidz1.conf | 14 ++++++++++++++ scripts/test-configs/single-disk.conf | 13 +++++++++++++ 5 files changed, 67 insertions(+) create mode 100644 scripts/test-configs/custom-locale.conf create mode 100644 scripts/test-configs/mirror.conf create mode 100644 scripts/test-configs/no-ssh.conf create mode 100644 scripts/test-configs/raidz1.conf create mode 100644 scripts/test-configs/single-disk.conf (limited to 'scripts/test-configs') diff --git a/scripts/test-configs/custom-locale.conf b/scripts/test-configs/custom-locale.conf new file mode 100644 index 0000000..f0cda9b --- /dev/null +++ b/scripts/test-configs/custom-locale.conf @@ -0,0 +1,13 @@ +# Test config: Non-US locale (tests locale handling) + +HOSTNAME=test-locale +TIMEZONE=Europe/Berlin +LOCALE=de_DE.UTF-8 +KEYMAP=de + +DISKS=/dev/vda + +NO_ENCRYPT=yes +ROOT_PASSWORD=testpass + +ENABLE_SSH=yes diff --git a/scripts/test-configs/mirror.conf b/scripts/test-configs/mirror.conf new file mode 100644 index 0000000..82cfa91 --- /dev/null +++ b/scripts/test-configs/mirror.conf @@ -0,0 +1,14 @@ +# Test config: 2-disk mirror (tests EFI redundancy) + +HOSTNAME=test-mirror +TIMEZONE=UTC +LOCALE=en_US.UTF-8 +KEYMAP=us + +DISKS=/dev/vda,/dev/vdb +RAID_LEVEL=mirror + +NO_ENCRYPT=yes +ROOT_PASSWORD=testpass + +ENABLE_SSH=yes diff --git a/scripts/test-configs/no-ssh.conf b/scripts/test-configs/no-ssh.conf new file mode 100644 index 0000000..7b6ff63 --- /dev/null +++ b/scripts/test-configs/no-ssh.conf @@ -0,0 +1,13 @@ +# Test config: SSH disabled (tests console-only verification) + +HOSTNAME=test-nossh +TIMEZONE=UTC +LOCALE=en_US.UTF-8 +KEYMAP=us + +DISKS=/dev/vda + +NO_ENCRYPT=yes +ROOT_PASSWORD=testpass + +ENABLE_SSH=no diff --git a/scripts/test-configs/raidz1.conf b/scripts/test-configs/raidz1.conf new file mode 100644 index 0000000..4de8a78 --- /dev/null +++ b/scripts/test-configs/raidz1.conf @@ -0,0 +1,14 @@ +# Test config: 3-disk RAIDZ1 (tests RAID parity) + +HOSTNAME=test-raidz1 +TIMEZONE=UTC +LOCALE=en_US.UTF-8 +KEYMAP=us + +DISKS=/dev/vda,/dev/vdb,/dev/vdc +RAID_LEVEL=raidz1 + +NO_ENCRYPT=yes +ROOT_PASSWORD=testpass + +ENABLE_SSH=yes diff --git a/scripts/test-configs/single-disk.conf b/scripts/test-configs/single-disk.conf new file mode 100644 index 0000000..d540198 --- /dev/null +++ b/scripts/test-configs/single-disk.conf @@ -0,0 +1,13 @@ +# Test config: Single disk install (most common case) + +HOSTNAME=test-single +TIMEZONE=UTC +LOCALE=en_US.UTF-8 +KEYMAP=us + +DISKS=/dev/vda + +NO_ENCRYPT=yes +ROOT_PASSWORD=testpass + +ENABLE_SSH=yes -- cgit v1.2.3