* Add awk and gawk in the initrafms
to allow growpart to work. Also include libraries which dracut fails to
auto-detect
Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
* Bump yip
to get this fix: https://github.com/mudler/yip/pull/110
as part of this: https://github.com/kairos-io/kairos/issues/1831
Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
* Fix lint errors
Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
---------
Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
This makes immucore run more in parallel rather than block everything
else. We just tell sysroot.mount that eventually it will be mounted and
to wait for a bit.
This allows us to be more flexible where to run and run in parallel in
cases like cdrom in which we may do things but we need the sysroot to be
mounted already but not from us.
Also adds the initramfs stage directly in immucore and merges all the dracut config into one
Dont create sysroot, just add a timeout override so it waits for us
Dont block on the service, just make sure to finish before
initrd.target
Fix mounts from cmdline
More proper log
Store logs under the /run/immucore dir
Store rootfs and initramfs logs separated
Do not log the full stages in INFO level
Run initramfs stage in immucore directly on boot and cd/netboot
Drop systemd requirement from dracut module
Signed-off-by: Itxaka itxaka.garcia@spectrocloud.com
If immucore is run we should just execute our normal dag stuff directly
instead of having a subcommand.
Keep the version subcommand and dry-flag
Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>
Make it explicit that we run before sysroot.mount, otherwise it may be
launched in parallel and fails as immucore hasnt mount the sysroot
already
Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>
* Full rework
- Extract steps to a different file
- Simplify dag for easy understanding
- Load dag based on our boot process
- Simplify steps to not depend on useless stuff
- Better logging
Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>
* Move sentinel file to the dag
Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>
* Adapt tests
Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>
---------
Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>
* Add extra files needed for dracut
If we are dropping cos-immutable-rootfs then we have to include the
missing files that the package already added.
For example, the several dracut configs of modules for the initramfs
stage, or the general config for the dracut file.
We also need to install and link the initramfs elemental stage service
as that its no longer provided by the cos-immutable-rootfs package and
not integrated into immucore yet
Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>
* Minor improvements
Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>
---------
Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>
For easy debugging
Also fixes missing stuff on dracut build to be able to still run the
cos-setup-rootfs/initramfs services and adds the missing elemental
binary to the initramfs.
As we remove the cos-immutable-rootfs module for dracut then both the
services and binary doesnt get included.
Signed-off-by: Itxaka <itxaka@spectrocloud.com>