diff options
| -rw-r--r-- | Fedora.kiwi | 1 | ||||
| -rw-r--r-- | VARIANTS.md | 2 | ||||
| -rwxr-xr-x | config.sh | 7 | ||||
| -rw-r--r-- | teams/server.xml | 152 | ||||
| -rw-r--r-- | tmt/plans/server/guest/build-generic.fmf | 9 | ||||
| -rw-r--r-- | tmt/plans/server/host/build-generic.fmf | 9 |
6 files changed, 180 insertions, 0 deletions
diff --git a/Fedora.kiwi b/Fedora.kiwi index b19d43f..5e9b832 100644 --- a/Fedora.kiwi +++ b/Fedora.kiwi @@ -35,6 +35,7 @@ <include from="this://./teams/cloud/cloud.xml"/> <include from="this://./teams/cloud/container.xml"/> <include from="this://./teams/cloud/vagrant.xml"/> + <include from="this://./teams/server.xml"/> <include from="this://./teams/workstation.xml"/> <include from="this://./teams/kde.xml"/> <include from="this://./teams/xfce.xml"/> diff --git a/VARIANTS.md b/VARIANTS.md index 4b8bf3a..56c6ea8 100644 --- a/VARIANTS.md +++ b/VARIANTS.md @@ -10,6 +10,8 @@ | | | `Cloud-Base-GCE` | | Base Cloud Edition for Vagrant | `oem` | `Cloud-Base-Vagrant-libvirt` | | | | `Cloud-Base-Vagrant-VirtualBox` | +| Server Edition as a VM guest | `oem` | `Server-Guest-Generic` | +| Server Edition as a hypervisor | `oem` | `Server-Host-Generic` | | Base Container | `oci` | `Container-Base-Generic-Init` | | | | `Container-Base-Generic-Minimal` | | | | `Container-Base-Generic` | @@ -132,6 +132,13 @@ if [[ "$kiwi_profiles" == *"Disk"* ]]; then fi fi +if [[ "$kiwi_profiles" == *"Server"* ]]; then + # Trigger lvm-devices-import.path and .service to create + # a new /etc/lvm/devices/system.devices for the root VG. + rm -f /etc/lvm/devices/system.devices + touch /etc/lvm/devices/auto-import-rootvg +fi + if [[ "$kiwi_profiles" == *"Azure"* ]]; then cat > /etc/ssh/sshd_config.d/50-client-alive-interval.conf << EOF ClientAliveInterval 120 diff --git a/teams/server.xml b/teams/server.xml new file mode 100644 index 0000000..81f8b01 --- /dev/null +++ b/teams/server.xml @@ -0,0 +1,152 @@ +<image> + <profiles> + <profile name="ServerCore" description="Server Edition core packages"> + <requires profile="BootCore"/> + </profile> + <profile name="ServerVMDisk" description="Server Edition VM disk configuration"> + <requires profile="ServerCore"/> + </profile> + <profile name="ServerDisk" description="Server Edition disk configuration"> + <requires profile="ServerCore"/> + </profile> + <profile name="Server-Guest-Generic" description="Generic Server Guest Image"> + <requires profile="ServerVMDisk"/> + </profile> + <profile name="Server-Host-Generic" description="Generic Server Host Image"> + <requires profile="ServerDisk"/> + </profile> + </profiles> + <preferences profiles="ServerVMDisk" arch="x86_64,aarch64"> + <type image="oem" format="qcow2" + filesystem="xfs" + kernelcmdline="no_timer_check console=tty1 console=ttyS0,115200n8" + devicepersistency="by-uuid" + bootpartition="true" bootpartsize="1000" bootfilesystem="xfs" efipartsize="100" firmware="uefi" + rootfs_label="fedora" + > + <bootloader name="grub2" console="serial" timeout="0"/> + <size unit="G">10</size> + <systemdisk> + <volume name="@root"/> + </systemdisk> + <oemconfig> + <oem-resize>false</oem-resize> + </oemconfig> + </type> + </preferences> + <preferences profiles="ServerVMDisk" arch="ppc64le"> + <type image="oem" format="qcow2" + filesystem="xfs" + kernelcmdline="no_timer_check console=tty1 console=ttyS0,115200n8" + devicepersistency="by-uuid" + bootpartition="true" bootpartsize="1000" bootfilesystem="xfs" firmware="ofw" + rootfs_label="fedora" + > + <bootloader name="grub2" console="serial" timeout="0"/> + <size unit="G">10</size> + <systemdisk> + <volume name="@root"/> + </systemdisk> + <oemconfig> + <oem-resize>false</oem-resize> + </oemconfig> + </type> + </preferences> + <preferences profiles="ServerVMDisk" arch="s390x"> + <type image="oem" format="qcow2" + filesystem="xfs" + kernelcmdline="no_timer_check console=tty1 console=ttyS0,115200n8" + devicepersistency="by-uuid" + bootpartition="true" bootpartsize="1000" bootfilesystem="xfs" + rootfs_label="fedora" + > + <bootloader name="zipl" timeout="1"/> + <size unit="G">10</size> + <systemdisk> + <volume name="@root"/> + </systemdisk> + <oemconfig> + <oem-resize>false</oem-resize> + </oemconfig> + </type> + </preferences> + <preferences profiles="ServerDisk" arch="x86_64,aarch64"> + <type image="oem" + filesystem="xfs" + devicepersistency="by-uuid" + bootpartition="true" bootpartsize="1000" bootfilesystem="xfs" efipartsize="100" firmware="uefi" + rootfs_label="fedora" + > + <bootloader name="grub2" console="serial" timeout="0"/> + <size unit="G">10</size> + <systemdisk> + <volume name="@root"/> + </systemdisk> + <oemconfig> + <oem-resize>false</oem-resize> + </oemconfig> + </type> + </preferences> + <preferences profiles="ServerDisk" arch="ppc64le"> + <type image="oem" + filesystem="xfs" + devicepersistency="by-uuid" + bootpartition="true" bootpartsize="1000" bootfilesystem="xfs" firmware="ofw" + rootfs_label="fedora" + > + <bootloader name="grub2" console="serial" timeout="0"/> + <size unit="G">10</size> + <systemdisk> + <volume name="@root"/> + </systemdisk> + <oemconfig> + <oem-resize>false</oem-resize> + </oemconfig> + </type> + </preferences> + <preferences profiles="ServerDisk" arch="s390x"> + <type image="oem" + filesystem="xfs" + devicepersistency="by-uuid" + bootpartition="true" bootpartsize="1000" bootfilesystem="xfs" + rootfs_label="fedora" + > + <bootloader name="zipl" timeout="1"/> + <size unit="G">10</size> + <systemdisk> + <volume name="@root"/> + </systemdisk> + <oemconfig> + <oem-resize>false</oem-resize> + </oemconfig> + </type> + </preferences> + <packages type="bootstrap" patternType="plusRecommended" profiles="ServerCore"> + <package name="fedora-release-server"/> + </packages> + <packages type="image" patternType="plusRecommended" profiles="ServerCore"> + <namedCollection name="server-product-environment"/> + <namedCollection name="domain-client"/> + <namedCollection name="arm-tools" arch="aarch64"/> + <ignore name="initial-setup-gui"/> + <ignore name="plymouth"/> + <package name="glibc-all-langpacks"/> + <package name="initial-setup"/> + <package name="lvm2"/> + <package name="xfsprogs"/> + </packages> + <packages type="image" patternType="plusRecommended" profiles="Server-Guest-Generic"> + <ignore name="dracut-config-rescue"/> + <ignore name="kernel"/> + <ignore name="*-firmware"/> + <ignore name="smartmontools"/> + <ignore name="smartmontools-selinux"/> + <namedCollection name="guest-agents"/> + </packages> + <packages type="image" patternType="plusRecommended" profiles="Server-Host-Generic"> + <namedCollection name="container-management"/> + <package name="dracut-config-rescue"/> + <package name="kernel"/> + <package name="linux-firmware"/> + </packages> +</image> diff --git a/tmt/plans/server/guest/build-generic.fmf b/tmt/plans/server/guest/build-generic.fmf new file mode 100644 index 0000000..252823d --- /dev/null +++ b/tmt/plans/server/guest/build-generic.fmf @@ -0,0 +1,9 @@ +summary: Build Generic guest image +discover: + how: fmf +environment: + image_type: oem + image_profile: Server-Guest-Generic + kiwi_file: Fedora.kiwi +execute: + how: tmt diff --git a/tmt/plans/server/host/build-generic.fmf b/tmt/plans/server/host/build-generic.fmf new file mode 100644 index 0000000..d2279f2 --- /dev/null +++ b/tmt/plans/server/host/build-generic.fmf @@ -0,0 +1,9 @@ +summary: Build Generic host image +discover: + how: fmf +environment: + image_type: oem + image_profile: Server-Host-Generic + kiwi_file: Fedora.kiwi +execute: + how: tmt |