diff --git a/docs/distributor-notes.md b/docs/distributor-notes.md index b85b8f66e..23f917f4f 100644 --- a/docs/distributor-notes.md +++ b/docs/distributor-notes.md @@ -8,6 +8,10 @@ nav_order: 10 1. TOC {:toc} +## Dracut Module + +The distribution specific integration is responsible for ensuring that the ignition dracut module is included in the initramfs when necessary. This can be achieved by adding it as dependency of the dracut module containing the distribution integration, or by installing a dracut configuration file. + ## Kernel Arguments When Ignition is updating kernel arguments it will call out to a binary (defined in `internal/distro/distro.go` and overridable at build-time via overriding the `github.com/coreos/ignition/v2/internal/distro.kargsCmd` build flag). Ignition expects that the binary accepts `--should-exist` & `--should-not-exist` parameters. Should exist operations should append the argument if missing and should not exist should NOT fail if the argument is not present. The binary should also reboot the system if necessary. diff --git a/docs/release-notes.md b/docs/release-notes.md index ee77691ab..9e929859b 100644 --- a/docs/release-notes.md +++ b/docs/release-notes.md @@ -8,6 +8,9 @@ nav_order: 9 ### Breaking changes +- The dracut module is not automatically included in initramfs images anymore, + see distributor notes for details. + ### Features ### Changes diff --git a/dracut/30ignition/module-setup.sh b/dracut/30ignition/module-setup.sh index 15bb7276b..51bec7e79 100755 --- a/dracut/30ignition/module-setup.sh +++ b/dracut/30ignition/module-setup.sh @@ -2,6 +2,13 @@ # -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*- # ex: ts=8 sw=4 sts=4 et filetype=sh +check() { + # Only include this if another module requests it. + # In our case it'll be the distro provided module with integration and customizations + # (coreos-ignition/ignition-microos/...). + return 255 +} + depends() { echo qemu systemd url-lib network }