summaryrefslogtreecommitdiffstats
path: root/libexec/container/start
diff options
context:
space:
mode:
authorSimon Spöhel <simon@spoehel.ch>2022-04-28 07:46:29 +0000
committerDaniel Baumann <daniel.baumann@open-infrastructure.net>2022-04-28 08:19:47 +0000
commit2b0b980572ed593a96b668af6baf9b64914497f4 (patch)
tree1f4da9ba2f6fec746ce2117a9cbfed1391d6d3db /libexec/container/start
parentReleasing version 20211231. (diff)
downloadcompute-tools-2b0b980572ed593a96b668af6baf9b64914497f4.tar.xz
compute-tools-2b0b980572ed593a96b668af6baf9b64914497f4.zip
Using systemd-networkd to manage veth interfaces on host.
Signed-off-by: Simon Spöhel <simon@spoehel.ch> Signed-off-by: Daniel Baumann <daniel.baumann@open-infrastructure.net>
Diffstat (limited to 'libexec/container/start')
-rwxr-xr-xlibexec/container/start17
1 files changed, 10 insertions, 7 deletions
diff --git a/libexec/container/start b/libexec/container/start
index f899446..da6be24 100755
--- a/libexec/container/start
+++ b/libexec/container/start
@@ -390,15 +390,18 @@ then
if [ -n "${BRIDGE}" ] && [ -n "${INTERFACE}" ]
then
-cat > "/etc/network/interfaces.d/${INTERFACE}" << EOF
-allow-hotplug ${INTERFACE}
-iface ${INTERFACE} inet manual
- pre-up ip link set ${INTERFACE} up
- post-up ip link set ${INTERFACE} master ${BRIDGE}
- pre-down ip link set ${INTERFACE} nomaster
- post-down ip link set ${INTERFACE} down
+ mkdir -p /run/systemd/network
+
+cat > "/run/systemd/network/${INTERFACE}.network" << EOF
+[Match]
+Name=${INTERFACE}
+
+[Network]
+Bridge=${BRIDGE}
EOF
+ networkctl reload
+
else
echo "Warning bridge definition '${BRIDGE_DEFINITION}' not recognized (expected <bridge>:<interface>): Ignoring"
fi