[ovs-dev] [PATCH ovn 2/2 v2] fedora.spec: Create openvswitch-ovn package.
Russell Bryant
rbryant at redhat.com
Mon May 4 21:40:46 UTC 2015
This patch creates a new subpackage for OVN, openvswitch-ovn. It also
installs systemd unit files for ovn-controller and ovn-northd.
If you want to run ovn-controller:
# systemctl start ovncontroller
If you want to run ovn-northd:
# systemctl start ovnnorthd
Both systemd units are currently set to depend on openvswitch.
Technically you could ovn-northd and ovsdb-server without ovs running
locally as well, but that will require some additional work.
This also means that you need to configure the openvswitch service to
serve the two OVN databases, as well: That is done by running the
following commands before starting or restarting openvswitch:
# ovn-ctl create_ovn_dbs
# cat << EOF > /etc/sysconfig/openvswitch
OPTIONS="'--extra-dbs=ovnnb.db ovnsb.db'"
EOF
Signed-off-by: Russell Bryant <rbryant at redhat.com>
---
rhel/automake.mk | 4 ++-
rhel/openvswitch-fedora.spec.in | 43 +++++++++++++++++++----
rhel/usr_lib_systemd_system_ovncontroller.service | 14 ++++++++
rhel/usr_lib_systemd_system_ovnnorthd.service | 13 +++++++
4 files changed, 67 insertions(+), 7 deletions(-)
create mode 100644 rhel/usr_lib_systemd_system_ovncontroller.service
create mode 100644 rhel/usr_lib_systemd_system_ovnnorthd.service
diff --git a/rhel/automake.mk b/rhel/automake.mk
index 9c3433b..fab3634 100644
--- a/rhel/automake.mk
+++ b/rhel/automake.mk
@@ -24,7 +24,9 @@ EXTRA_DIST += \
rhel/usr_share_openvswitch_scripts_sysconfig.template \
rhel/usr_share_openvswitch_scripts_systemd_sysconfig.template \
rhel/usr_lib_systemd_system_openvswitch.service \
- rhel/usr_lib_systemd_system_openvswitch-nonetwork.service
+ rhel/usr_lib_systemd_system_openvswitch-nonetwork.service \
+ rhel/usr_lib_systemd_system_ovncontroller.service \
+ rhel/usr_lib_systemd_system_ovnnorthd.service
update_rhel_spec = \
$(AM_V_GEN)($(ro_shell) && sed -e 's,[@]VERSION[@],$(VERSION),g') \
diff --git a/rhel/openvswitch-fedora.spec.in b/rhel/openvswitch-fedora.spec.in
index f3dbebf..5b4e9ef 100644
--- a/rhel/openvswitch-fedora.spec.in
+++ b/rhel/openvswitch-fedora.spec.in
@@ -81,6 +81,19 @@ Provides: openvswitch-static = %{version}-%{release}
This provides static library, libopenswitch.a and the openvswitch header
files needed to build an external application.
+%package ovn
+Summary: Open vSwitch - Open Virtual Network support
+License: ASL 2.0
+Requires: openvswitch
+
+%description ovn
+OVN, the Open Virtual Network, is a system to support virtual network
+abstraction. OVN complements the existing capabilities of OVS to add
+native support for virtual network abstractions, such as virtual L2 and L3
+overlays and security groups. Services such as DHCP are also desirable
+features. Just like OVS, OVN's design goal is to have a production-quality
+implementation that can operate at significant scale.
+
%prep
%setup -q
@@ -98,13 +111,14 @@ install -d -m 0755 $RPM_BUILD_ROOT%{_sysconfdir}/openvswitch
install -p -D -m 0644 \
rhel/usr_share_openvswitch_scripts_systemd_sysconfig.template \
$RPM_BUILD_ROOT/%{_sysconfdir}/sysconfig/openvswitch
+for service in openvswitch ovncontroller ovnnorthd; do
+ install -p -D -m 0644 \
+ rhel/usr_lib_systemd_system_${service}.service \
+ $RPM_BUILD_ROOT%{_unitdir}/${service}.service
+done
install -p -D -m 0644 \
- rhel/usr_lib_systemd_system_openvswitch.service \
- $RPM_BUILD_ROOT%{_unitdir}/openvswitch.service
-install -p -D -m 0644 \
- rhel/usr_lib_systemd_system_openvswitch-nonetwork.service \
- $RPM_BUILD_ROOT%{_unitdir}/openvswitch-nonetwork.service
-
+ rhel/usr_lib_systemd_system_openvswitch-nonetwork.service \
+ $RPM_BUILD_ROOT%{_unitdir}/openvswitch-nonetwork.service
install -m 0755 rhel/etc_init.d_openvswitch \
$RPM_BUILD_ROOT%{_datadir}/openvswitch/scripts/openvswitch.init
@@ -269,6 +283,23 @@ rm -rf $RPM_BUILD_ROOT
%exclude %{_mandir}/man8/ovs-vlan-bug-workaround.8.gz
%exclude %{_datadir}/openvswitch/scripts/ovs-save
+%files ovn
+%{_bindir}/ovn-controller
+%{_bindir}/ovn-nbctl
+%{_bindir}/ovn-northd
+%{_datadir}/openvswitch/scripts/ovn-ctl
+%{_mandir}/man8/ovs-testcontroller.8*
+%{_mandir}/man5/ovn-nb.5*
+%{_mandir}/man5/ovn-sb.5*
+%{_mandir}/man7/ovn-architecture.7*
+%{_mandir}/man8/ovn-controller.8*
+%{_mandir}/man8/ovn-ctl.8*
+%{_mandir}/man8/ovn-nbctl.8*
+%config %{_datadir}/openvswitch/ovn-nb.ovsschema
+%config %{_datadir}/openvswitch/ovn-sb.ovsschema
+%{_unitdir}/ovncontroller.service
+%{_unitdir}/ovnnorthd.service
+
%changelog
* Wed Jan 12 2011 Ralf Spenneberg <ralf at os-s.net>
- First build on F14
diff --git a/rhel/usr_lib_systemd_system_ovncontroller.service b/rhel/usr_lib_systemd_system_ovncontroller.service
new file mode 100644
index 0000000..b30bb9a
--- /dev/null
+++ b/rhel/usr_lib_systemd_system_ovncontroller.service
@@ -0,0 +1,14 @@
+[Unit]
+Description=OVN controller daemon
+After=syslog.target
+Requires=openvswitch.service
+After=openvswitch.service
+
+[Service]
+Type=forking
+PIDFile=/var/run/openvswitch/ovn-controller.pid
+ExecStart=/usr/bin/ovn-controller -vconsole:emer -vsyslog:err -vfile:info \
+ --log-file=/var/log/openvswitch/ovn-controller.log \
+ --detach --no-chdir \
+ --pidfile=/var/run/openvswitch/ovn-controller.pid \
+ unix:/var/run/openvswitch/db.sock
diff --git a/rhel/usr_lib_systemd_system_ovnnorthd.service b/rhel/usr_lib_systemd_system_ovnnorthd.service
new file mode 100644
index 0000000..7a20d59
--- /dev/null
+++ b/rhel/usr_lib_systemd_system_ovnnorthd.service
@@ -0,0 +1,13 @@
+[Unit]
+Description=OVN northd management daemon
+After=syslog.target
+Requires=openvswitch.service
+After=openvswitch.service
+
+[Service]
+Type=forking
+PIDFile=/var/run/openvswitch/ovn-northd.pid
+ExecStart=/usr/bin/ovn-northd -vconsole:emer -vsyslog:err -vfile:info \
+ --log-file=/var/log/openvswitch/ovn-northd.log \
+ --detach --no-chdir \
+ --pidfile=/var/run/openvswitch/ovn-northd.pid
--
2.1.0
More information about the dev
mailing list