openvswitch: fixup the ovsdb-server.service

The service currently fails to run since the runtime directories
aren't being created. Create the runtime directories and fixup the
path to echo to get things working again.

Signed-off-by: Mark Asselstine <mark.asselstine@windriver.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
This commit is contained in:
Mark Asselstine 2018-09-04 16:12:40 -04:00 committed by Bruce Ashfield
parent e47cd6f12e
commit cdb64ac0d1
3 changed files with 40 additions and 6 deletions

View File

@ -0,0 +1,31 @@
From 219e7cf9f28fdf14747fdf674bec293f763fe8e3 Mon Sep 17 00:00:00 2001
From: Mark Asselstine <mark.asselstine@windriver.com>
Date: Tue, 4 Sep 2018 15:38:59 -0400
Subject: [PATCH] systemd: create runtime dirs
The recommendation would be to make use of "RuntimeDirectory=" and
"RuntimeDirectoryMode=" instead of 'mkdir' and 'chown' but since the
upstream service file uses 'chown' we will match this by using
'mkdir'. Without this the service will fail to start since these
directories won't exist.
Signed-off-by: Mark Asselstine <mark.asselstine@windriver.com>
---
rhel/usr_lib_systemd_system_ovsdb-server.service | 1 +
1 file changed, 1 insertion(+)
diff --git a/rhel/usr_lib_systemd_system_ovsdb-server.service b/rhel/usr_lib_systemd_system_ovsdb-server.service
index 694598f..0bb2274 100644
--- a/rhel/usr_lib_systemd_system_ovsdb-server.service
+++ b/rhel/usr_lib_systemd_system_ovsdb-server.service
@@ -10,6 +10,7 @@ Type=forking
Restart=on-failure
EnvironmentFile=/etc/openvswitch/default.conf
EnvironmentFile=-/etc/sysconfig/openvswitch
+ExecStartPre=-/bin/mkdir /var/run/openvswitch /var/log/openvswitch
ExecStartPre=/bin/chown ${OVS_USER_ID} /var/run/openvswitch /var/log/openvswitch
ExecStartPre=/bin/sh -c 'rm -f /run/openvswitch/useropts; if [ "$${OVS_USER_ID/:*/}" != "root" ]; then /bin/echo "OVSUSER=--ovs-user=${OVS_USER_ID}" > /run/openvswitch/useropts; fi'
EnvironmentFile=-/run/openvswitch/useropts
--
2.7.4

View File

