784a71e2bf
Currently systemd cannot track dependencies on configdrive very well because it is mounted via a service instead of a mount unit. Also since the interaction between path and mount units can lead to unexpected behavior if something goes wrong the cloudinit service is now triggered explicitly by the mount again. The configdrive path unit remains only as a fall back for containers where the mount unit doesn't kick in. Better to have two mechanisms that trigger the cloudinit service than none. :) Since mounting a virtfs based configdrive requires different mount options and two different mount units cannot refer to the same path the virtfs version now mounts to /media/configvirtfs. There are also two new kernel options: - `coreos.configdrive=1`: enable config drive on physical hardware. - `coreos.configdrive=0`: disable config drive on virtual machines.
11 lines
386 B
SYSTEMD
11 lines
386 B
SYSTEMD
[Unit]
|
|
Description=Watch for a cloud-config at /media/configdrive
|
|
|
|
# Note: This unit is essentially just here as a fall-back mechanism to
|
|
# trigger cloudinit if it isn't triggered explicitly by other means
|
|
# such as by a Wants= in the mount unit. This ensures we handle the
|
|
# case where /media/configdrive is provided to a CoreOS container.
|
|
|
|
[Path]
|
|
DirectoryNotEmpty=/media/configdrive
|