diff options
author | zsdc <taras@vyos.io> | 2023-05-04 22:26:17 +0300 |
---|---|---|
committer | zsdc <taras@vyos.io> | 2023-05-04 22:26:17 +0300 |
commit | 3c229a3646a58e47d4d69c011f82c45ef3bb3c77 (patch) | |
tree | 5c805e4e0d0d3131585cc5a7d0a8edf8167f5294 /src/systemd | |
parent | ba81c15185d7a59ab0ec6705b53b311b4dda721d (diff) | |
download | vyos-1x-3c229a3646a58e47d4d69c011f82c45ef3bb3c77.tar.gz vyos-1x-3c229a3646a58e47d4d69c011f82c45ef3bb3c77.zip |
cloud-init: T5190: Added Cloud-init pre-configurator
Added a new service that starts before Cloud-init, waits for all network
interfaces initialization, and if requested by config, checks which interfaces
can get configuration via DHCP server and creates a corresponding Cloud-init
network configuration.
This protects from two situations:
* when Cloud-init tries to get meta-data via eth0 (default and fallback variant
for any data source which depends on network), but the real network is connected
to another interface
* when Cloud-init starts simultaneously with udev and initializes the first
interface to get meta-data before it is renamed to eth0 by udev
Diffstat (limited to 'src/systemd')
-rw-r--r-- | src/systemd/vyos-config-cloud-init.service | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/systemd/vyos-config-cloud-init.service b/src/systemd/vyos-config-cloud-init.service new file mode 100644 index 000000000..ba6f90e6d --- /dev/null +++ b/src/systemd/vyos-config-cloud-init.service @@ -0,0 +1,19 @@ +[Unit] +Description=Pre-configure Cloud-init +DefaultDependencies=no +Requires=systemd-remount-fs.service +Requires=systemd-udevd.service +Wants=network-pre.target +After=systemd-remount-fs.service +After=systemd-udevd.service +Before=cloud-init-local.service + +[Service] +Type=oneshot +ExecStart=/usr/libexec/vyos/system/vyos-config-cloud-init.py +TimeoutSec=120 +KillMode=process +StandardOutput=journal+console + +[Install] +WantedBy=cloud-init-local.service |