Compare commits

...

10 Commits

Author SHA1 Message Date
David Abdurachmanov 59579becae
Add riscv64 support
Signed-off-by: David Abdurachmanov <davidlt@rivosinc.com>
2024-03-22 17:53:04 +02:00
Brian C. Lane 0fa02ec972 - Add example use of lmc in github actions. (cjshowalter@alaska.edu)
- Require lorax-templates-rhel when building for ELN, CentOS Stream and RHEL (sgallagh@redhat.com)
- workflows: Switch to actions/checkout@v4 (bcl@redhat.com)
- dnfbase: Fix substitutions (bcl@redhat.com)
2024-02-19 11:36:11 -08:00
Adam Williamson 8e01fdddc7 Backport PR #1379 to fix builds when a repo uses %releasever 2024-02-14 00:05:20 -08:00
Brian C. Lane 92d4810327 - New lorax documentation - 40.5 (bcl@redhat.com)
- maint: Switch default platform to F40 (bcl@redhat.com)
- runtime-cleanup: Update to cleanup more (akira@tagoh.org)
- runtime-install: Update font packages (akira@tagoh.org)
2024-02-06 17:39:26 -08:00
Brian C. Lane f383438923 - Remove patches included in this release
- Add testing of the new mkksiso --updates command to run_tests.sh
- mkksiso: Add support for adding an anaconda updates.img (jkonecny@redhat.com)
- runtime-install: drop kdump-anaconda-addon (awilliam@redhat.com)
- ltmpl: Handle installing provides with resolve_pkg_spec (bcl@redhat.com)
- s390: Escape volid before using it (bcl@redhat.com)
- aarch64: Escape volid before using it (bcl@redhat.com)
- runtime-install: drop retired pcmciautils (awilliam@redhat.com)
- runtime-install: wget2-wget has replaced wget (awilliam@redhat.com)
- runtime-cleanup: anaconda's new interface needs stdbuf (kkoukiou@redhat.com)
- ltmpl: Pass packages to add_rpm_install as strings (bcl@redhat.com)
2024-02-01 17:57:45 -08:00
Adam Williamson cae9bc7940 Backport PR #1371 to handle pcmciautils being retired 2024-01-29 10:08:54 -08:00
Adam Williamson 15237f8b2f Backport PR #1370 to handle wget being replaced by wget2-wget 2024-01-26 11:47:29 -08:00
Fedora Release Engineering e7bb19d0c6 Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-25 04:44:44 +00:00
Fedora Release Engineering c16e84674f Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-21 06:13:00 +00:00
Brian C. Lane 8315b760b8 - runtime-install: Work around problem with conflicting packages (bcl@redhat.com)
- ltmpl: Check for errors after running the transaction (bcl@redhat.com)
2023-12-20 07:50:55 -08:00
5 changed files with 491 additions and 6 deletions

4
.gitignore vendored
View File

@ -238,3 +238,7 @@
/lorax-40.0.tar.gz
/lorax-40.1.tar.gz
/lorax-40.2.tar.gz
/lorax-40.3.tar.gz
/lorax-40.4.tar.gz
/lorax-40.5.tar.gz
/lorax-40.6.tar.gz

423
0001-Add-riscv64.patch Normal file
View File

