From 0c86369274c23e6e5145bad7a5986d159ae99a27 Mon Sep 17 00:00:00 2001 From: Matus Marhefka Date: Wed, 12 May 2021 08:45:07 +0200 Subject: [PATCH 1/3] install_vm.py: add possibility to install GUI system --- tests/install_vm.py | 18 +++++++++++++++++- tests/kickstarts/test_suite.cfg | 18 ++++++++---------- 2 files changed, 25 insertions(+), 11 deletions(-) diff --git a/tests/install_vm.py b/tests/install_vm.py index 3aea5fc4b69..22a1814dfd8 100755 --- a/tests/install_vm.py +++ b/tests/install_vm.py @@ -94,6 +94,12 @@ def parse_args(): choices=['secureboot', 'normal'], help="Perform UEFI based installation, optionally with secure boot support." ) + parser.add_argument( + "--install-gui", + dest="install_gui", + action='store_true', + help="Perform a GUI installation (default is installation without GUI)." + ) return parser.parse_args() @@ -156,6 +162,16 @@ def main(): "part /boot --fstype=xfs --size=512", "part /boot --fstype=xfs --size=312\npart /boot/efi --fstype=efi --size=200" ) + if data.install_gui: + gui_group="\n%packages\n@^graphical-server-environment\n" + if data.distro == "fedora": + gui_group="\n%packages\n@^Fedora Workstation\n" + content = content.replace("\n%packages\n", gui_group) + data.graphics_opt = "vnc" + data.inst_opt = "inst.graphical" + else: + data.graphics_opt = "none" + data.inst_opt = "inst.cmdline" outfile.write(content) data.kickstart = tmp_kickstart print("Using kickstart file: {0}".format(data.kickstart)) @@ -169,7 +185,7 @@ def main(): # The kernel option 'net.ifnames=0' is used to disable predictable network # interface names, for more details see: # https://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames/ - command = 'virt-install --connect={libvirt} --name={domain} --memory={ram} --vcpus={cpu} --network {network} --disk {disk_spec} --initrd-inject={kickstart} --extra-args="inst.ks=file:/{ks_basename} ksdevice=eth0 net.ifnames=0 console=ttyS0,115200" --serial pty --graphics=none --noautoconsole --rng /dev/random --wait=-1 --location={url}'.format(**data.__dict__) + command = 'virt-install --connect={libvirt} --name={domain} --memory={ram} --vcpus={cpu} --network {network} --disk {disk_spec} --initrd-inject={kickstart} --extra-args="inst.ks=file:/{ks_basename} {inst_opt} ksdevice=eth0 net.ifnames=0 console=ttyS0,115200" --serial pty --graphics={graphics_opt} --noautoconsole --rng /dev/random --wait=-1 --location={url}'.format(**data.__dict__) if data.uefi == "normal": command = command+" --boot uefi" if data.uefi == "secureboot": diff --git a/tests/kickstarts/test_suite.cfg b/tests/kickstarts/test_suite.cfg index 2ee59cee073..d8a2344633b 100644 --- a/tests/kickstarts/test_suite.cfg +++ b/tests/kickstarts/test_suite.cfg @@ -12,8 +12,6 @@ # Install a fresh new system (optional) install -skipx -text # To enable custom repositories for the machine after installation use: #repo --name=myrepo --baseurl=http://... @@ -86,21 +84,21 @@ part pv.01 --grow --size=1 volgroup VolGroup --pesize=4096 pv.01 # Create particular logical volumes (optional) -logvol / --fstype=xfs --name=root --vgname=VolGroup --size=8192 --grow +logvol / --fstype=xfs --name=LogVol06 --vgname=VolGroup --size=3192 --grow +# Ensure /usr Located On Separate Partition +logvol /usr --fstype=xfs --name=LogVol08 --vgname=VolGroup --size=5000 --fsoptions="nodev" +# Ensure /opt Located On Separate Partition +logvol /opt --fstype=xfs --name=LogVol09 --vgname=VolGroup --size=1024 --fsoptions="nodev,nosuid" +# Ensure /srv Located On Separate Partition +logvol /srv --fstype=xfs --name=LogVol10 --vgname=VolGroup --size=1024 --fsoptions="nodev,nosuid" # Ensure /home Located On Separate Partition logvol /home --fstype=xfs --name=home --vgname=VolGroup --size=1024 --fsoptions="nodev" -# Ensure /usr Located On Separate Partition -logvol /usr --fstype=xfs --name=usr --vgname=VolGroup --size=2048 --fsoptions="nodev" # Ensure /tmp Located On Separate Partition logvol /tmp --fstype=xfs --name=tmp --vgname=VolGroup --size=1024 --fsoptions="nodev,nosuid,noexec" -# Ensure /opt Located On Separate Partition -logvol /opt --fstype=xfs --name=opt --vgname=VolGroup --size=512 --fsoptions="nodev,nosuid" -# Ensure /srv Located On Separate Partition -logvol /srv --fstype=xfs --name=srv --vgname=VolGroup --size=512 --fsoptions="nodev,nosuid" # Ensure /var/tmp Located On Separate Partition logvol /var/tmp --fstype=xfs --name=vartmp --vgname=VolGroup --size=1024 --fsoptions="nodev,nosuid,noexec" # Ensure /var Located On Separate Partition -logvol /var --fstype=xfs --name=var --vgname=VolGroup --size=2048 --fsoptions="nodev" +logvol /var --fstype=xfs --name=var --vgname=VolGroup --size=3072 --fsoptions="nodev" # Ensure /var/log Located On Separate Partition logvol /var/log --fstype=xfs --name=log --vgname=VolGroup --size=1024 --fsoptions="nodev,nosuid,noexec" # Ensure /var/log/audit Located On Separate Partition From cb825b2a47ad83ca556389e48d3f30b3cb6ed086 Mon Sep 17 00:00:00 2001 From: Matus Marhefka Date: Wed, 12 May 2021 09:49:38 +0200 Subject: [PATCH 2/3] install_vm.py: switch to Fedora 34 by default Also updated kickstart file as `install` command has been deprecated in Fedora 34: https://docs.fedoraproject.org/my/fedora/f34/release-notes/sysadmin/Installation/#sect-kickstart-deprecated-removed --- tests/install_vm.py | 2 +- tests/kickstarts/test_suite.cfg | 3 --- 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/tests/install_vm.py b/tests/install_vm.py index 22a1814dfd8..ac15260b862 100755 --- a/tests/install_vm.py +++ b/tests/install_vm.py @@ -115,7 +115,7 @@ def main(): if not data.url: if data.distro == "fedora": - data.url = "https://download.fedoraproject.org/pub/fedora/linux/releases/31/Everything/x86_64/os" + data.url = "https://download.fedoraproject.org/pub/fedora/linux/releases/34/Everything/x86_64/os" elif data.distro == "centos7": data.url = "http://mirror.centos.org/centos/7/os/x86_64" if not data.url: diff --git a/tests/kickstarts/test_suite.cfg b/tests/kickstarts/test_suite.cfg index d8a2344633b..13b2f629ed6 100644 --- a/tests/kickstarts/test_suite.cfg +++ b/tests/kickstarts/test_suite.cfg @@ -10,9 +10,6 @@ # https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/Installation_Guide/sect-kickstart-syntax.html # http://usgcb.nist.gov/usgcb/content/configuration/workstation-ks.cfg -# Install a fresh new system (optional) -install - # To enable custom repositories for the machine after installation use: #repo --name=myrepo --baseurl=http://... &&YUM_EXTRA_REPO&& From 8e85dd8c2c7cbcd36a68c8f1d0c4fe2eee43b541 Mon Sep 17 00:00:00 2001 From: Matus Marhefka Date: Wed, 12 May 2021 11:09:29 +0200 Subject: [PATCH 3/3] Increase /usr size in SSGTS kickstart to be able to install F34 with GUI --- tests/kickstarts/test_suite.cfg | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/kickstarts/test_suite.cfg b/tests/kickstarts/test_suite.cfg index 13b2f629ed6..3c3300ef46d 100644 --- a/tests/kickstarts/test_suite.cfg +++ b/tests/kickstarts/test_suite.cfg @@ -83,11 +83,11 @@ volgroup VolGroup --pesize=4096 pv.01 # Create particular logical volumes (optional) logvol / --fstype=xfs --name=LogVol06 --vgname=VolGroup --size=3192 --grow # Ensure /usr Located On Separate Partition -logvol /usr --fstype=xfs --name=LogVol08 --vgname=VolGroup --size=5000 --fsoptions="nodev" +logvol /usr --fstype=xfs --name=LogVol08 --vgname=VolGroup --size=5512 --fsoptions="nodev" # Ensure /opt Located On Separate Partition logvol /opt --fstype=xfs --name=LogVol09 --vgname=VolGroup --size=1024 --fsoptions="nodev,nosuid" # Ensure /srv Located On Separate Partition -logvol /srv --fstype=xfs --name=LogVol10 --vgname=VolGroup --size=1024 --fsoptions="nodev,nosuid" +logvol /srv --fstype=xfs --name=LogVol10 --vgname=VolGroup --size=512 --fsoptions="nodev,nosuid" # Ensure /home Located On Separate Partition logvol /home --fstype=xfs --name=home --vgname=VolGroup --size=1024 --fsoptions="nodev" # Ensure /tmp Located On Separate Partition