2020-08-10 09:28:19 +00:00
|
|
|
#!/bin/bash
|
|
|
|
# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
|
|
|
|
# ex: ts=8 sw=4 sts=4 et filetype=sh
|
|
|
|
|
2023-08-23 14:09:02 +00:00
|
|
|
check() {
|
|
|
|
# Omit if building for this already configured system
|
2024-03-01 13:04:07 +00:00
|
|
|
if [[ $hostonly ]] && [ -e "${dracutsysrootdir}/etc/machine-id" ]; then
|
2023-08-23 14:09:02 +00:00
|
|
|
return 255
|
|
|
|
fi
|
|
|
|
return 0
|
|
|
|
}
|
|
|
|
|
2020-08-10 09:28:19 +00:00
|
|
|
depends() {
|
2023-08-23 14:09:02 +00:00
|
|
|
echo combustion crypt dm firstboot ignition
|
2020-08-10 09:28:19 +00:00
|
|
|
}
|
|
|
|
|
2021-08-09 15:33:18 +00:00
|
|
|
install_ignition_unit() {
|
|
|
|
local unit="$1"; shift
|
|
|
|
local target="${1:-ignition-complete.target}"; shift
|
|
|
|
local instantiated="${1:-$unit}"; 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" "$instantiated" || exit 1
|
|
|
|
}
|
|
|
|
|
2020-08-10 09:28:19 +00:00
|
|
|
install() {
|
|
|
|
inst_simple "$moddir/ignition-enable-network.service" \
|
|
|
|
"$systemdsystemunitdir/ignition-enable-network.service"
|
|
|
|
inst_simple "$moddir/ignition-mount-initrd-fstab.service" \
|
|
|
|
"$systemdsystemunitdir/ignition-mount-initrd-fstab.service"
|
2022-04-06 17:10:21 +00:00
|
|
|
inst_simple "$moddir/ignition-umount-initrd-fstab.service" \
|
|
|
|
"$systemdsystemunitdir/ignition-umount-initrd-fstab.service"
|
2020-08-10 09:28:19 +00:00
|
|
|
inst_simple "$moddir/ignition-userconfig-timeout.conf" \
|
|
|
|
"$systemdsystemunitdir/dev-disk-by\x2dlabel-ignition.device.d/ignition-userconfig-timeout.conf"
|
2022-03-25 15:23:52 +00:00
|
|
|
inst_simple "$moddir/ignition-touch-selinux-autorelabel.conf" \
|
|
|
|
"$systemdsystemunitdir/ignition-files.service.d/ignition-touch-selinux-autorelabel.conf"
|
2020-08-10 09:28:19 +00:00
|
|
|
inst_simple "$moddir/ignition-suse-generator" \
|
|
|
|
"/etc/systemd/system-generators/ignition-generator"
|
|
|
|
inst_script "$moddir/ignition-enable-network.sh" \
|
|
|
|
"/usr/sbin/ignition-enable-network"
|
2021-08-09 15:33:18 +00:00
|
|
|
inst_script "$moddir/ignition-setup-user.sh" \
|
|
|
|
"/usr/sbin/ignition-setup-user"
|
2023-08-23 13:44:12 +00:00
|
|
|
inst_multiple awk systemd-detect-virt cryptsetup
|
2022-03-16 16:27:02 +00:00
|
|
|
install_ignition_unit ignition-remove-reconfig_system.service initrd.target
|
2021-08-09 15:33:18 +00:00
|
|
|
install_ignition_unit ignition-setup-user.service
|
2020-08-10 09:28:19 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
installkernel() {
|
2021-07-28 14:00:07 +00:00
|
|
|
# Make sure we can read configuration from ISO image and vfat formated USB drives
|
|
|
|
hostonly='' instmods iso9660 vfat =fs/nls
|
2020-08-10 09:28:19 +00:00
|
|
|
}
|