@ -1,4 +1,4 @@
From 3dbfcb0fa944b57215fab46fe484b02e69ff6e03 Mon Sep 17 00:00:00 2001 From 163020a5bba1323dc337d72d4771bb81d824b0dc Mon Sep 17 00:00:00 2001
From: Mark Asselstine <mark.asselstine@windriver.com> From: Mark Asselstine <mark.asselstine@windriver.com>
Date: Tue, 29 May 2018 18:57:46 +0000 Date: Tue, 29 May 2018 18:57:46 +0000
Subject: [PATCH] systemd: update tool paths Subject: [PATCH] systemd: update tool paths
@ -9,8 +9,8 @@ different path, update accordingly.
Signed-off-by: Mark Asselstine <mark.asselstine@windriver.com> Signed-off-by: Mark Asselstine <mark.asselstine@windriver.com>
--- ---
rhel/usr_lib_systemd_system_ovs-vswitchd.service.in | 4 ++-- rhel/usr_lib_systemd_system_ovs-vswitchd.service.in | 4 ++--
rhel/usr_lib_systemd_system_ovsdb-server.service | 2 +- rhel/usr_lib_systemd_system_ovsdb-server.service | 4 ++--
2 files changed, 3 insertions(+), 3 deletions(-) 2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/rhel/usr_lib_systemd_system_ovs-vswitchd.service.in b/rhel/usr_lib_systemd_system_ovs-vswitchd.service.in diff --git a/rhel/usr_lib_systemd_system_ovs-vswitchd.service.in b/rhel/usr_lib_systemd_system_ovs-vswitchd.service.in
index 11b34c6..94c48f8 100644 index 11b34c6..94c48f8 100644
@ -28,18 +28,20 @@ index 11b34c6..94c48f8 100644
ExecStart=/usr/share/openvswitch/scripts/ovs-ctl \ ExecStart=/usr/share/openvswitch/scripts/ovs-ctl \
--no-ovsdb-server --no-monitor --system-id=random \ --no-ovsdb-server --no-monitor --system-id=random \
diff --git a/rhel/usr_lib_systemd_system_ovsdb-server.service b/rhel/usr_lib_systemd_system_ovsdb-server.service diff --git a/rhel/usr_lib_systemd_system_ovsdb-server.service b/rhel/usr_lib_systemd_system_ovsdb-server.service
index 70da1ec..c2c862f 100644 index 70da1ec..694598f 100644
--- a/rhel/usr_lib_systemd_system_ovsdb-server.service --- a/rhel/usr_lib_systemd_system_ovsdb-server.service
+++ b/rhel/usr_lib_systemd_system_ovsdb-server.service +++ b/rhel/usr_lib_systemd_system_ovsdb-server.service
@@ -10,7 +10,7 @@ Type=forking @@ -10,8 +10,8 @@ Type=forking
Restart=on-failure Restart=on-failure
EnvironmentFile=/etc/openvswitch/default.conf EnvironmentFile=/etc/openvswitch/default.conf
EnvironmentFile=-/etc/sysconfig/openvswitch EnvironmentFile=-/etc/sysconfig/openvswitch
-ExecStartPre=/usr/bin/chown ${OVS_USER_ID} /var/run/openvswitch /var/log/openvswitch -ExecStartPre=/usr/bin/chown ${OVS_USER_ID} /var/run/openvswitch /var/log/openvswitch
-ExecStartPre=/bin/sh -c 'rm -f /run/openvswitch/useropts; if [ "$${OVS_USER_ID/:*/}" != "root" ]; then /usr/bin/echo "OVSUSER=--ovs-user=${OVS_USER_ID}" > /run/openvswitch/useropts; fi'
+ExecStartPre=/bin/chown ${OVS_USER_ID} /var/run/openvswitch /var/log/openvswitch +ExecStartPre=/bin/chown ${OVS_USER_ID} /var/run/openvswitch /var/log/openvswitch
ExecStartPre=/bin/sh -c 'rm -f /run/openvswitch/useropts; if [ "$${OVS_USER_ID/:*/}" != "root" ]; then /usr/bin/echo "OVSUSER=--ovs-user=${OVS_USER_ID}" > /run/openvswitch/useropts; fi' +ExecStartPre=/bin/sh -c 'rm -f /run/openvswitch/useropts; if [ "$${OVS_USER_ID/:*/}" != "root" ]; then /bin/echo "OVSUSER=--ovs-user=${OVS_USER_ID}" > /run/openvswitch/useropts; fi'
EnvironmentFile=-/run/openvswitch/useropts EnvironmentFile=-/run/openvswitch/useropts
ExecStart=/usr/share/openvswitch/scripts/ovs-ctl \ ExecStart=/usr/share/openvswitch/scripts/ovs-ctl \
--no-ovs-vswitchd --no-monitor --system-id=random \
-- --
2.7.4 2.7.4

View File

@ -30,6 +30,7 @@ SRC_URI = "file://openvswitch-switch \
file://0002-Define-WAIT_ANY-if-not-provided-by-system.patch \ file://0002-Define-WAIT_ANY-if-not-provided-by-system.patch \
file://python-switch-remaining-scripts-to-use-python3.patch \ file://python-switch-remaining-scripts-to-use-python3.patch \
file://systemd-update-tool-paths.patch \ file://systemd-update-tool-paths.patch \
file://systemd-create-runtime-dirs.patch \
" "
LIC_FILES_CHKSUM = "file://LICENSE;md5=1ce5d23a6429dff345518758f13aaeab" LIC_FILES_CHKSUM = "file://LICENSE;md5=1ce5d23a6429dff345518758f13aaeab"