forked from openvswitch/ovs
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
fedora.spec: Create openvswitch-ovn package.
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 ovn-controller If you want to run ovn-northd: # systemctl start ovn-northd Both systemd units are currently set to depend on openvswitch. If further ovsdb initialization is required for the OVN databases before ovn-northd can start, that will be handled automatically by ovn-ctl when you start the ovn-northd service. This currently assumes that ovn-northd runs on the same host as ovsdb-server that is hosting the OVN databases. That seems like a reasonable assumption in the current architecture and can be evolved later when needed. Signed-off-by: Russell Bryant <[email protected]> CC: Flavio Leitner <[email protected]> CC: Ben Pfaff <[email protected]> Signed-off-by: Ben Pfaff <[email protected]>
- Loading branch information
Showing
4 changed files
with
104 additions
and
8 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -83,6 +83,17 @@ 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. | ||
|
||
|
||
%prep | ||
%setup -q | ||
|
@@ -100,13 +111,11 @@ 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 | ||
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 | ||
|
||
for service in openvswitch openvswitch-nonetwork ovn-controller ovn-northd; do | ||
install -p -D -m 0644 \ | ||
rhel/usr_lib_systemd_system_${service}.service \ | ||
$RPM_BUILD_ROOT%{_unitdir}/${service}.service | ||
done | ||
install -m 0755 rhel/etc_init.d_openvswitch \ | ||
$RPM_BUILD_ROOT%{_datadir}/openvswitch/scripts/openvswitch.init | ||
|
||
|
@@ -156,6 +165,19 @@ rm -rf $RPM_BUILD_ROOT | |
fi | ||
%endif | ||
|
||
%preun ovn | ||
%if 0%{?systemd_preun:1} | ||
%systemd_preun ovn-controller.service | ||
%systemd_preun ovn-northd.service | ||
%else | ||
if [ $1 -eq 0 ] ; then | ||
# Package removal, not upgrade | ||
/bin/systemctl --no-reload disable ovn-controller.service >/dev/null 2>&1 || : | ||
/bin/systemctl stop ovn-controller.service >/dev/null 2>&1 || : | ||
/bin/systemctl --no-reload disable ovn-northd.service >/dev/null 2>&1 || : | ||
/bin/systemctl stop ovn-northd.service >/dev/null 2>&1 || : | ||
fi | ||
%endif | ||
|
||
%post | ||
%if 0%{?systemd_post:1} | ||
|
@@ -167,6 +189,16 @@ rm -rf $RPM_BUILD_ROOT | |
fi | ||
%endif | ||
|
||
%post ovn | ||
%if 0%{?systemd_post:1} | ||
%systemd_post ovn-controller.service | ||
%systemd_post ovn-northd.service | ||
%else | ||
# Package install, not upgrade | ||
if [ $1 -eq 1 ]; then | ||
/bin/systemctl daemon-reload >dev/null || : | ||
fi | ||
%endif | ||
|
||
%postun | ||
%if 0%{?systemd_postun_with_restart:1} | ||
|
@@ -179,6 +211,18 @@ rm -rf $RPM_BUILD_ROOT | |
fi | ||
%endif | ||
|
||
%postun ovn | ||
%if 0%{?systemd_postun_with_restart:1} | ||
%systemd_postun_with_restart ovn-controller.service | ||
%systemd_postun_with_restart ovn-northd.service | ||
%else | ||
/bin/systemctl daemon-reload >/dev/null 2>&1 || : | ||
if [ "$1" -ge "1" ] ; then | ||
# Package upgrade, not uninstall | ||
/bin/systemctl try-restart ovn-controller.service >/dev/null 2>&1 || : | ||
/bin/systemctl try-restart ovn-northd.service >/dev/null 2>&1 || : | ||
fi | ||
%endif | ||
|
||
%files -n python-openvswitch | ||
%{python_sitelib}/ovs | ||
|
@@ -272,6 +316,25 @@ 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}/ovn-controller.service | ||
%{_unitdir}/ovn-northd.service | ||
%ghost %attr(755,root,root) %{_rundir}/ovn-controller | ||
%ghost %attr(755,root,root) %{_rundir}/ovn-northd | ||
|
||
%changelog | ||
* Wed Jan 12 2011 Ralf Spenneberg <[email protected]> | ||
- First build on F14 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
[Unit] | ||
Description=OVN controller daemon | ||
After=syslog.target | ||
Requires=openvswitch.service | ||
After=openvswitch.service | ||
|
||
[Service] | ||
Type=simple | ||
RuntimeDirectory=ovn-controller | ||
RuntimeDirectoryMode=0755 | ||
PIDFile=%t/ovn-controller/ovn-controller.pid | ||
Environment=OVS_RUNDIR=%t/ovn-controller | ||
ExecStart=/usr/bin/ovn-controller -vconsole:emer -vsyslog:err -vfile:info \ | ||
--log-file=/var/log/openvswitch/ovn-controller.log \ | ||
--no-chdir --pidfile=%t/ovn-controller/ovn-controller.pid \ | ||
unix:/var/run/openvswitch/db.sock |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
[Unit] | ||
Description=OVN northd management daemon | ||
After=syslog.target | ||
Requires=openvswitch.service | ||
After=openvswitch.service | ||
|
||
[Service] | ||
Type=oneshot | ||
RemainAfterExit=yes | ||
RuntimeDirectory=ovn-northd | ||
RuntimeDirectoryMode=0755 | ||
PIDFile=%t/ovn-northd/ovn-northd.pid | ||
Environment=OVN_RUNDIR=%t/ovn-northd OVS_RUNDIR=%t/openvswitch OVS_DBDIR=/var/lib/openvswitch | ||
ExecStart=/usr/share/openvswitch/scripts/ovn-ctl start_northd | ||
ExecStop=/usr/share/openvswitch/scripts/ovn-ctl stop_northd |