From ad23a6241794bcb03369fa869b1f53437f5c93e0 Mon Sep 17 00:00:00 2001 From: humocs-man <251756307+humocs-man@users.noreply.github.com> Date: Sun, 27 Sep 2026 13:40:56 +0200 Subject: [PATCH] justfile changed --- Justfile | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/Justfile b/Justfile index dc81a4f..c9d46ee 100644 --- a/Justfile +++ b/Justfile @@ -202,6 +202,41 @@ rebuild-raw $target_image=("localhost/" + image_name) $tag=default_tag: && (_reb [group('Build Virtual Machine Image')] rebuild-iso $target_image=("localhost/" + image_name) $tag=default_tag: && (_rebuild-bib target_image tag "iso" "iso/iso.toml") +# ============================================================================== +# TEST TARGETS (nur lokale Test-Disks, Image bleibt sauber) +# ============================================================================== + +# Injiziert einen Test-User in ein gebautes Plattenabbild (qcow2/raw). +# Das Container-Image wird NICHT veraendert - nur die lokale Test-Disk. +# ISO braucht das nicht (Anaconda legt den User bei Installation an). +# Passwort: keine ':' und keine Shell-Sonderzeichen ($, `, !, \). +[group('Test')] +seed-testuser type="qcow2" user="test" password="test123": + #!/usr/bin/env bash + set -euo pipefail + if [[ "{{ type }}" == "iso" ]]; then + echo "FEHLER: Bei ISO den User im Anaconda-Installer anlegen, kein Seed noetig." + exit 1 + fi + if [[ "{{ password }}" == *:* ]]; then + echo "FEHLER: Passwort darf kein ':' enthalten (chpasswd-Format)." + exit 1 + fi + image_file="output/{{ type }}/disk.{{ type }}" + if [[ ! -f "${image_file}" ]]; then + echo "FEHLER: ${image_file} nicht gefunden. Erst 'just build-{{ type }} ...' ausfuehren." + exit 1 + fi + if ! command -v virt-customize >/dev/null; then + echo "FEHLER: virt-customize fehlt. Installieren mit: sudo dnf install -y guestfs-tools" + exit 1 + fi + echo "==> Injiziere Test-User '{{ user }}' in ${image_file} (nur Test-Disk)" + sudo virt-customize -a "${image_file}" \ + --selinux-relabel \ + --run-command "useradd -m -G wheel '{{ user }}' && echo '{{ user }}:{{ password }}' | chpasswd" + echo "==> Fertig. Login als '{{ user }}', sudo via wheel-Gruppe." + # ============================================================================== # RUN TARGETS # ==============================================================================