@ -0,0 +1,423 @@
From 8a6690614f8d6c26e1de65bbab0654704ba649d3 Mon Sep 17 00:00:00 2001
From: David Abdurachmanov <davidlt@rivosinc.com>
Date: Fri, 22 Mar 2024 15:50:29 +0000
Subject: [PATCH] Add riscv64
Signed-off-by: David Abdurachmanov <davidlt@rivosinc.com>
diff --git a/share/templates.d/99-generic/config_files/riscv64/boot.msg b/share/templates.d/99-generic/config_files/riscv64/boot.msg
new file mode 100644
index 0000000..ff54899
--- /dev/null
+++ b/share/templates.d/99-generic/config_files/riscv64/boot.msg
@@ -0,0 +1,5 @@
+
+splash.lss
+
+ - Press the 01<ENTER>07 key to begin the installation process.
+
diff --git a/share/templates.d/99-generic/config_files/riscv64/grub2-efi.cfg b/share/templates.d/99-generic/config_files/riscv64/grub2-efi.cfg
new file mode 100644
index 0000000..1ce5d33
--- /dev/null
+++ b/share/templates.d/99-generic/config_files/riscv64/grub2-efi.cfg
@@ -0,0 +1,46 @@
+set default="1"
+
+function load_video {
+ if [ x$feature_all_video_module = xy ]; then
+ insmod all_video
+ else
+ insmod efi_gop
+ insmod efi_uga
+ insmod ieee1275_fb
+ insmod vbe
+ insmod vga
+ insmod video_bochs
+ insmod video_cirrus
+ fi
+}
+
+load_video
+set gfxpayload=keep
+insmod gzio
+insmod part_gpt
+insmod ext2
+
+set timeout=60
+### END /etc/grub.d/00_header ###
+
+search --no-floppy --set=root -l '@ISOLABEL@'
+
+### BEGIN /etc/grub.d/10_linux ###
+menuentry 'Install @PRODUCT@ @VERSION@' --class red --class gnu-linux --class gnu --class os {
+ linux @KERNELPATH@ @ROOT@ ro
+ initrd @INITRDPATH@
+}
+menuentry 'Test this media & install @PRODUCT@ @VERSION@' --class red --class gnu-linux --class gnu --class os {
+ linux @KERNELPATH@ @ROOT@ rd.live.check
+ initrd @INITRDPATH@
+}
+submenu 'Troubleshooting -->' {
+ menuentry 'Install @PRODUCT@ @VERSION@ in basic graphics mode' --class red --class gnu-linux --class gnu --class os {
+ linux @KERNELPATH@ @ROOT@ nomodeset
+ initrd @INITRDPATH@
+ }
+ menuentry 'Rescue a @PRODUCT@ system' --class red --class gnu-linux --class gnu --class os {
+ linux @KERNELPATH@ @ROOT@ inst.rescue
+ initrd @INITRDPATH@
+ }
+}
diff --git a/share/templates.d/99-generic/efi.tmpl b/share/templates.d/99-generic/efi.tmpl
index 80600d2..4bf890f 100644
--- a/share/templates.d/99-generic/efi.tmpl
+++ b/share/templates.d/99-generic/efi.tmpl
@@ -8,8 +8,7 @@ APPLE_EFI_DISKNAME=inroot+"/usr/share/pixmaps/bootloader/fedora-media.vol"
mkdir ${EFIBOOTDIR}
mkdir ${EFIBOOTDIR}/fonts/
%if efiarch64:
-install boot/efi/EFI/*/shim${efiarch64|lower}.efi ${EFIBOOTDIR}/BOOT${efiarch64}.EFI
-install boot/efi/EFI/*/mm${efiarch64|lower}.efi ${EFIBOOTDIR}/
+install boot/efi/EFI/*/gcd${efiarch64|lower}.efi ${EFIBOOTDIR}/BOOT${efiarch64}.EFI
install boot/efi/EFI/*/gcd${efiarch64|lower}.efi ${EFIBOOTDIR}/grub${efiarch64|lower}.efi
%endif
%if efiarch32:
diff --git a/share/templates.d/99-generic/live/config_files/riscv64/grub2-efi.cfg b/share/templates.d/99-generic/live/config_files/riscv64/grub2-efi.cfg
new file mode 100644
index 0000000..c874547
--- /dev/null
+++ b/share/templates.d/99-generic/live/config_files/riscv64/grub2-efi.cfg
@@ -0,0 +1,42 @@
+set default="1"
+
+function load_video {
+ if [ x$feature_all_video_module = xy ]; then
+ insmod all_video
+ else
+ insmod efi_gop
+ insmod efi_uga
+ insmod ieee1275_fb
+ insmod vbe
+ insmod vga
+ insmod video_bochs
+ insmod video_cirrus
+ fi
+}
+
+load_video
+set gfxpayload=keep
+insmod gzio
+insmod part_gpt
+insmod ext2
+
+set timeout=60
+### END /etc/grub.d/00_header ###
+
+search --no-floppy --set=root -l '@ISOLABEL@'
+
+### BEGIN /etc/grub.d/10_linux ###
+menuentry 'Start @PRODUCT@ @VERSION@' --class red --class gnu-linux --class gnu --class os {
+ linux @KERNELPATH@ @ROOT@ @EXTRA@ rd.live.image quiet rhgb
+ initrd @INITRDPATH@
+}
+menuentry 'Test this media & start @PRODUCT@ @VERSION@' --class red --class gnu-linux --class gnu --class os {
+ linux @KERNELPATH@ @ROOT@ @EXTRA@ rd.live.image rd.live.check quiet
+ initrd @INITRDPATH@
+}
+submenu 'Troubleshooting -->' {
+ menuentry 'Install @PRODUCT@ @VERSION@ in basic graphics mode' --class red --class gnu-linux --class gnu --class os {
+ linux @KERNELPATH@ @ROOT@ @EXTRA@ rd.live.image nomodeset quiet rhgb
+ initrd @INITRDPATH@
+ }
+}
diff --git a/share/templates.d/99-generic/live/efi.tmpl b/share/templates.d/99-generic/live/efi.tmpl
index 813f91e..8870c55 100644
--- a/share/templates.d/99-generic/live/efi.tmpl
+++ b/share/templates.d/99-generic/live/efi.tmpl
@@ -8,8 +8,7 @@ APPLE_EFI_DISKNAME=inroot+"/usr/share/pixmaps/bootloader/fedora-media.vol"
mkdir ${EFIBOOTDIR}
mkdir ${EFIBOOTDIR}/fonts/
%if efiarch64:
-install boot/efi/EFI/*/shim${efiarch64|lower}.efi ${EFIBOOTDIR}/BOOT${efiarch64}.EFI
-install boot/efi/EFI/*/mm${efiarch64|lower}.efi ${EFIBOOTDIR}/
+install boot/efi/EFI/*/gcd${efiarch64|lower}.efi ${EFIBOOTDIR}/BOOT${efiarch64}.EFI
install boot/efi/EFI/*/gcd${efiarch64|lower}.efi ${EFIBOOTDIR}/grub${efiarch64|lower}.efi
%endif
%if efiarch32:
diff --git a/share/templates.d/99-generic/live/live-install.tmpl b/share/templates.d/99-generic/live/live-install.tmpl
index ef514ee..2367d1d 100644
--- a/share/templates.d/99-generic/live/live-install.tmpl
+++ b/share/templates.d/99-generic/live/live-install.tmpl
@@ -6,6 +6,10 @@
installpkg efibootmgr
installpkg grub2-efi-aa64-cdboot shim-aa64
%endif
+%if basearch == "riscv64":
+ installpkg efibootmgr
+ installpkg grub2-efi-riscv64-cdboot
+%endif
%if basearch == "x86_64":
installpkg grub2-tools-efi
installpkg efibootmgr
diff --git a/share/templates.d/99-generic/live/riscv64.tmpl b/share/templates.d/99-generic/live/riscv64.tmpl
new file mode 100644
index 0000000..6d8784d
--- /dev/null
+++ b/share/templates.d/99-generic/live/riscv64.tmpl
@@ -0,0 +1,84 @@
+<%page args="kernels, runtime_img, basearch, inroot, outroot, product, isolabel, extra_boot_args"/>
+<%
+configdir="tmp/config_files/riscv64"
+PXEBOOTDIR="images/pxeboot"
+KERNELDIR=PXEBOOTDIR
+LIVEDIR="LiveOS"
+LORAXDIR="usr/share/lorax/"
+
+## Don't allow spaces or escape characters in the iso label
+def valid_label(ch):
+ return ch.isalnum() or ch == '_'
+
+isolabel = ''.join(ch if valid_label(ch) else '-' for ch in isolabel)
+
+import os
+from os.path import basename
+from pylorax.sysutils import joinpaths
+
+# Test the runtime_img, if it is > 4GiB we need to set -iso-level to 3
+if os.stat(joinpaths(inroot, runtime_img)).st_size >= 4*1024**3:
+ isoargs = "-iso-level 3"
+else:
+ isoargs = ""
+%>
+
+mkdir ${LIVEDIR}
+install ${runtime_img} ${LIVEDIR}/squashfs.img
+treeinfo stage2 mainimage ${LIVEDIR}/squashfs.img
+
+## install kernels
+mkdir ${KERNELDIR}
+%for kernel in kernels:
+ ## normal aarch64
+ installkernel images-${basearch} ${kernel.path} ${KERNELDIR}/vmlinuz
+ installinitrd images-${basearch} ${kernel.initrd.path} ${KERNELDIR}/initrd.img
+%endfor
+
+#FIXME: this will need adjusted when we have a real bootloader.
+## WHeeeeeeee, EFI.
+## We could remove the basearch restriction someday..
+<% efiargs=""; efigraft="" %>
+%if exists("boot/efi/EFI/*/gcdriscv64.efi"):
+ <%
+ efiarch32 = None
+ efiarch64 = 'riscv64'
+ efigraft="EFI/BOOT={0}/EFI/BOOT".format(outroot)
+ images = ["images/efiboot.img"]
+ %>
+ %for img in images:
+ <%
+ efiargs += " -eltorito-alt-boot -e {0} -no-emul-boot".format(img)
+ efigraft += " {0}={1}/{0}".format(img,outroot)
+ %>
+ treeinfo images-${basearch} ${img|basename} ${img}
+ %endfor
+ <%include file="efi.tmpl" args="configdir=configdir, KERNELDIR=KERNELDIR, efiarch32=efiarch32, efiarch64=efiarch64, isolabel=isolabel, extra_boot_args=extra_boot_args"/>
+%endif
+
+# Create optional product.img and updates.img
+<% filegraft=""; images=["product", "updates"] %>
+%for img in images:
+ %if exists("%s/%s/" % (LORAXDIR, img)):
+ installimg ${LORAXDIR}/${img}/ images/${img}.img
+ treeinfo images-${basearch} ${img}.img images/${img}.img
+ <% filegraft += " images/{0}.img={1}/images/{0}.img".format(img, outroot) %>
+ %endif
+%endfor
+
+# Add the license files
+%for f in glob("usr/share/licenses/*-release-common/*"):
+ install ${f} ${f|basename}
+ <% filegraft += " {0}={1}/{0}".format(basename(f), outroot) %>
+%endfor
+
+%if exists("boot/efi/EFI/*/gcdriscv64.efi"):
+## make boot.iso
+runcmd xorrisofs ${isoargs} -o ${outroot}/images/boot.iso \
+ ${efiargs} -R -J -V '${isolabel}' \
+ -graft-points \
+ ${KERNELDIR}=${outroot}/${KERNELDIR} \
+ ${LIVEDIR}=${outroot}/${LIVEDIR} \
+ ${efigraft} ${filegraft}
+treeinfo images-${basearch} boot.iso images/boot.iso
+%endif
diff --git a/share/templates.d/99-generic/riscv64.tmpl b/share/templates.d/99-generic/riscv64.tmpl
new file mode 100644
index 0000000..62dd763
--- /dev/null
+++ b/share/templates.d/99-generic/riscv64.tmpl
@@ -0,0 +1,92 @@
+<%page args="kernels, runtime_img, basearch, inroot, outroot, product, isolabel"/>
+<%
+configdir="tmp/config_files/riscv64"
+PXEBOOTDIR="images/pxeboot"
+KERNELDIR=PXEBOOTDIR
+STAGE2IMG="images/install.img"
+LORAXDIR="usr/share/lorax/"
+
+## Don't allow spaces or escape characters in the iso label
+def valid_label(ch):
+ return ch.isalnum() or ch == '_'
+
+isolabel = ''.join(ch if valid_label(ch) else '-' for ch in isolabel)
+
+import os
+from os.path import basename
+from pylorax.sysutils import joinpaths
+
+# Test the runtime_img, if it is > 4GiB we need to set -iso-level to 3
+if os.stat(joinpaths(inroot, runtime_img)).st_size >= 4*1024**3:
+ isoargs = "-iso-level 3"
+else:
+ isoargs = ""
+%>
+
+mkdir images
+install ${runtime_img} ${STAGE2IMG}
+treeinfo stage2 mainimage ${STAGE2IMG}
+
+## install kernels
+mkdir ${KERNELDIR}
+%for kernel in kernels:
+ ## normal aarch64
+ installkernel images-${basearch} ${kernel.path} ${KERNELDIR}/vmlinuz
+ installinitrd images-${basearch} ${kernel.initrd.path} ${KERNELDIR}/initrd.img
+%endfor
+
+#FIXME: this will need adjusted when we have a real bootloader.
+## WHeeeeeeee, EFI.
+## We could remove the basearch restriction someday..
+<% efiargs=""; efigraft="" %>
+%if exists("boot/efi/EFI/*/gcdriscv64.efi"):
+ <%
+ efiarch32 = None
+ efiarch64 = 'riscv64'
+ efigraft="EFI/BOOT={0}/EFI/BOOT".format(outroot)
+ images = ["images/efiboot.img"]
+ %>
+ %for img in images:
+ <%
+ efiargs += " -eltorito-alt-boot -e {0} -no-emul-boot".format(img)
+ efigraft += " {0}={1}/{0}".format(img,outroot)
+ %>
+ treeinfo images-${basearch} ${img|basename} ${img}
+ %endfor
+ <%include file="efi.tmpl" args="configdir=configdir, KERNELDIR=KERNELDIR, efiarch32=efiarch32, efiarch64=efiarch64, isolabel=isolabel"/>
+%endif
+
+# Create optional product.img and updates.img
+<% filegraft=""; images=["product", "updates"] %>
+%for img in images:
+ %if exists("%s/%s/" % (LORAXDIR, img)):
+ installimg ${LORAXDIR}/${img}/ images/${img}.img
+ treeinfo images-${basearch} ${img}.img images/${img}.img
+ <% filegraft += " images/{0}.img={1}/images/{0}.img".format(img, outroot) %>
+ %endif
+%endfor
+
+# Inherit iso-graft/ if it exists from external templates
+<%
+ import os
+ if os.path.exists(workdir + "/iso-graft"):
+ filegraft += " " + workdir + "/iso-graft"
+%>
+
+# Add the license files
+%for f in glob("usr/share/licenses/*-release-common/*"):
+ install ${f} ${f|basename}
+ <% filegraft += " {0}={1}/{0}".format(basename(f), outroot) %>
+%endfor
+
+%if exists("boot/efi/EFI/*/gcdriscv64.efi"):
+## make boot.iso
+runcmd xorrisofs ${isoargs} -o ${outroot}/images/boot.iso \
+ ${efiargs} -R -J -V '${isolabel}' \
+ -graft-points \
+ .discinfo=${outroot}/.discinfo \
+ ${KERNELDIR}=${outroot}/${KERNELDIR} \
+ ${STAGE2IMG}=${outroot}/${STAGE2IMG} \
+ ${efigraft} ${filegraft}
+treeinfo images-${basearch} boot.iso images/boot.iso
+%endif
diff --git a/share/templates.d/99-generic/runtime-cleanup.tmpl b/share/templates.d/99-generic/runtime-cleanup.tmpl
index 236a4d7..3f97c5f 100644
--- a/share/templates.d/99-generic/runtime-cleanup.tmpl
+++ b/share/templates.d/99-generic/runtime-cleanup.tmpl
@@ -351,7 +351,7 @@ runcmd chroot ${root} find /boot \! -name "vmlinuz*" \
## (broken systemd service links lead to confusing noise at boot)
## NOTE: not checking /var because we want to keep /var/run
## NOTE: Excluding /etc/mtab which links to /proc/self/mounts for systemd
-runcmd chroot ${root} find -L /etc /usr -xdev -type l -and \! -name "mtab" \
+runcmd chroot ${root} find -L /etc -xdev -type l -and \! -name "mtab" \
-printf "removing broken symbolic link %p -> %l\n" -delete
## Remove compiled python files, they are recreated as needed anyway
diff --git a/share/templates.d/99-generic/runtime-install.tmpl b/share/templates.d/99-generic/runtime-install.tmpl
index 5ab3ca1..1fd6918 100644
--- a/share/templates.d/99-generic/runtime-install.tmpl
+++ b/share/templates.d/99-generic/runtime-install.tmpl
@@ -74,6 +74,13 @@ installpkg glibc-all-langpacks
installpkg uboot-tools
installpkg qcom-firmware
%endif
+%if basearch == "riscv64":
+ installpkg efibootmgr
+ installpkg grub2-efi-riscv64-cdboot>=${GRUB2VER}
+ installpkg grub2-tools>=${GRUB2VER}
+ installpkg uboot-tools
+%endif
+
%if basearch == "x86_64":
installpkg grub2-tools-efi>=${GRUB2VER}
installpkg efibootmgr
@@ -143,7 +150,7 @@ installpkg mt-st smartmontools
installpkg hdparm
installpkg rdma-core
installpkg rng-tools
-%if basearch in ("x86_64", "aarch64"):
+%if basearch in ("x86_64", "aarch64", "riscv64"):
installpkg dmidecode
%endif
installpkg nvme-cli
diff --git a/src/pylorax/installer.py b/src/pylorax/installer.py
index f730be5..ec8f788 100644
--- a/src/pylorax/installer.py
+++ b/src/pylorax/installer.py
@@ -162,6 +162,14 @@ class QEMUInstall(object):
"uefi_machine": "virt",
"uefi_args": ["-global", "driver=cfi.pflash01,property=secure,value=off"],
},
+ "riscv64": {
+ "cmd": "qemu-system-riscv64",
+ "arches": ["riscv64"],
+ "machine": "virt",
+ "uefi": ["riscv/RISCV_VIRT_CODE.qcow2", "riscv/RISCV_VIRT_VARS.qcow2"],
+ "uefi_machine": "virt",
+ },
+
"ppc64le": {
"cmd": "qemu-system-ppc64",
"arches": ["ppc64le"],
diff --git a/src/pylorax/treebuilder.py b/src/pylorax/treebuilder.py
index 5c04527..f1c5e2a 100644
--- a/src/pylorax/treebuilder.py
+++ b/src/pylorax/treebuilder.py
@@ -41,6 +41,7 @@ templatemap = {
'ppc64le': 'ppc64le.tmpl',
's390x': 's390.tmpl',
'aarch64': 'aarch64.tmpl',
+ 'riscv64': 'riscv64.tmpl',
}
def generate_module_info(moddir, outfile=None):
--
2.44.0

View File

@ -3,8 +3,8 @@
%define debug_package %{nil}
Name: lorax
Version: 40.2
Release: 1%{?dist}
Version: 40.6
Release: 1.0.riscv64%{?dist}
Summary: Tool for creating the anaconda install images
License: GPL-2.0-or-later
@ -15,12 +15,17 @@ URL: https://github.com/weldr/lorax
# tito build --tgz
Source0: %{name}-%{version}.tar.gz
Patch0: 0001-Add-riscv64.patch
BuildRequires: python3-devel
BuildRequires: python3-setuptools
BuildRequires: make
BuildRequires: systemd-rpm-macros
Requires: lorax-templates
%if 0%{?rhel} >= 9
Requires: lorax-templates-rhel
%endif
Requires: cpio
Requires: device-mapper
@ -168,6 +173,36 @@ make DESTDIR=$RPM_BUILD_ROOT mandir=%{_mandir} install
%{_datadir}/lorax/templates.d/*
%changelog
* Fri Mar 22 2024 David Abdurachmanov <davidlt@rivosinc.com> 40.5-1.0.riscv64
- Add riscv64 support
* Mon Feb 19 2024 Brian C. Lane <bcl@redhat.com>
- Add example use of lmc in github actions. (cjshowalter@alaska.edu)
- Require lorax-templates-rhel when building for ELN, CentOS Stream and RHEL (sgallagh@redhat.com)
- workflows: Switch to actions/checkout@v4 (bcl@redhat.com)
- dnfbase: Fix substitutions (bcl@redhat.com)
* Tue Feb 06 2024 Brian C. Lane <bcl@redhat.com> 40.5-1
- New lorax documentation - 40.5 (bcl@redhat.com)
- maint: Switch default platform to F40 (bcl@redhat.com)
- runtime-cleanup: Update to cleanup more (akira@tagoh.org)
- runtime-install: Update font packages (akira@tagoh.org)
* Thu Feb 01 2024 Brian C. Lane <bcl@redhat.com> 40.4-1
- mkksiso: Add support for adding an anaconda updates.img (jkonecny@redhat.com)
- runtime-install: drop kdump-anaconda-addon (awilliam@redhat.com)
- ltmpl: Handle installing provides with resolve_pkg_spec (bcl@redhat.com)
- s390: Escape volid before using it (bcl@redhat.com)
- aarch64: Escape volid before using it (bcl@redhat.com)
- runtime-install: drop retired pcmciautils (awilliam@redhat.com)
- runtime-install: wget2-wget has replaced wget (awilliam@redhat.com)
- runtime-cleanup: anaconda's new interface needs stdbuf (kkoukiou@redhat.com)
- ltmpl: Pass packages to add_rpm_install as strings (bcl@redhat.com)
* Wed Dec 20 2023 Brian C. Lane <bcl@redhat.com> 40.3-1
- runtime-install: Work around problem with conflicting packages (bcl@redhat.com)
- ltmpl: Check for errors after running the transaction (bcl@redhat.com)
* Tue Dec 12 2023 Brian C. Lane <bcl@redhat.com> 40.2-1
- ltmpl: Remove duplicate package objects from dnf5 results (bcl@redhat.com)
- test-in-podman: Fix problem running in github actions (bcl@redhat.com)

View File

@ -1 +1 @@
SHA512 (lorax-40.2.tar.gz) = ccb91397e44c121af39e3ca483fe12ab82c337252cccdc1fb8161c1b39b97f55d7afc4339190c98003246ce7090f579e49b0aa2c344e43b7e846328ad5bf679f
SHA512 (lorax-40.6.tar.gz) = 0548576ae188aa875a7bd0d87e4dda6afe529b859ffe0d9ec380e173b1439c52c45a79b3568f23eef9a10baa13f502aba0bb269f0dcc24e268957e26f93cb577

View File

@ -177,22 +177,42 @@ function test_two_kickstarts {
status "Test two kickstart error"
}
function test_files {
[ -e "$ISODIR/services" ] || fail "Missing file from iso"
}
# Test adding an updates.img file
function add_updatesimg {
running "Add updates.img"
# nothing in the file, just test that it is there
touch /tmp/test-updates.img
mkksiso -u /tmp/test-updates.img $BOOTISO $OUTISO || exit 1
mount $OUTISO $ISODIR || exit 1
test_updatesimg
status "Add updates.img"
umount_dirs
}
function test_updatesimg {
[ -e "$ISODIR/updates/updates.img" ] || fail "Missing file from iso"
}
# All of the changes
function run_all {
running "Use all the options"
mkksiso -a /etc/services -V "mkksiso-test" -c "console=ttyS0,115200n8" --rm "quiet" --ks $KS $BOOTISO $OUTISO || exit 1
touch /tmp/test-updates.img
mkksiso -u /tmp/test-updates.img -a /etc/services -V "mkksiso-test" -c "console=ttyS0,115200n8" --rm "quiet" --ks $KS $BOOTISO $OUTISO || exit 1
mount $OUTISO $ISODIR || exit 1
test_ks
test_serial
test_volid
test_files
test_updatesimg
test_quiet
status "Use all the options"
@ -204,13 +224,15 @@ function run_as_user {
running "Use all the options as a user"
[ ! -e "/home/lorax-ted" ] && useradd -m lorax-ted
su - lorax-ted -c "mkksiso --skip-mkefiboot -a /etc/services -V "mkksiso-test" -c "console=ttyS0,115200n8" --rm "quiet" --ks $KS $BOOTISO $OUTISO" || exit 1
touch /tmp/test-updates.img
su - lorax-ted -c "mkksiso --skip-mkefiboot -u /tmp/test-updates.img -a /etc/services -V "mkksiso-test" -c "console=ttyS0,115200n8" --rm "quiet" --ks $KS $BOOTISO $OUTISO" || exit 1
mount $OUTISO $ISODIR || exit 1
test_ks
test_serial
test_volid
test_files
test_updatesimg
test_quiet
status "Use all the options as a user with --skip-mkefiboot"
@ -243,6 +265,7 @@ new_volid
add_files
remove_quiet
test_two_kickstarts
add_updatesimg
run_all
run_as_user