diff --git a/.gitignore b/.gitignore index 2935e64..74889e6 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ *.img -*.qcow2 \ No newline at end of file +*.qcow2 +*.tmp \ No newline at end of file diff --git a/createhdds.py b/createhdds.py index 93e4e52..014b882 100755 --- a/createhdds.py +++ b/createhdds.py @@ -61,9 +61,9 @@ def supported_arches(): """Provides a list of the arches for which virt-install images can be built on this host. """ - powerpc_arches = ['ppc64', 'ppc64le', 'noarch'] - intel_arches = ['i686', 'x86_64', 'noarch'] - aarch64_arches = ['aarch64', 'armv7l'] + powerpc_arches = ['ppc64le', 'noarch'] + intel_arches = ['x86_64', 'noarch'] + aarch64_arches = ['aarch64'] if CPUARCH in powerpc_arches: supported_arches = powerpc_arches elif CPUARCH in intel_arches: @@ -280,10 +280,10 @@ def create(self, baseurl, textinst, retries=3): tmpfile = "{0}.tmp".format(self.filename) arch = self.arch rockydir = 'rocky/linux' - memsize = '3072' + memsize = '4096' + timeout = 3600 if arch in ['ppc64','ppc64le']: rockydir = 'rocky-secondary' - memsize = '4096' try: locbase = "https://download.rockylinux.org/{0}/rocky".format(baseurl) @@ -291,6 +291,9 @@ def create(self, baseurl, textinst, retries=3): loctmp = "{0}/{1}/BaseOS/{2}/os" ksfile = self.kickstart_file xargs = "inst.ks=file:/{0}".format(ksfile) + if arch == "ppc64le": + # --boot uefi breaks on ppc64le + bootopts = self.bootopts.replace("uefi", "") args = ["virt-install", "--disk", "size={0},path={1}".format(self.size, tmpfile), "--os-variant", shortid, "-x", xargs, "--initrd-inject", "{0}/{1}".format(SCRIPTDIR, ksfile), "--location", @@ -317,7 +320,7 @@ def create(self, baseurl, textinst, retries=3): logger.debug("Command: %s", ' '.join(args)) if not textinst: logger.info("Connect via VNC to monitor") - ret = subprocess.call(args, timeout=3600) + ret = subprocess.call(args, timeout=timeout) except subprocess.TimeoutExpired: logger.warning("Image creation timed out!") # clean up the domain again diff --git a/desktop-8.ks b/desktop-8.ks index c070955..39ac9db 100644 --- a/desktop-8.ks +++ b/desktop-8.ks @@ -1,13 +1,15 @@ bootloader --location=mbr network --bootproto=dhcp -url --url="https://download.rockylinux.org/pub/rocky/8/BaseOS/x86_64/os/" +url --url="https://download.rockylinux.org/pub/rocky/$releasever/BaseOS/$basearch/os/" +# AppStream repo must be defined to provide @^workstation-product-environment group +repo --name=AppStream --baseurl=https://download.rockylinux.org/pub/rocky/$releasever/AppStream/$basearch/os/ lang en_US.UTF-8 keyboard us timezone --utc America/New_York clearpart --all autopart rootpw --plaintext weakpassword -user --name=test --password=weakpassword --plaintext --group=wheel +user --name=test --password=weakpassword --plaintext --groups=wheel firstboot --enable poweroff text diff --git a/desktop.ks b/desktop.ks index 6696228..c85ca56 100644 --- a/desktop.ks +++ b/desktop.ks @@ -1,6 +1,9 @@ bootloader --location=mbr network --bootproto=dhcp -url --url="https://download.rockylinux.org/pub/rocky/9/BaseOS/x86_64/os/" +url --url=https://download.rockylinux.org/pub/rocky/$releasever/BaseOS/$basearch/os/ +# AppStream repo must be defined to provide @^workstation-product-environment group +repo --name=AppStream --baseurl=https://download.rockylinux.org/pub/rocky/$releasever/AppStream/$basearch/os/ +repo --name=CRB --baseurl=https://download.rockylinux.org/pub/rocky/$releasever/CRB/$basearch/os/ lang en_US.UTF-8 keyboard us timezone --utc America/New_York diff --git a/desktopencrypt-8.ks b/desktopencrypt-8.ks index 3dee3f2..7283b3c 100644 --- a/desktopencrypt-8.ks +++ b/desktopencrypt-8.ks @@ -1,6 +1,8 @@ bootloader --location=mbr network --bootproto=dhcp -url --url="https://download.rockylinux.org/pub/rocky/8/BaseOS/x86_64/os/" +url --url="https://download.rockylinux.org/pub/rocky/$releasever/BaseOS/$basearch/os/" +# AppStream repo must be defined to provide @^workstation-product-environment group +repo --name=AppStream --baseurl=https://download.rockylinux.org/pub/rocky/$releasever/AppStream/$basearch/os/ lang en_US.UTF-8 keyboard us timezone --utc America/New_York diff --git a/desktopencrypt-aarch64-8.ks b/desktopencrypt-aarch64-8.ks deleted file mode 100644 index 1c538f2..0000000 --- a/desktopencrypt-aarch64-8.ks +++ /dev/null @@ -1,21 +0,0 @@ -bootloader --location=mbr --append="console=tty0 quiet" -network --bootproto=dhcp -url --url="https://download.rockylinux.org/pub/rocky/8/BaseOS/aarch64/os/" -lang en_US.UTF-8 -keyboard us -timezone --utc America/New_York -clearpart --all -autopart --encrypted --passphrase=weakpassword -rootpw --plaintext weakpassword -user --name=test --password=weakpassword --plaintext --groups=wheel -firstboot --enable -poweroff -text - -%packages -@^workstation-product-environment --selinux-policy-minimum -%end - -%addon com_redhat_kdump --enable --reserve-mb='auto' -%end diff --git a/desktopencrypt-aarch64.ks b/desktopencrypt-aarch64.ks deleted file mode 100644 index 1253427..0000000 --- a/desktopencrypt-aarch64.ks +++ /dev/null @@ -1,21 +0,0 @@ -bootloader --location=mbr --append="console=tty0 quiet" -network --bootproto=dhcp -url --url="https://download.rockylinux.org/pub/rocky/9/BaseOS/aarch64/os/" -lang en_US.UTF-8 -keyboard us -timezone --utc America/New_York -clearpart --all -autopart --encrypted --passphrase=weakpassword -rootpw --plaintext weakpassword -user --name=test --password=weakpassword --plaintext --groups=wheel -firstboot --enable -poweroff -text - -%packages -@^workstation-product-environment --selinux-policy-minimum -%end - -%addon com_redhat_kdump --enable --reserve-mb='auto' -%end diff --git a/desktopencrypt.ks b/desktopencrypt.ks index 3c58a80..c7871fd 100644 --- a/desktopencrypt.ks +++ b/desktopencrypt.ks @@ -1,6 +1,9 @@ bootloader --location=mbr network --bootproto=dhcp -url --url="https://download.rockylinux.org/pub/rocky/9/BaseOS/x86_64/os/" +url --url=https://download.rockylinux.org/pub/rocky/$releasever/BaseOS/$basearch/os/ +# AppStream repo must be defined to provide @^workstation-product-environment group +repo --name=AppStream --baseurl=https://download.rockylinux.org/pub/rocky/$releasever/AppStream/$basearch/os/ +repo --name=CRB --baseurl=https://download.rockylinux.org/pub/rocky/$releasever/CRB/$basearch/os/ lang en_US.UTF-8 keyboard us timezone --utc America/New_York diff --git a/hdds.json b/hdds.json index cc074af..a6d3b4a 100644 --- a/hdds.json +++ b/hdds.json @@ -109,6 +109,35 @@ } ] }, + { + "name" : "ks-10", + "size" : "100M", + "parts" : [ + { + "filesystem" : "ext4", + "type" : "p", + "start" : "4096", + "end" : "-1" + } + ], + "uploads" : [ + { + "part" : "1", + "target" : "/root-user-crypted-net.ks", + "source" : "root-user-crypted-net-10.ks" + }, + { + "part" : "1", + "target" : "/freeipa.ks", + "source" : "freeipa.ks" + }, + { + "part" : "1", + "target" : "/freeipaclient.ks", + "source" : "freeipaclient.ks" + } + ] + }, { "name" : "updates_img", "size" : "100M", @@ -155,7 +184,8 @@ "name" : "minimal", "releases" : { "8" : ["x86_64", "aarch64"], - "9" : ["x86_64", "aarch64"] + "9" : ["x86_64", "aarch64"], + "10" : ["x86_64", "aarch64"] }, "size" : "15", "bootopts": "uefi" @@ -164,15 +194,17 @@ "name" : "minimal-bios", "releases" : { "8" : ["x86_64"], - "9" : ["x86_64"] + "9" : ["x86_64"], + "10" : ["x86_64"] }, "size" : "15" }, { "name" : "desktop", "releases" : { - "8": ["x86_64", "aarch64"], - "9" : ["x86_64", "aarch64"] + "8" : ["x86_64"], + "9" : ["x86_64"], + "10" : ["x86_64"] }, "size" : "20", "bootopts": "uefi" @@ -180,8 +212,9 @@ { "name" : "desktopencrypt", "releases" : { - "8" : ["x86_64", "aarch64"], - "9" : ["x86_64", "aarch64"] + "8" : ["x86_64"], + "9" : ["x86_64"], + "10" : ["x86_64"] }, "size" : "20", "bootopts": "uefi" @@ -190,7 +223,8 @@ "name" : "server", "releases" : { "8" : ["x86_64", "aarch64"], - "9" : ["x86_64", "aarch64"] + "9" : ["x86_64", "aarch64"], + "10" : ["x86_64", "aarch64"] }, "size" : "9", "bootopts": "uefi" @@ -199,7 +233,8 @@ "name" : "support", "releases" : { "8" : ["x86_64", "aarch64"], - "9" : ["x86_64", "aarch64"] + "9" : ["x86_64", "aarch64"], + "10" : ["x86_64", "aarch64"] }, "size" : "36", "bootopts": "uefi" diff --git a/minimal-10.ks b/minimal-10.ks new file mode 100644 index 0000000..4507559 --- /dev/null +++ b/minimal-10.ks @@ -0,0 +1,25 @@ +bootloader --location=mbr +network --bootproto=dhcp +url --url=https://download.rockylinux.org/pub/rocky/$releasever/BaseOS/$basearch/os/ +# AppStream repo must be defined to provide dns-masq and targetcli package access +repo --name=AppStream --baseurl=https://download.rockylinux.org/pub/rocky/$releasever/AppStream/$basearch/os/ +repo --name=CRB --baseurl=https://download.rockylinux.org/pub/rocky/$releasever/CRB/$basearch/os/ +lang en_US.UTF-8 +keyboard us +timezone --utc America/New_York +clearpart --all +autopart +rootpw weakpassword +poweroff +text + +%packages +@core +%end + +%addon com_redhat_kdump --enable --reserve-mb='auto' +%end + +%post +touch $INSTALL_ROOT/home/home_preserved +%end diff --git a/minimal-8.ks b/minimal-8.ks deleted file mode 100644 index ec4c19d..0000000 --- a/minimal-8.ks +++ /dev/null @@ -1,22 +0,0 @@ -bootloader --location=mbr -network --bootproto=dhcp -url --url="https://download.rockylinux.org/pub/rocky/8/BaseOS/x86_64/os/" -lang en_US.UTF-8 -keyboard us -timezone --utc America/New_York -clearpart --all -autopart -rootpw weakpassword -poweroff -text - -%packages -@core -%end - -%addon com_redhat_kdump --enable --reserve-mb='auto' -%end - -%post -touch $INSTALL_ROOT/home/home_preserved -%end diff --git a/minimal-bios-8.ks b/minimal-bios-8.ks index ec4c19d..897750f 100644 --- a/minimal-bios-8.ks +++ b/minimal-bios-8.ks @@ -1,6 +1,6 @@ bootloader --location=mbr network --bootproto=dhcp -url --url="https://download.rockylinux.org/pub/rocky/8/BaseOS/x86_64/os/" +url --url="https://download.rockylinux.org/pub/rocky/$releasever/BaseOS/$basearch/os/" lang en_US.UTF-8 keyboard us timezone --utc America/New_York diff --git a/minimal-bios.ks b/minimal-bios.ks index 37803de..d70c671 100644 --- a/minimal-bios.ks +++ b/minimal-bios.ks @@ -1,6 +1,6 @@ bootloader --location=mbr network --bootproto=dhcp -url --url="https://download.rockylinux.org/pub/rocky/9/BaseOS/x86_64/os/" +url --url="https://download.rockylinux.org/pub/rocky/$releasever/BaseOS/$basearch/os/" lang en_US.UTF-8 keyboard us timezone --utc America/New_York diff --git a/minimal-uefi.ks b/minimal-uefi.ks index 0e8f82a..897750f 100644 --- a/minimal-uefi.ks +++ b/minimal-uefi.ks @@ -1,6 +1,6 @@ bootloader --location=mbr network --bootproto=dhcp -url --url="https://download.rockylinux.org/pub/rocky/9/BaseOS/x86_64/os/" +url --url="https://download.rockylinux.org/pub/rocky/$releasever/BaseOS/$basearch/os/" lang en_US.UTF-8 keyboard us timezone --utc America/New_York diff --git a/minimal.ks b/minimal.ks index 0e8f82a..897750f 100644 --- a/minimal.ks +++ b/minimal.ks @@ -1,6 +1,6 @@ bootloader --location=mbr network --bootproto=dhcp -url --url="https://download.rockylinux.org/pub/rocky/9/BaseOS/x86_64/os/" +url --url="https://download.rockylinux.org/pub/rocky/$releasever/BaseOS/$basearch/os/" lang en_US.UTF-8 keyboard us timezone --utc America/New_York diff --git a/server-10.ks b/server-10.ks new file mode 100644 index 0000000..b4f7be7 --- /dev/null +++ b/server-10.ks @@ -0,0 +1,23 @@ +bootloader --location=mbr +network --bootproto=dhcp +url --url=https://download.rockylinux.org/pub/rocky/$releasever/BaseOS/$basearch/os/ +# AppStream repo must be defined to provide dns-masq and targetcli package access +repo --name=AppStream --baseurl=https://download.rockylinux.org/pub/rocky/$releasever/AppStream/$basearch/os/ +repo --name=CRB --baseurl=https://download.rockylinux.org/pub/rocky/$releasever/CRB/$basearch/os/ +lang en_US.UTF-8 +keyboard us +timezone --utc America/New_York +clearpart --all +autopart +rootpw weakpassword +user --name=test --password=weakpassword --plaintext --groups=wheel +poweroff +text + +%packages +@^server-product-environment +plymouth-system-theme +%end + +%addon com_redhat_kdump --enable --reserve-mb='auto' +%end diff --git a/server-8.ks b/server-8.ks deleted file mode 100644 index ee1f223..0000000 --- a/server-8.ks +++ /dev/null @@ -1,20 +0,0 @@ -bootloader --location=mbr -network --bootproto=dhcp -url --url="https://download.rockylinux.org/pub/rocky/8/BaseOS/x86_64/os/" -lang en_US.UTF-8 -keyboard us -timezone --utc America/New_York -clearpart --all -autopart -rootpw weakpassword -user --name=test --password=weakpassword --plaintext --groups=wheel -poweroff -text - -%packages -@^server-product-environment -plymouth-system-theme -%end - -%addon com_redhat_kdump --enable --reserve-mb='auto' -%end diff --git a/server.ks b/server.ks index 8ecd15e..1711479 100644 --- a/server.ks +++ b/server.ks @@ -1,6 +1,6 @@ bootloader --location=mbr network --bootproto=dhcp -url --url="https://download.rockylinux.org/pub/rocky/9/BaseOS/x86_64/os/" +url --url="https://download.rockylinux.org/pub/rocky/$releasever/BaseOS/$basearch/os/" lang en_US.UTF-8 keyboard us timezone --utc America/New_York diff --git a/support-8.ks b/support-8.ks index 67f3a97..5f7ac43 100644 --- a/support-8.ks +++ b/support-8.ks @@ -1,8 +1,8 @@ bootloader --location=mbr network --bootproto=dhcp -url --url="https://download.rockylinux.org/pub/rocky/8/BaseOS/x86_64/os/" -#repo --name="epel" --baseurl="http://mirrors.kernel.org/fedora-epel/8/Everything/x86_64/" -# use epel to keep scsi-target-utils instead of targetcli +url --url="https://download.rockylinux.org/pub/rocky/$releasever/BaseOS/$basearch/os/" +# AppStream repo must be defined to provide dns-masq and targetcli package access +repo --name=AppStream --baseurl=https://download.rockylinux.org/pub/rocky/$releasever/AppStream/$basearch/os/ lang en_US.UTF-8 keyboard us timezone --utc America/New_York diff --git a/support.ks b/support.ks index e8286c4..aaf9a09 100644 --- a/support.ks +++ b/support.ks @@ -1,8 +1,9 @@ bootloader --location=mbr network --bootproto=dhcp -url --url="https://download.rockylinux.org/pub/rocky/9/BaseOS/x86_64/os/" -#repo --name="epel" --baseurl="http://mirrors.kernel.org/fedora-epel/9/Everything/x86_64/" -# use epel to keep scsi-target-utils instead of targetcli +url --url=https://download.rockylinux.org/pub/rocky/$releasever/BaseOS/$basearch/os/ +# AppStream repo must be defined to provide dns-masq and targetcli package access +repo --name=AppStream --baseurl=https://download.rockylinux.org/pub/rocky/$releasever/AppStream/$basearch/os/ +repo --name=CRB --baseurl=https://download.rockylinux.org/pub/rocky/$releasever/CRB/$basearch/os/ lang en_US.UTF-8 keyboard us timezone --utc America/New_York diff --git a/uploads/root-user-crypted-net-10.ks b/uploads/root-user-crypted-net-10.ks new file mode 100644 index 0000000..a00f0bf --- /dev/null +++ b/uploads/root-user-crypted-net-10.ks @@ -0,0 +1,22 @@ +bootloader --location=mbr +network --device=link --activate --bootproto=dhcp +url --url=https://download.rockylinux.org/pub/rocky/$releasever/BaseOS/$basearch/os/ +repo --name=AppStream --baseurl=https://download.rockylinux.org/pub/rocky/$releasever/AppStream/$basearch/os/ +repo --name=CRB --baseurl=https://download.rockylinux.org/pub/rocky/$releasever/CRB/$basearch/os/ +lang en_US.UTF-8 +keyboard us +timezone --utc America/New_York +clearpart --all +autopart + +rootpw --iscrypted $6$ansiogjasd0io9u3$9E1vMbLbXW14grtguedFGVjvhyBz1T.KIA3MJl1SWnGbtTpiXIAjbazIQAUKRNkNIEmd3mI0NCkFIVBrN41fZ. +user --name=test --password=$6$ansioasgfgadsghd$O8O8zom5hx.V8ib1jV91xuvIgYqA2b99tzhibkk3URITdCrDtbRbwJjMK1kW4l0/9W0brraGC4NUBtDoGv4Kl. --iscrypted + +reboot + +%packages +@core +%end + +%addon com_redhat_kdump --enable --reserve-mb='auto' +%end diff --git a/uploads/root-user-crypted-net-8.ks b/uploads/root-user-crypted-net-8.ks index ed2642a..28903ba 100644 --- a/uploads/root-user-crypted-net-8.ks +++ b/uploads/root-user-crypted-net-8.ks @@ -1,6 +1,7 @@ bootloader --location=mbr network --device=link --activate --bootproto=dhcp -url --url="https://download.rockylinux.org/pub/rocky/8/BaseOS/x86_64/os/" +url --url="https://download.rockylinux.org/pub/rocky/$releasever/BaseOS/$basearch/os/" +repo --name=AppStream --baseurl=https://download.rockylinux.org/pub/rocky/$releasever/AppStream/$basearch/os/ lang en_US.UTF-8 keyboard us timezone --utc America/New_York diff --git a/uploads/root-user-crypted-net-9.ks b/uploads/root-user-crypted-net-9.ks index a49e5fe..89b0003 100644 --- a/uploads/root-user-crypted-net-9.ks +++ b/uploads/root-user-crypted-net-9.ks @@ -1,6 +1,8 @@ bootloader --location=mbr network --device=link --activate --bootproto=dhcp -url --url="https://download.rockylinux.org/pub/rocky/9/BaseOS/x86_64/os/" +url --url="https://download.rockylinux.org/pub/rocky/$releasever/BaseOS/$basearch/os/" +repo --name=AppStream --baseurl=https://download.rockylinux.org/pub/rocky/$releasever/AppStream/$basearch/os/ +repo --name=CRB --baseurl=https://download.rockylinux.org/pub/rocky/$releasever/CRB/$basearch/os/ lang en_US.UTF-8 keyboard us timezone --utc America/New_York