diff options
Diffstat (limited to 'openstack')
-rw-r--r-- | openstack/etc/systemd/system/openvswitch-wait-for-bind@.service | 16 | ||||
-rw-r--r-- | openstack/manifest | 1 |
2 files changed, 17 insertions, 0 deletions
diff --git a/openstack/etc/systemd/system/openvswitch-wait-for-bind@.service b/openstack/etc/systemd/system/openvswitch-wait-for-bind@.service new file mode 100644 index 00000000..a736fe3d --- /dev/null +++ b/openstack/etc/systemd/system/openvswitch-wait-for-bind@.service @@ -0,0 +1,16 @@ +# Open vSwitch doesn't wait for all the interfaces to be configured before +# reporting "started", but we need to start networkd after they have been bound, +# so this unit waits for the interface to be bound before continuing, and is +# ordered before network-pre.target, which networkd orders itself after. +[Unit] +Description=Wait for Open vSwitch to bind %i +Requires=openvswitch.service +After=openvswitch.service +Before=network-pre.target + +[Service] +Type=oneshot +RemainAfterExit=true +ExecStart=/bin/sh -c \ + 'while ! readlink /sys/class/net/$1/master; do sleep 1; done' \ + - %I diff --git a/openstack/manifest b/openstack/manifest index 8c7b9915..9229606a 100644 --- a/openstack/manifest +++ b/openstack/manifest @@ -141,6 +141,7 @@ 0100644 0 0 /etc/systemd/system/openvswitch-setup.service 0100644 0 0 /etc/systemd/system/openvswitch-db-server.service 0100644 0 0 /etc/systemd/system/openvswitch.service +0100644 0 0 /etc/systemd/system/openvswitch-wait-for-bind@.service 0100755 0 0 /usr/share/openstack/openstack-neutron-network-configuration-for-one-node 0100644 0 0 /etc/systemd/system/openstack-neutron-network-configuration-one-node.service 0100644 0 0 /etc/systemd/system/openvswitch-initialize-db.service |