import coreos-installer-0.9.1-17.el8
This commit is contained in:
commit
f00e882a96
2
.coreos-installer.metadata
Normal file
2
.coreos-installer.metadata
Normal file
@ -0,0 +1,2 @@
|
||||
9ad623e572641316d7bdb51e11e136713b019bfa SOURCES/coreos-installer-0.9.1-vendor.tar.gz
|
||||
147efc72c044194209d686b78d62e3acbc761763 SOURCES/coreos-installer-0.9.1.crate
|
2
.gitignore
vendored
Normal file
2
.gitignore
vendored
Normal file
@ -0,0 +1,2 @@
|
||||
SOURCES/coreos-installer-0.9.1-vendor.tar.gz
|
||||
SOURCES/coreos-installer-0.9.1.crate
|
114
SOURCES/coidracut.patch
Normal file
114
SOURCES/coidracut.patch
Normal file
@ -0,0 +1,114 @@
|
||||
diff --git a/dracut/50rdcore/module-setup.sh b/dracut/50rdcore/module-setup.sh
|
||||
index 27a2ac3..443b5cf 100755
|
||||
--- a/dracut/50rdcore/module-setup.sh
|
||||
+++ b/dracut/50rdcore/module-setup.sh
|
||||
@@ -1,5 +1,47 @@
|
||||
#!/bin/bash
|
||||
|
||||
+install_and_enable_unit() {
|
||||
+ unit="$1"; shift
|
||||
+ target="$1"; shift
|
||||
+ inst_simple "$moddir/$unit" "$systemdsystemunitdir/$unit"
|
||||
+ # note we `|| exit 1` here so we error out if e.g. the units are missing
|
||||
+ # see https://github.com/coreos/fedora-coreos-config/issues/799
|
||||
+ systemctl -q --root="$initdir" add-requires "$target" "$unit" || exit 1
|
||||
+}
|
||||
+
|
||||
install() {
|
||||
inst_simple "$moddir/rdcore" "/usr/bin/rdcore"
|
||||
+
|
||||
+ inst_simple "$moddir/coreos-installer" "/usr/bin/coreos-installer"
|
||||
+
|
||||
+ inst_simple "$moddir/coreos-installer-generator" \
|
||||
+ "$systemdutildir/system-generators/coreos-installer-generator"
|
||||
+
|
||||
+ inst_script "$moddir/coreos-installer-service" \
|
||||
+ "/usr/libexec/coreos-installer-service"
|
||||
+
|
||||
+ inst_script "$moddir/coreos-installer-disable-device-auto-activation" \
|
||||
+ "/usr/libexec/coreos-installer-disable-device-auto-activation"
|
||||
+
|
||||
+ install_and_enable_unit "coreos-installer.service" \
|
||||
+ "default.target"
|
||||
+
|
||||
+ install_and_enable_unit "coreos-installer-reboot.service" \
|
||||
+ "default.target"
|
||||
+
|
||||
+# install_and_enable_unit "coreos-installer-noreboot.service" \
|
||||
+# "basic.target"
|
||||
+# inst_simple "$moddir/coreos-installer-reboot.service" \
|
||||
+# "$systemdsystemunitdir/coreos-installer-reboot.service"
|
||||
+# inst_simple "$moddir/coreos-installer-noreboot.service" \
|
||||
+# "$systemdsystemunitdir/coreos-installer-noreboot.service"
|
||||
+#
|
||||
+# inst_simple "$moddir/coreos-installer.target" \
|
||||
+# "$systemdsystemunitdir/coreos-installer.target"
|
||||
+#
|
||||
+# inst_simple "$moddir/coreos-installer-pre.target" \
|
||||
+# "$systemdsystemunitdir/coreos-installer-pre.target"
|
||||
+#
|
||||
+# inst_simple "$moddir/coreos-installer-post.target" \
|
||||
+# "$systemdsystemunitdir/coreos-installer-post.target"
|
||||
}
|
||||
diff --git a/systemd/coreos-installer-generator b/systemd/coreos-installer-generator
|
||||
index 804d045..b2bcaec 100755
|
||||
--- a/systemd/coreos-installer-generator
|
||||
+++ b/systemd/coreos-installer-generator
|
||||
@@ -30,11 +30,11 @@ karg_bool() {
|
||||
}
|
||||
|
||||
if [ -n "$(karg coreos.inst.install_dev)" ]; then
|
||||
- ln -sf "/usr/lib/systemd/system/coreos-installer-post.target" \
|
||||
- "${UNIT_DIR}/default.target"
|
||||
+# ln -sf "/usr/lib/systemd/system/coreos-installer-post.target" \
|
||||
+# "${UNIT_DIR}/basic.target"
|
||||
|
||||
# Create precondition for coreos-installer-reboot.service if requested
|
||||
if ! karg_bool coreos.inst.skip_reboot; then
|
||||
- touch /run/coreos-installer-reboot
|
||||
+ > /run/coreos-installer-reboot
|
||||
fi
|
||||
fi
|
||||
diff --git a/systemd/coreos-installer-reboot.service b/systemd/coreos-installer-reboot.service
|
||||
index 18fdb4b..ad79614 100644
|
||||
--- a/systemd/coreos-installer-reboot.service
|
||||
+++ b/systemd/coreos-installer-reboot.service
|
||||
@@ -1,7 +1,7 @@
|
||||
[Unit]
|
||||
Description=Reboot after CoreOS Installer
|
||||
-Requires=coreos-installer.target
|
||||
-After=coreos-installer.target
|
||||
+#Requires=coreos-installer.target
|
||||
+After=coreos-installer.service
|
||||
OnFailure=emergency.target
|
||||
OnFailureJobMode=replace-irreversibly
|
||||
ConditionPathExists=/run/coreos-installer-reboot
|
||||
diff --git a/systemd/coreos-installer.service b/systemd/coreos-installer.service
|
||||
index 5e222f2..716b783 100644
|
||||
--- a/systemd/coreos-installer.service
|
||||
+++ b/systemd/coreos-installer.service
|
||||
@@ -1,12 +1,20 @@
|
||||
[Unit]
|
||||
Description=CoreOS Installer
|
||||
-Before=coreos-installer.target
|
||||
-After=network-online.target
|
||||
-Wants=network-online.target
|
||||
+#Before=coreos-installer.target
|
||||
+#After=nm-run.service
|
||||
+#After=network-online.target
|
||||
+#Wants=network-online.target
|
||||
# Until we retry HTTP requests let's wait here until
|
||||
# systemd-resolved comes up if enabled.
|
||||
# https://github.com/coreos/coreos-installer/issues/283
|
||||
-After=systemd-resolved.service
|
||||
+#After=systemd-resolved.service
|
||||
+
|
||||
+After=basic.target
|
||||
+# Network is enabled here
|
||||
+After=nm-run.service
|
||||
+# compat: remove when everyone is on dracut 053+
|
||||
+After=dracut-initqueue.service
|
||||
+
|
||||
ConditionKernelCommandLine=coreos.inst.install_dev
|
||||
OnFailure=emergency.target
|
||||
OnFailureJobMode=replace-irreversibly
|
27
SOURCES/coidracut2.patch
Normal file
27
SOURCES/coidracut2.patch
Normal file
@ -0,0 +1,27 @@
|
||||
diff --git a/dracut/50rdcore/module-setup.sh b/dracut/50rdcore/module-setup.sh
|
||||
index 443b5cf..c065851 100755
|
||||
--- a/dracut/50rdcore/module-setup.sh
|
||||
+++ b/dracut/50rdcore/module-setup.sh
|
||||
@@ -10,6 +10,10 @@ install_and_enable_unit() {
|
||||
}
|
||||
|
||||
install() {
|
||||
+ inst_multiple gpg
|
||||
+ inst_multiple gpg-agent
|
||||
+ inst_multiple gpg-connect-agent
|
||||
+
|
||||
inst_simple "$moddir/rdcore" "/usr/bin/rdcore"
|
||||
|
||||
inst_simple "$moddir/coreos-installer" "/usr/bin/coreos-installer"
|
||||
diff --git a/scripts/coreos-installer-service b/scripts/coreos-installer-service
|
||||
index 347b5f5..239de3a 100755
|
||||
--- a/scripts/coreos-installer-service
|
||||
+++ b/scripts/coreos-installer-service
|
||||
@@ -87,6 +87,7 @@ fi
|
||||
|
||||
# Other args that should just be copied over
|
||||
copy_arg coreos.inst.image_url --image-url
|
||||
+copy_arg coreos.inst.image_file --image-file
|
||||
copy_arg coreos.inst.platform_id --platform
|
||||
copy_arg coreos.inst.stream --stream
|
||||
copy_arg coreos.inst.save_partlabel --save-partlabel
|
246
SOURCES/coidracut3.patch
Normal file
246
SOURCES/coidracut3.patch
Normal file
@ -0,0 +1,246 @@
|
||||
diff --git a/dracut/50rdcore/module-setup.sh b/dracut/50rdcore/module-setup.sh
|
||||
index c065851..2d689d9 100755
|
||||
--- a/dracut/50rdcore/module-setup.sh
|
||||
+++ b/dracut/50rdcore/module-setup.sh
|
||||
@@ -14,6 +14,48 @@ install() {
|
||||
inst_multiple gpg-agent
|
||||
inst_multiple gpg-connect-agent
|
||||
|
||||
+ inst_multiple \
|
||||
+ realpath \
|
||||
+ basename \
|
||||
+ blkid \
|
||||
+ cat \
|
||||
+ dirname \
|
||||
+ findmnt \
|
||||
+ growpart \
|
||||
+ realpath \
|
||||
+ resize2fs \
|
||||
+ tail \
|
||||
+ tune2fs \
|
||||
+ touch \
|
||||
+ xfs_admin \
|
||||
+ xfs_growfs \
|
||||
+ wc \
|
||||
+ lsblk \
|
||||
+ wipefs
|
||||
+
|
||||
+ inst_multiple \
|
||||
+ awk \
|
||||
+ cat \
|
||||
+ dd \
|
||||
+ grep \
|
||||
+ mktemp \
|
||||
+ partx \
|
||||
+ rm \
|
||||
+ sed \
|
||||
+ sfdisk \
|
||||
+ sgdisk \
|
||||
+ find
|
||||
+
|
||||
+ inst_multiple -o \
|
||||
+ clevis-encrypt-sss \
|
||||
+ clevis-encrypt-tang \
|
||||
+ clevis-encrypt-tpm2 \
|
||||
+ clevis-luks-bind \
|
||||
+ clevis-luks-common-functions \
|
||||
+ clevis-luks-unlock \
|
||||
+ pwmake \
|
||||
+ tpm2_create
|
||||
+
|
||||
inst_simple "$moddir/rdcore" "/usr/bin/rdcore"
|
||||
|
||||
inst_simple "$moddir/coreos-installer" "/usr/bin/coreos-installer"
|
||||
@@ -33,19 +75,8 @@ install() {
|
||||
install_and_enable_unit "coreos-installer-reboot.service" \
|
||||
"default.target"
|
||||
|
||||
-# install_and_enable_unit "coreos-installer-noreboot.service" \
|
||||
-# "basic.target"
|
||||
-# inst_simple "$moddir/coreos-installer-reboot.service" \
|
||||
-# "$systemdsystemunitdir/coreos-installer-reboot.service"
|
||||
-# inst_simple "$moddir/coreos-installer-noreboot.service" \
|
||||
-# "$systemdsystemunitdir/coreos-installer-noreboot.service"
|
||||
-#
|
||||
-# inst_simple "$moddir/coreos-installer.target" \
|
||||
-# "$systemdsystemunitdir/coreos-installer.target"
|
||||
-#
|
||||
-# inst_simple "$moddir/coreos-installer-pre.target" \
|
||||
-# "$systemdsystemunitdir/coreos-installer-pre.target"
|
||||
-#
|
||||
-# inst_simple "$moddir/coreos-installer-post.target" \
|
||||
-# "$systemdsystemunitdir/coreos-installer-post.target"
|
||||
+ install_and_enable_unit "growfs.service" \
|
||||
+ "default.target"
|
||||
+ inst_script "$moddir/growfs" \
|
||||
+ /usr/sbin/growfs
|
||||
}
|
||||
diff --git a/scripts/growfs b/scripts/growfs
|
||||
new file mode 100644
|
||||
index 0000000..45c495c
|
||||
--- /dev/null
|
||||
+++ b/scripts/growfs
|
||||
@@ -0,0 +1,100 @@
|
||||
+#!/bin/bash
|
||||
+set -euo pipefail
|
||||
+
|
||||
+# This script grows the root
|
||||
+
|
||||
+sleep 5
|
||||
+udevadm settle
|
||||
+TYPE=$(lsblk --output FSTYPE /dev/disk/by-label/root | tail -n1)
|
||||
+echo ${TYPE}
|
||||
+dev=$(realpath /dev/disk/by-label/root)
|
||||
+
|
||||
+mount -t ${TYPE} /dev/disk/by-label/root /sysroot
|
||||
+
|
||||
+# We run after the rootfs is mounted at /sysroot
|
||||
+path=/sysroot
|
||||
+
|
||||
+# The use of tail is to avoid errors from duplicate mounts;
|
||||
+# this shouldn't happen for us but we're being conservative.
|
||||
+src=$(findmnt -nvr -o SOURCE "$path" | tail -n1)
|
||||
+
|
||||
+partition=$(realpath /dev/disk/by-label/root)
|
||||
+
|
||||
+# Go through each blockdev in the hierarchy and verify we know how to grow them
|
||||
+lsblk -no TYPE "${partition}" | while read dev; do
|
||||
+ case "${dev}" in
|
||||
+ part|crypt) ;;
|
||||
+ *) echo "error: Unsupported blockdev type ${dev}" 1>&2; exit 1 ;;
|
||||
+ esac
|
||||
+done
|
||||
+
|
||||
+# Get the filesystem type before extending the partition. This matters
|
||||
+# because the partition, once extended, might include leftover superblocks
|
||||
+# from the previous contents of the disk (notably ZFS), causing blkid to
|
||||
+eval $(blkid -o export "${src}")
|
||||
+
|
||||
+ROOTFS_TYPE=${TYPE:-}
|
||||
+case "${ROOTFS_TYPE}" in
|
||||
+ xfs|ext4|btrfs) ;;
|
||||
+ *) echo "error: Unsupported filesystem for ${path}: '${ROOTFS_TYPE}'" 1>&2; exit 1 ;;
|
||||
+esac
|
||||
+
|
||||
+# Now, go through the hierarchy, growing everything. Note we go one device at a
|
||||
+# time using --nodeps, because ordering is buggy in el8:
|
||||
+# https://bugzilla.redhat.com/show_bug.cgi?id=1940607
|
||||
+current_blkdev=${partition}
|
||||
+while true; do
|
||||
+ eval "$(lsblk --paths --nodeps --pairs -o NAME,TYPE,PKNAME "${current_blkdev}")"
|
||||
+ MAJMIN=$(echo $(lsblk -dno MAJ:MIN "${NAME}"))
|
||||
+ case "${TYPE}" in
|
||||
+ part)
|
||||
+ eval $(udevadm info --query property --export "${current_blkdev}" | grep ^DM_ || :)
|
||||
+ if [ -n "${DM_MPATH:-}" ]; then
|
||||
+ # Since growpart does not understand device mapper, we have to use sfdisk.
|
||||
+ echo ", +" | sfdisk --no-reread --no-tell-kernel --force -N "${DM_PART}" "/dev/mapper/${DM_MPATH}"
|
||||
+ udevadm settle # Wait for udev-triggered kpartx to update mappings
|
||||
+ else
|
||||
+ partnum=$(cat "/sys/dev/block/${MAJMIN}/partition")
|
||||
+ # XXX: ideally this'd be idempotent and we wouldn't `|| :`
|
||||
+ growpart "${PKNAME}" "${partnum}" || :
|
||||
+ fi
|
||||
+ ;;
|
||||
+ crypt)
|
||||
+ # XXX: yuck... we need to expose this sanely in clevis
|
||||
+ (. /usr/bin/clevis-luks-common-functions
|
||||
+ eval $(udevadm info --query=property --export "${NAME}")
|
||||
+ # lsblk doesn't print PKNAME of crypt devices with --nodeps
|
||||
+ PKNAME=/dev/$(ls "/sys/dev/block/${MAJMIN}/slaves")
|
||||
+ clevis_luks_unlock_device "${PKNAME}" | cryptsetup resize -d- "${DM_NAME}"
|
||||
+ )
|
||||
+ ;;
|
||||
+ # already checked
|
||||
+ *) echo "unreachable" 1>&2; exit 1 ;;
|
||||
+ esac
|
||||
+ holders="/sys/dev/block/${MAJMIN}/holders"
|
||||
+ [ -d "${holders}" ] || break
|
||||
+ nholders="$(ls "${holders}" | wc -l)"
|
||||
+ if [ "${nholders}" -eq 0 ]; then
|
||||
+ break
|
||||
+ elif [ "${nholders}" -gt 1 ]; then
|
||||
+ # this shouldn't happen since we've checked the partition types already
|
||||
+ echo "error: Unsupported block device with multiple children: ${NAME}" 1>&2
|
||||
+ exit 1
|
||||
+ fi
|
||||
+ current_blkdev=/dev/$(ls "${holders}")
|
||||
+done
|
||||
+
|
||||
+# Wipe any filesystem signatures from the extended partition that don't
|
||||
+# correspond to the FS type we detected earlier.
|
||||
+wipefs -af -t "no${ROOTFS_TYPE}" "${src}"
|
||||
+
|
||||
+# TODO: Add XFS to https://github.com/systemd/systemd/blob/master/src/partition/growfs.c
|
||||
+# and use it instead.
|
||||
+case "${ROOTFS_TYPE}" in
|
||||
+ xfs) xfs_growfs "${path}" ;;
|
||||
+ ext4) resize2fs "${src}" ;;
|
||||
+ btrfs) btrfs filesystem resize max ${path} ;;
|
||||
+esac
|
||||
+
|
||||
+# this is useful for tests
|
||||
+touch /run/growfs.stamp
|
||||
\ No newline at end of file
|
||||
diff --git a/src/blockdev.rs b/src/blockdev.rs
|
||||
index f9701b9..2fdd6f0 100644
|
||||
--- a/src/blockdev.rs
|
||||
+++ b/src/blockdev.rs
|
||||
@@ -970,7 +970,7 @@ pub fn udev_settle() -> Result<()> {
|
||||
// udevd hasn't yet received updates from the kernel, settle will return
|
||||
// immediately, and lsblk won't pick up partition labels. Try to sleep
|
||||
// our way out of this.
|
||||
- sleep(Duration::from_millis(200));
|
||||
+ sleep(Duration::from_millis(500));
|
||||
|
||||
runcmd!("udevadm", "settle")?;
|
||||
Ok(())
|
||||
diff --git a/systemd/coreos-installer-reboot.service b/systemd/coreos-installer-reboot.service
|
||||
index ad79614..f9ba80e 100644
|
||||
--- a/systemd/coreos-installer-reboot.service
|
||||
+++ b/systemd/coreos-installer-reboot.service
|
||||
@@ -1,6 +1,5 @@
|
||||
[Unit]
|
||||
Description=Reboot after CoreOS Installer
|
||||
-#Requires=coreos-installer.target
|
||||
After=coreos-installer.service
|
||||
OnFailure=emergency.target
|
||||
OnFailureJobMode=replace-irreversibly
|
||||
diff --git a/systemd/coreos-installer.service b/systemd/coreos-installer.service
|
||||
index 716b783..e8199a9 100644
|
||||
--- a/systemd/coreos-installer.service
|
||||
+++ b/systemd/coreos-installer.service
|
||||
@@ -1,13 +1,5 @@
|
||||
[Unit]
|
||||
Description=CoreOS Installer
|
||||
-#Before=coreos-installer.target
|
||||
-#After=nm-run.service
|
||||
-#After=network-online.target
|
||||
-#Wants=network-online.target
|
||||
-# Until we retry HTTP requests let's wait here until
|
||||
-# systemd-resolved comes up if enabled.
|
||||
-# https://github.com/coreos/coreos-installer/issues/283
|
||||
-#After=systemd-resolved.service
|
||||
|
||||
After=basic.target
|
||||
# Network is enabled here
|
||||
diff --git a/systemd/growfs.service b/systemd/growfs.service
|
||||
new file mode 100644
|
||||
index 0000000..6d77aaa
|
||||
--- /dev/null
|
||||
+++ b/systemd/growfs.service
|
||||
@@ -0,0 +1,13 @@
|
||||
+[Unit]
|
||||
+Description=Grow root filesystem
|
||||
+DefaultDependencies=false
|
||||
+
|
||||
+After=coreos-installer.service
|
||||
+Before=coreos-installer-reboot.service
|
||||
+Requires=dev-disk-by\x2dlabel-root.device
|
||||
+After=dev-disk-by\x2dlabel-root.device
|
||||
+
|
||||
+[Service]
|
||||
+Type=oneshot
|
||||
+ExecStart=/usr/sbin/growfs
|
||||
+RemainAfterExit=yes
|
||||
\ No newline at end of file
|
80
SOURCES/coidracut4.patch
Normal file
80
SOURCES/coidracut4.patch
Normal file
@ -0,0 +1,80 @@
|
||||
diff --git a/systemd/coreos-installer-generator b/systemd/coreos-installer-generator
|
||||
index b2bcaec..2b85dc5 100755
|
||||
--- a/systemd/coreos-installer-generator
|
||||
+++ b/systemd/coreos-installer-generator
|
||||
@@ -2,6 +2,8 @@
|
||||
# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
|
||||
# ex: ts=8 sw=4 sts=4 et filetype=sh
|
||||
|
||||
+command -v getarg >/dev/null || . /usr/lib/dracut-lib.sh
|
||||
+
|
||||
set -e
|
||||
|
||||
# Generators don't have logging right now
|
||||
@@ -10,6 +12,14 @@ exec 1>/dev/kmsg; exec 2>&1
|
||||
|
||||
UNIT_DIR="${1:-/tmp}"
|
||||
|
||||
+add_requires() {
|
||||
+ local name="$1"; shift
|
||||
+ local target="$1"; shift
|
||||
+ local requires_dir="${UNIT_DIR}/${target}.requires"
|
||||
+ mkdir -p "${requires_dir}"
|
||||
+ ln -sf "../${name}" "${requires_dir}/${name}"
|
||||
+}
|
||||
+
|
||||
cmdline=( $(</proc/cmdline) )
|
||||
karg() {
|
||||
local name="$1" value="$2"
|
||||
@@ -38,3 +48,38 @@ if [ -n "$(karg coreos.inst.install_dev)" ]; then
|
||||
> /run/coreos-installer-reboot
|
||||
fi
|
||||
fi
|
||||
+
|
||||
+add_requires run-media-iso.mount default.target
|
||||
+
|
||||
+isoroot=$(getarg edge.liveiso= ||:)
|
||||
+
|
||||
+mkdir -p /run/media/iso
|
||||
+isosrc=dev/disk/by-label/${isoroot}
|
||||
+isosrc_escaped=$(systemd-escape -p --suffix=device "${isosrc}")
|
||||
+
|
||||
+if [ -n "${isoroot}" ]; then
|
||||
+cat >"${UNIT_DIR}/run-media-iso.mount" <<EOF
|
||||
+# Automatically generated by live-generator
|
||||
+[Unit]
|
||||
+DefaultDependencies=false
|
||||
+# HACK for https://github.com/coreos/fedora-coreos-config/issues/437
|
||||
+Wants=systemd-udev-settle.service
|
||||
+Wants=systemd-udevd.service
|
||||
+After=systemd-udevd.service
|
||||
+After=basic.target
|
||||
+# Network is enabled here
|
||||
+After=nm-run.service
|
||||
+# compat: remove when everyone is on dracut 053+
|
||||
+After=dracut-initqueue.service
|
||||
+
|
||||
+Before=coreos-installer.service
|
||||
+After=${isosrc_escaped}
|
||||
+Requires=${isosrc_escaped}
|
||||
+ConditionKernelCommandLine=coreos.inst.image_file
|
||||
+[Mount]
|
||||
+What=/${isosrc}
|
||||
+Where=/run/media/iso
|
||||
+Options=ro
|
||||
+Type=iso9660
|
||||
+EOF
|
||||
+fi
|
||||
\ No newline at end of file
|
||||
diff --git a/systemd/growfs.service b/systemd/growfs.service
|
||||
index 6d77aaa..fee934d 100644
|
||||
--- a/systemd/growfs.service
|
||||
+++ b/systemd/growfs.service
|
||||
@@ -5,7 +5,6 @@ DefaultDependencies=false
|
||||
After=coreos-installer.service
|
||||
Before=coreos-installer-reboot.service
|
||||
Requires=dev-disk-by\x2dlabel-root.device
|
||||
-After=dev-disk-by\x2dlabel-root.device
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
16
SOURCES/coidracut5.patch
Normal file
16
SOURCES/coidracut5.patch
Normal file
@ -0,0 +1,16 @@
|
||||
diff --git a/systemd/coreos-installer-generator b/systemd/coreos-installer-generator
|
||||
index 2b85dc5..75ab3c3 100755
|
||||
--- a/systemd/coreos-installer-generator
|
||||
+++ b/systemd/coreos-installer-generator
|
||||
@@ -39,6 +39,11 @@ karg_bool() {
|
||||
esac
|
||||
}
|
||||
|
||||
+# if we're not running in dracut, skip
|
||||
+if [ -z "$(karg edge.liveiso)" ]; then
|
||||
+ exit 0
|
||||
+fi
|
||||
+
|
||||
if [ -n "$(karg coreos.inst.install_dev)" ]; then
|
||||
# ln -sf "/usr/lib/systemd/system/coreos-installer-post.target" \
|
||||
# "${UNIT_DIR}/basic.target"
|
11
SOURCES/disable-lto-0.6.0.patch
Normal file
11
SOURCES/disable-lto-0.6.0.patch
Normal file
@ -0,0 +1,11 @@
|
||||
--- coreos-installer-0.6.0/Cargo.toml.orig 2020-09-02 17:43:05.348336989 -0400
|
||||
+++ coreos-installer-0.6.0/Cargo.toml 2020-09-02 17:43:12.092348561 -0400
|
||||
@@ -26,8 +26,6 @@
|
||||
pre-release-commit-message = "cargo: coreos-installer release {{version}}"
|
||||
sign-commit = true
|
||||
tag-message = "coreos-installer v{{version}}"
|
||||
-[profile.release]
|
||||
-lto = true
|
||||
|
||||
[lib]
|
||||
name = "libcoreinst"
|
10
SOURCES/enable-rdcore.patch
Normal file
10
SOURCES/enable-rdcore.patch
Normal file
@ -0,0 +1,10 @@
|
||||
--- coreos-installer-0.9.1/Cargo.toml 2021-05-14T03:33:33+00:00
|
||||
+++ coreos-installer-0.9.1/Cargo.toml 2021-05-17T14:08:34.787109+00:00
|
||||
@@ -120,6 +120,7 @@
|
||||
version = "^1.0"
|
||||
|
||||
[features]
|
||||
+default = ["rdcore"]
|
||||
rdcore = []
|
||||
[target."cfg(target_arch = \"s390x\")".dependencies.mbrman]
|
||||
version = ">= 0.3, < 0.5"
|
26
SOURCES/force_persist_ip-0.9.1.patch
Normal file
26
SOURCES/force_persist_ip-0.9.1.patch
Normal file
@ -0,0 +1,26 @@
|
||||
From d3ecd9b240203b8e1eaa47bc62c2976a25ed3994 Mon Sep 17 00:00:00 2001
|
||||
From: Dusty Mabe <dusty@dustymabe.com>
|
||||
Date: Mon, 7 Jun 2021 18:53:29 -0400
|
||||
Subject: [PATCH] add coreos.force_persist_ip to list of persisted dracut args
|
||||
|
||||
xref: https://github.com/coreos/fedora-coreos-config/pull/1045
|
||||
---
|
||||
scripts/coreos-installer-service | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/scripts/coreos-installer-service b/scripts/coreos-installer-service
|
||||
index ff9ff5f..347b5f5 100755
|
||||
--- a/scripts/coreos-installer-service
|
||||
+++ b/scripts/coreos-installer-service
|
||||
@@ -8,7 +8,7 @@ PERSIST_KERNEL_NET_PARAMS=("ipv6.disable" "net.ifnames" "net.naming-scheme")
|
||||
# Dracut networking params to persist
|
||||
# Everything other than rd.neednet.
|
||||
# List from https://www.mankier.com/7/dracut.cmdline#Description-Network
|
||||
-PERSIST_DRACUT_NET_PARAMS=("ip" "ifname" "rd.route" "bootdev" "BOOTIF" "rd.bootif" "nameserver" "rd.peerdns" "biosdevname" "vlan" "bond" "team" "bridge" "rd.net.timeout.carrier" "coreos.no_persist_ip")
|
||||
+PERSIST_DRACUT_NET_PARAMS=("ip" "ifname" "rd.route" "bootdev" "BOOTIF" "rd.bootif" "nameserver" "rd.peerdns" "biosdevname" "vlan" "bond" "team" "bridge" "rd.net.timeout.carrier" "coreos.no_persist_ip" "coreos.force_persist_ip")
|
||||
|
||||
# IBM S390X params to persist
|
||||
PERSIST_S390X_PARAMS=("rd.dasd" "rd.zfcp" "rd.znet" "zfcp.allow_lun_scan" "cio_ignore")
|
||||
--
|
||||
2.31.1
|
||||
|
166
SOURCES/s390x-support-virtio-dasd-0.9.1.patch
Normal file
166
SOURCES/s390x-support-virtio-dasd-0.9.1.patch
Normal file
@ -0,0 +1,166 @@
|
||||
From c4fabc7c801491019263523df3c9078cca99bb6e Mon Sep 17 00:00:00 2001
|
||||
From: Nikita Dubrovskii <nikita@linux.ibm.com>
|
||||
Date: Wed, 2 Jun 2021 14:27:42 +0200
|
||||
Subject: [PATCH] s390: add support for virtio dasds
|
||||
|
||||
This is a fix for https://bugzilla.redhat.com/show_bug.cgi?id=1960485
|
||||
|
||||
Signed-off-by: Nikita Dubrovskii <nikita@linux.ibm.com>
|
||||
---
|
||||
src/blockdev.rs | 30 ++++++++++++++++++++++++++++--
|
||||
src/cmdline.rs | 2 +-
|
||||
src/install.rs | 6 +++---
|
||||
src/s390x/dasd.rs | 15 +++++++++++----
|
||||
4 files changed, 43 insertions(+), 10 deletions(-)
|
||||
|
||||
diff --git a/src/blockdev.rs b/src/blockdev.rs
|
||||
index 90c6bee..df8e10a 100644
|
||||
--- a/src/blockdev.rs
|
||||
+++ b/src/blockdev.rs
|
||||
@@ -970,10 +970,36 @@ pub fn detect_formatted_sector_size(buf: &[u8]) -> Option<NonZeroU32> {
|
||||
}
|
||||
|
||||
/// Checks if underlying device is IBM DASD disk
|
||||
-pub fn is_dasd(device: &str) -> Result<bool> {
|
||||
+pub fn is_dasd(device: &str, fd: Option<&mut File>) -> Result<bool> {
|
||||
let target =
|
||||
canonicalize(device).with_context(|| format!("getting absolute path to {}", device))?;
|
||||
- Ok(target.to_string_lossy().starts_with("/dev/dasd"))
|
||||
+ if target.to_string_lossy().starts_with("/dev/dasd") {
|
||||
+ return Ok(true);
|
||||
+ }
|
||||
+ let read_magic = |device: &str, disk: &mut File| -> Result<[u8; 4]> {
|
||||
+ let offset = disk
|
||||
+ .seek(SeekFrom::Current(0))
|
||||
+ .with_context(|| format!("saving offset {}", device))?;
|
||||
+ disk.seek(SeekFrom::Start(8194))
|
||||
+ .with_context(|| format!("seeking {}", device))?;
|
||||
+ let mut lbl = [0u8; 4];
|
||||
+ disk.read_exact(&mut lbl)
|
||||
+ .with_context(|| format!("reading label {}", device))?;
|
||||
+ disk.seek(SeekFrom::Start(offset))
|
||||
+ .with_context(|| format!("restoring offset {}", device))?;
|
||||
+ Ok(lbl)
|
||||
+ };
|
||||
+ if target.to_string_lossy().starts_with("/dev/vd") {
|
||||
+ let cdl_magic = [0xd3, 0xf1, 0xe5, 0xd6];
|
||||
+ let lbl = if let Some(t) = fd {
|
||||
+ read_magic(device, t)?
|
||||
+ } else {
|
||||
+ let mut disk = File::open(device).with_context(|| format!("opening {}", device))?;
|
||||
+ read_magic(device, &mut disk)?
|
||||
+ };
|
||||
+ return Ok(cdl_magic == lbl);
|
||||
+ }
|
||||
+ Ok(false)
|
||||
}
|
||||
|
||||
// create unsafe ioctl wrappers
|
||||
diff --git a/src/cmdline.rs b/src/cmdline.rs
|
||||
index db3d1d0..53b8179 100644
|
||||
--- a/src/cmdline.rs
|
||||
+++ b/src/cmdline.rs
|
||||
@@ -853,7 +853,7 @@ fn parse_install(matches: &ArgMatches) -> Result<Config> {
|
||||
// it changes to the recommended 4096
|
||||
// https://bugzilla.redhat.com/show_bug.cgi?id=1905159
|
||||
#[allow(clippy::match_bool, clippy::match_single_binding)]
|
||||
- let sector_size = match is_dasd(&device)
|
||||
+ let sector_size = match is_dasd(&device, None)
|
||||
.with_context(|| format!("checking whether {} is an IBM DASD disk", device))?
|
||||
{
|
||||
#[cfg(target_arch = "s390x")]
|
||||
diff --git a/src/install.rs b/src/install.rs
|
||||
index baa3880..20d1f41 100644
|
||||
--- a/src/install.rs
|
||||
+++ b/src/install.rs
|
||||
@@ -47,7 +47,7 @@ pub fn install(config: &InstallConfig) -> Result<()> {
|
||||
|
||||
#[cfg(target_arch = "s390x")]
|
||||
{
|
||||
- if is_dasd(&config.device)? {
|
||||
+ if is_dasd(&config.device, None)? {
|
||||
if !config.save_partitions.is_empty() {
|
||||
// The user requested partition saving, but SavedPartitions
|
||||
// doesn't understand DASD VTOCs and won't find any partitions
|
||||
@@ -156,7 +156,7 @@ fn write_disk(
|
||||
|
||||
// copy the image
|
||||
#[allow(clippy::match_bool, clippy::match_single_binding)]
|
||||
- let image_copy = match is_dasd(&config.device)? {
|
||||
+ let image_copy = match is_dasd(&config.device, Some(dest))? {
|
||||
#[cfg(target_arch = "s390x")]
|
||||
true => s390x::image_copy_s390x,
|
||||
_ => image_copy_default,
|
||||
@@ -527,7 +527,7 @@ fn reset_partition_table(
|
||||
) -> Result<()> {
|
||||
eprintln!("Resetting partition table");
|
||||
|
||||
- if is_dasd(&config.device)? {
|
||||
+ if is_dasd(&config.device, Some(dest))? {
|
||||
// Don't write out a GPT, since the backup GPT may overwrite
|
||||
// something we're not allowed to touch. Just clear the first MiB
|
||||
// of disk.
|
||||
diff --git a/src/s390x/dasd.rs b/src/s390x/dasd.rs
|
||||
index 7145071..b7dea78 100644
|
||||
--- a/src/s390x/dasd.rs
|
||||
+++ b/src/s390x/dasd.rs
|
||||
@@ -35,13 +35,15 @@ pub(crate) struct Range {
|
||||
pub length: u64,
|
||||
}
|
||||
|
||||
-/// There are 2 types of DASD devices:
|
||||
+/// There are 3 types of DASD devices:
|
||||
/// - ECKD (Extended Count Key Data) - is regular DASD of type 3390
|
||||
/// - FBA (Fixed Block Access) - is used for emulated device that represents a real SCSI device
|
||||
+/// - Virt - ECKD on LPAR/zKVM as virtio-device
|
||||
/// Only ECKD disks require `dasdfmt, fdasd` linux tools to be configured.
|
||||
enum DasdType {
|
||||
Eckd,
|
||||
Fba,
|
||||
+ Virt,
|
||||
}
|
||||
|
||||
fn get_dasd_type<P: AsRef<Path>>(device: P) -> Result<DasdType> {
|
||||
@@ -53,6 +55,9 @@ fn get_dasd_type<P: AsRef<Path>>(device: P) -> Result<DasdType> {
|
||||
.with_context(|| format!("getting name of {}", device.display()))?
|
||||
.to_string_lossy()
|
||||
.to_string();
|
||||
+ if device.starts_with("vd") {
|
||||
+ return Ok(DasdType::Virt);
|
||||
+ }
|
||||
let devtype_path = format!("/sys/class/block/{}/device/devtype", device);
|
||||
let devtype_str = std::fs::read_to_string(&devtype_path)
|
||||
.with_context(|| format!("reading {}", devtype_path))?;
|
||||
@@ -66,7 +71,7 @@ fn get_dasd_type<P: AsRef<Path>>(device: P) -> Result<DasdType> {
|
||||
pub fn prepare_dasd(dasd: &str) -> Result<()> {
|
||||
match get_dasd_type(dasd)? {
|
||||
DasdType::Eckd => eckd_prepare(dasd),
|
||||
- DasdType::Fba => Ok(()),
|
||||
+ DasdType::Fba | DasdType::Virt => Ok(()),
|
||||
}
|
||||
}
|
||||
|
||||
@@ -75,7 +80,7 @@ pub fn prepare_dasd(dasd: &str) -> Result<()> {
|
||||
pub fn dasd_try_get_sector_size(dasd: &str) -> Result<Option<NonZeroU32>> {
|
||||
match get_dasd_type(dasd)? {
|
||||
DasdType::Eckd => eckd_try_get_sector_size(dasd),
|
||||
- DasdType::Fba => Ok(None),
|
||||
+ DasdType::Fba | DasdType::Virt => Ok(None),
|
||||
}
|
||||
}
|
||||
|
||||
@@ -87,8 +92,10 @@ pub fn image_copy_s390x(
|
||||
_saved: Option<&SavedPartitions>,
|
||||
) -> Result<()> {
|
||||
let ranges = match get_dasd_type(dest_path)? {
|
||||
- DasdType::Eckd => eckd_make_partitions(&dest_path.to_string_lossy(), dest_file, first_mb)?,
|
||||
DasdType::Fba => fba_make_partitions(&dest_path.to_string_lossy(), dest_file, first_mb)?,
|
||||
+ DasdType::Eckd | DasdType::Virt => {
|
||||
+ eckd_make_partitions(&dest_path.to_string_lossy(), dest_file, first_mb)?
|
||||
+ }
|
||||
};
|
||||
|
||||
// copy each partition
|
||||
--
|
||||
2.31.1
|
||||
|
223
SPECS/coreos-installer.spec
Normal file
223
SPECS/coreos-installer.spec
Normal file
@ -0,0 +1,223 @@
|
||||
# Generated by rust2rpm 13
|
||||
%define dracutlibdir %{_prefix}/lib/dracut
|
||||
%bcond_without check
|
||||
%global __cargo_skip_build 0
|
||||
# The library is for internal code reuse and is not a public API
|
||||
%global __cargo_is_lib 0
|
||||
|
||||
%global crate coreos-installer
|
||||
|
||||
Name: %{crate}
|
||||
Version: 0.9.1
|
||||
Release: 17%{?dist}
|
||||
Summary: Installer for Fedora CoreOS and RHEL CoreOS
|
||||
|
||||
# Upstream license specification: Apache-2.0
|
||||
License: ASL 2.0
|
||||
URL: https://github.com/fedora-iot/coreos-installer
|
||||
Source: https://crates.io/api/v1/crates/%{crate}/%{version}/download#/%{crate}-%{version}.crate
|
||||
Source1: https://github.com/coreos/coreos-installer/releases/download/v%{version}/%{crate}-%{version}-vendor.tar.gz
|
||||
|
||||
# The RHEL 8 rust-toolset macros don't let us enable features from the
|
||||
# %%cargo_* macros. Enable rdcore directly in Cargo.toml.
|
||||
Patch0: enable-rdcore.patch
|
||||
# LTO causes runtime crashes on s390x
|
||||
# https://github.com/coreos/coreos-installer/pull/360
|
||||
# https://github.com/coreos/coreos-installer/issues/372
|
||||
# https://bugzilla.redhat.com/show_bug.cgi?id=1863466
|
||||
Patch1: disable-lto-0.6.0.patch
|
||||
# Add coreos.force_persist_ip karg forwarding
|
||||
# https://github.com/coreos/coreos-installer/pull/554
|
||||
Patch2: force_persist_ip-0.9.1.patch
|
||||
# Support s390x DASDs in VMs via virtio
|
||||
# https://github.com/coreos/coreos-installer/pull/552
|
||||
Patch3: s390x-support-virtio-dasd-0.9.1.patch
|
||||
Patch4: coidracut.patch
|
||||
Patch5: coidracut2.patch
|
||||
Patch6: coidracut3.patch
|
||||
Patch7: coidracut4.patch
|
||||
Patch8: coidracut5.patch
|
||||
|
||||
ExclusiveArch: %{rust_arches}
|
||||
BuildRequires: openssl-devel
|
||||
BuildRequires: rust-toolset
|
||||
BuildRequires: systemd
|
||||
|
||||
Requires: gnupg
|
||||
Requires: kpartx
|
||||
Requires: systemd-udev
|
||||
Requires: util-linux
|
||||
%ifarch s390x
|
||||
# This should eventually be spelled "s390utils-core" but the binaries
|
||||
# haven't been broken out of s390utils-base yet
|
||||
Requires: /usr/sbin/chreipl
|
||||
Requires: /usr/sbin/dasdfmt
|
||||
Requires: /usr/sbin/fdasd
|
||||
Requires: /usr/sbin/lszdev
|
||||
Requires: /usr/sbin/zipl
|
||||
%endif
|
||||
|
||||
# Since `rust-coreos-installer` creates a `coreos-installer`
|
||||
# subpackage with a newer version number, which supersedes the
|
||||
# deprecated `coreos-installer` package (https://src.fedoraproject.org/rpms/coreos-installer),
|
||||
# an explicit `Obsoletes:` for `coreos-installer` is not necessary.
|
||||
|
||||
# Obsolete dracut modules as they are not provided in this package.
|
||||
Obsoletes: coreos-installer-dracut < 0.0.1
|
||||
|
||||
%global _description %{expand:
|
||||
coreos-installer installs Fedora CoreOS or RHEL CoreOS to bare-metal
|
||||
machines (or, occasionally, to virtual machines).
|
||||
}
|
||||
%description %{_description}
|
||||
|
||||
%files
|
||||
%license LICENSE
|
||||
%doc README.md
|
||||
%{_bindir}/coreos-installer
|
||||
|
||||
%prep
|
||||
%autosetup -n %{crate}-%{version} -p1
|
||||
%cargo_prep -V 1
|
||||
# https://github.com/rust-lang-nursery/error-chain/pull/289
|
||||
find -name '*.rs' -executable -exec chmod a-x {} \;
|
||||
|
||||
%build
|
||||
%cargo_build
|
||||
|
||||
%install
|
||||
%cargo_install
|
||||
# Install binaries, dracut modules, units, targets, generators for running via systemd
|
||||
install -D -m 0755 -t %{buildroot}%{dracutlibdir}/modules.d/50rdcore dracut/50rdcore/module-setup.sh
|
||||
install -D -m 0755 -t %{buildroot}%{_libexecdir} scripts/coreos-installer-service
|
||||
install -D -m 0755 -t %{buildroot}%{_libexecdir} scripts/coreos-installer-disable-device-auto-activation
|
||||
install -D -m 0644 -t %{buildroot}%{_unitdir} systemd/coreos-installer-disable-device-auto-activation.service
|
||||
install -D -m 0644 -t %{buildroot}%{_unitdir} systemd/coreos-installer.service
|
||||
install -D -m 0644 -t %{buildroot}%{_unitdir} systemd/coreos-installer-reboot.service
|
||||
install -D -m 0644 -t %{buildroot}%{_unitdir} systemd/coreos-installer-noreboot.service
|
||||
install -D -m 0644 -t %{buildroot}%{_unitdir} systemd/coreos-installer-pre.target
|
||||
install -D -m 0644 -t %{buildroot}%{_unitdir} systemd/coreos-installer.target
|
||||
install -D -m 0644 -t %{buildroot}%{_unitdir} systemd/coreos-installer-post.target
|
||||
install -D -m 0755 -t %{buildroot}%{_systemdgeneratordir} systemd/coreos-installer-generator
|
||||
mv %{buildroot}%{_bindir}/rdcore %{buildroot}%{dracutlibdir}/modules.d/50rdcore/
|
||||
cp -a %{buildroot}%{_bindir}/coreos-installer %{buildroot}%{dracutlibdir}/modules.d/50rdcore/
|
||||
install -D -m 0755 -t %{buildroot}%{dracutlibdir}/modules.d/50rdcore scripts/coreos-installer-service
|
||||
install -D -m 0755 -t %{buildroot}%{dracutlibdir}/modules.d/50rdcore scripts/growfs
|
||||
install -D -m 0755 -t %{buildroot}%{dracutlibdir}/modules.d/50rdcore scripts/coreos-installer-disable-device-auto-activation
|
||||
install -D -m 0644 -t %{buildroot}%{dracutlibdir}/modules.d/50rdcore systemd/coreos-installer-disable-device-auto-activation.service
|
||||
install -D -m 0644 -t %{buildroot}%{dracutlibdir}/modules.d/50rdcore systemd/coreos-installer.service
|
||||
install -D -m 0644 -t %{buildroot}%{dracutlibdir}/modules.d/50rdcore systemd/growfs.service
|
||||
install -D -m 0644 -t %{buildroot}%{dracutlibdir}/modules.d/50rdcore systemd/coreos-installer-reboot.service
|
||||
install -D -m 0644 -t %{buildroot}%{dracutlibdir}/modules.d/50rdcore systemd/coreos-installer-noreboot.service
|
||||
install -D -m 0644 -t %{buildroot}%{dracutlibdir}/modules.d/50rdcore systemd/coreos-installer-pre.target
|
||||
install -D -m 0644 -t %{buildroot}%{dracutlibdir}/modules.d/50rdcore systemd/coreos-installer.target
|
||||
install -D -m 0644 -t %{buildroot}%{dracutlibdir}/modules.d/50rdcore systemd/coreos-installer-post.target
|
||||
install -D -m 0755 -t %{buildroot}%{dracutlibdir}/modules.d/50rdcore systemd/coreos-installer-generator
|
||||
|
||||
%package -n %{crate}-bootinfra
|
||||
Summary: %{crate} boot-time infrastructure for use on Fedora/RHEL CoreOS
|
||||
Requires: %{crate} = %{version}-%{release}
|
||||
|
||||
# Package was renamed from coreos-installer-systemd when rdcore was added
|
||||
Provides: %{crate}-systemd = %{version}-%{release}
|
||||
Obsoletes: %{crate}-systemd <= 0.3.0-2
|
||||
|
||||
%description -n %{crate}-bootinfra
|
||||
This subpackage contains boot-time infrastructure for Fedora CoreOS and
|
||||
RHEL CoreOS. It is not needed on other platforms.
|
||||
|
||||
%files -n %{crate}-bootinfra
|
||||
%{dracutlibdir}/modules.d/*
|
||||
%{_libexecdir}/*
|
||||
%{_unitdir}/*
|
||||
%{_systemdgeneratordir}/*
|
||||
|
||||
%if %{with check}
|
||||
%check
|
||||
%cargo_test
|
||||
%endif
|
||||
|
||||
%changelog
|
||||
* Thu Jun 10 2021 Benjamin Gilbert <bgilbert@redhat.com> - 0.9.1-3
|
||||
- Support s390x DASDs in VMs via virtio
|
||||
|
||||
* Tue Jun 08 2021 Dusty Mabe <dustymabe@redhat.com> - 0.9.1-2
|
||||
- Add coreos.force_persist_ip karg forwarding
|
||||
|
||||
* Wed Apr 21 2021 Benjamin Gilbert <bgilbert@redhat.com> - 0.9.0-3
|
||||
- Improve error message for busy disk referenced via symlink
|
||||
- Fix failure on corrupt GPT
|
||||
|
||||
* Fri Apr 9 2021 Sohan Kunkerkar <skunkerk@redhat.com> - 0.9.0-2
|
||||
- Use macro for dracut library path
|
||||
|
||||
* Thu Apr 8 2021 Sohan Kunkerkar <skunkerk@redhat.com> - 0.9.0-1
|
||||
- New release
|
||||
|
||||
* Fri Jan 15 2021 Benjamin Gilbert <bgilbert@redhat.com> - 0.8.0-3
|
||||
- Fix rdcore rootmap on RAID devices
|
||||
|
||||
* Tue Jan 12 2021 Benjamin Gilbert <bgilbert@redhat.com> - 0.8.0-2
|
||||
- Disable LTO again to avoid crashes on s390x
|
||||
|
||||
* Tue Jan 12 2021 Sohan Kunkerkar <skunkerk@redhat.com> - 0.8.0-1
|
||||
- New release
|
||||
|
||||
* Mon Jan 04 2021 Benjamin Gilbert <bgilbert@redhat.com> - 0.7.2-2
|
||||
- Add Requires for programs invoked by coreos-installer
|
||||
- Require Rust >= 1.45, re-enable LTO
|
||||
|
||||
* Thu Oct 22 2020 Sohan Kunkerkar <skunkerk@redhat.com> - 0.7.2-1
|
||||
- New release
|
||||
|
||||
* Mon Sep 21 2020 Benjamin Gilbert <bgilbert@redhat.com> - 0.6.0-3
|
||||
- Fix MBR handling when partition saving is enabled
|
||||
- Fix base package Obsoletes being interpreted as part of package description
|
||||
|
||||
* Wed Sep 02 2020 Benjamin Gilbert <bgilbert@redhat.com> - 0.6.0-2
|
||||
- Disable LTO on s390x to avoid runtime crashes
|
||||
- Drop legacy installer
|
||||
|
||||
* Tue Aug 25 2020 Benjamin Gilbert <bgilbert@redhat.com> - 0.6.0-1
|
||||
- New release
|
||||
|
||||
* Fri Jul 31 2020 Benjamin Gilbert <bgilbert@redhat.com> - 0.5.0-1
|
||||
- New release
|
||||
|
||||
* Sat Jul 25 2020 Benjamin Gilbert <bgilbert@redhat.com> - 0.4.0-1
|
||||
- New release
|
||||
- Rename -systemd subpackage to -bootinfra
|
||||
- Add rdcore Dracut module to -bootinfra
|
||||
|
||||
* Wed Jul 22 2020 Benjamin Gilbert <bgilbert@redhat.com> - 0.3.0-1
|
||||
- New release
|
||||
- Make coreos-installer-{service,generator} world-readable
|
||||
|
||||
* Wed Jun 17 2020 Dusty Mabe <dusty@dustymabe.com> - 0.2.0-4.rhaos4.6
|
||||
- Include rhaos4.6 in the rpm release field
|
||||
|
||||
* Thu May 28 2020 Colin Walters <walters@verbum.org> - 0.2.0-3
|
||||
- Backport osmet RHCOS+LUKS patches
|
||||
|
||||
* Thu May 07 2020 Dusty Mabe <dusty@dustymabe.com> - 0.2.0-2
|
||||
- Fix bug in dracut hook in legacy installer; see
|
||||
https://github.com/coreos/coreos-installer/pull/234
|
||||
|
||||
* Mon Apr 27 2020 Colin Walters <walters@verbum.org> - 0.1.3-4
|
||||
- Merge in legacy installer; see
|
||||
https://github.com/coreos/coreos-installer/pull/220
|
||||
|
||||
* Mon Mar 23 2020 Colin Walters <walters@verbum.org> - 0.1.3-2
|
||||
- https://github.com/coreos/coreos-installer/releases/tag/v0.1.3
|
||||
|
||||
* Wed Mar 04 2020 Colin Walters <walters@verbum.org> - 0.1.2-11
|
||||
- Backport no-signatures-available patch
|
||||
|
||||
* Wed Feb 26 2020 Colin Walters <walters@verbum.org> - 0.1.2-10
|
||||
- Forked from Fedora
|
||||
- I forgot about the weird `rust-` package name prefixing when
|
||||
asking RCM to make the dist-git repo, and rather than redo
|
||||
that I decided to just go with it.
|
||||
- Stop depending on systemd-rpm-macros since it's not in RHEL8 apparently
|
||||
- Drop other things only applicable to Fedora Rust packaging like
|
||||
dynamic buildrequires
|
Loading…
Reference in New Issue
Block a user