Manifest groups get a tier; only `default` is generated (make all TIER=..., --tier). Default: phyllomeos (GNOME + virt-manager) and phyllomeos-headless, Fedora 44, systemd-boot, CPU-agnostic hypervisor ingredient (hypervisor_type: any). guest tier: guest-server, guest-desktop. experimental: biosboot/grub, encrypted, rawhide. Generator clears stale recipes/dishes before writing. build-image.sh: --dish and --tier; deploy.sh: --tier. build-iso.yaml replaced by build-image.yaml: raw images for both editions on the fedora:host runner (TMPDIR=/var/tmp, max-parallel 1), attached with the flattened kickstarts to tagged releases. Live edition no longer built. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
51 lines
1.2 KiB
Bash
Executable File
51 lines
1.2 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# Function to execute a script
|
|
execute_script() {
|
|
local script_to_execute="$1"
|
|
echo "Executing: $script_to_execute"
|
|
"$script_to_execute" || {
|
|
echo "Script failed: $script_to_execute"
|
|
return 1 # Indicate failure
|
|
}
|
|
return 0 # Indicate success
|
|
}
|
|
|
|
# Usage: ./deploy.sh [--tier default|guest|experimental|all]
|
|
# Tier of dishes to generate and offer (default: default). Use "guest" to
|
|
# deploy a plain Fedora server/desktop VM on a Phyllome OS host.
|
|
TIER="${TIER:-default}"
|
|
while [[ $# -gt 0 ]]; do
|
|
case "$1" in
|
|
--tier)
|
|
TIER="$2"
|
|
shift 2
|
|
;;
|
|
*)
|
|
echo "Unknown argument: $1"
|
|
echo "Usage: $0 [--tier default|guest|experimental|all]"
|
|
exit 1
|
|
;;
|
|
esac
|
|
done
|
|
|
|
# Generate recipes and dishes before deployment (they are build products)
|
|
if ! (cd cook && make all TIER="$TIER"); then
|
|
echo "Failed to generate dishes in cook/ (see 'make all' in cook/)"
|
|
exit 1
|
|
fi
|
|
|
|
# Array of scripts
|
|
scripts=(
|
|
"./deploy/install-prerequisites-on-linux.sh"
|
|
"./deploy/core-count.sh"
|
|
"./deploy/system-memory.sh"
|
|
"./deploy/deploy-distro.sh"
|
|
)
|
|
|
|
# Iterate through the scripts and execute them
|
|
for script in "${scripts[@]}"; do
|
|
execute_script "$script"
|
|
done
|
|
|
|
echo "All scripts executed." |