[ovs-dev] [PATCH v2] rhel, xenserver: Run unit tests while creating rpms.
Gurucharan Shetty
shettyg at nicira.com
Tue Jul 1 00:50:20 UTC 2014
For RHEL, Fedora and Xenserver, run unit tests while
building rpms. This may catch some cross-platform bugs.
The commit also allows the users to optionally skip unit tests.
(On debian, the default is to run unit tests. For consistency,
do the same for rpms.)
VMware-BZ: 1267127
CC: Flavio Leitner <fbl at redhat.com>
CC: Ben Pfaff <blp at nicira.com>
Signed-off-by: Gurucharan Shetty <gshetty at nicira.com>
---
v1-v2:
Use "--without check" instead of ' -D "make_check false" ' option
to skip tests.
---
INSTALL.Fedora | 5 +++++
INSTALL.RHEL | 5 +++++
INSTALL.XenServer | 5 +++++
rhel/openvswitch-fedora.spec.in | 16 ++++++++++++++++
rhel/openvswitch.spec.in | 16 ++++++++++++++++
xenserver/openvswitch-xen.spec.in | 16 ++++++++++++++++
6 files changed, 63 insertions(+)
diff --git a/INSTALL.Fedora b/INSTALL.Fedora
index d711e24..0a0515a 100644
--- a/INSTALL.Fedora
+++ b/INSTALL.Fedora
@@ -45,6 +45,11 @@ $HOME/rpmbuild/SOURCES.
This produces one RPM: "openvswitch".
+ The above command automatically runs the Open vSwitch unit tests.
+ To disable the unit tests, run:
+
+ rpmbuild -bb --without check rhel/openvswitch-fedora.spec
+
5. On Fedora 17, to build the Open vSwitch kernel module, run:
rpmbuild -bb rhel/openvswitch-kmod-fedora.spec
diff --git a/INSTALL.RHEL b/INSTALL.RHEL
index de85199..40c5d2f 100644
--- a/INSTALL.RHEL
+++ b/INSTALL.RHEL
@@ -94,6 +94,11 @@ $HOME/rpmbuild/SOURCES.
This produces two RPMs: "openvswitch" and "openvswitch-debuginfo".
+ The above command automatically runs the Open vSwitch unit tests.
+ To disable the unit tests, run:
+
+ rpmbuild -bb --without check rhel/openvswitch.spec
+
If the build fails with "configure: error: source dir
/lib/modules/2.6.32-279.el6.x86_64/build doesn't exist" or similar,
then the kernel-devel package is missing or buggy. Go back to step
diff --git a/INSTALL.XenServer b/INSTALL.XenServer
index ba25e43..1e23634 100644
--- a/INSTALL.XenServer
+++ b/INSTALL.XenServer
@@ -36,6 +36,11 @@ RPMs for Citrix XenServer is the DDK VM available from Citrix.
"openvswitch", "openvswitch-modules-xen", and
"openvswitch-debuginfo".
+ The above command automatically runs the Open vSwitch unit tests.
+ To disable the unit tests, run:
+
+ rpmbuild -bb --without check xenserver/openvswitch-xen.spec
+
Build Parameters
----------------
diff --git a/rhel/openvswitch-fedora.spec.in b/rhel/openvswitch-fedora.spec.in
index 44cd7b9..30fe439 100644
--- a/rhel/openvswitch-fedora.spec.in
+++ b/rhel/openvswitch-fedora.spec.in
@@ -6,6 +6,10 @@
# are permitted in any medium without royalty provided the copyright
# notice and this notice are preserved. This file is offered as-is,
# without warranty of any kind.
+#
+# If tests have to be skipped while building, specify the '--without check'
+# option. For example:
+# rpmbuild -bb --without check rhel/openvswitch-fedora.spec
#%define kernel 2.6.40.4-5.fc15.x86_64
@@ -26,6 +30,8 @@ Requires(post): systemd-units
Requires(preun): systemd-units
Requires(postun): systemd-units
+%bcond_without check
+
%description
Open vSwitch provides standard network bridging functions augmented with
support for the OpenFlow protocol for remote per-flow control of
@@ -74,6 +80,16 @@ install -d -m 755 $RPM_BUILD_ROOT/var/lib/openvswitch
# Get rid of stuff we don't want to make RPM happy.
(cd "$RPM_BUILD_ROOT" && rm -f usr/lib/lib*)
+%check
+%if %{with check}
+ if make check TESTSUITEFLAGS='%{_smp_mflags}' ||
+ make check TESTSUITEFLAGS='--recheck'; then :;
+ else
+ cat tests/testsuite.log
+ exit 1
+ fi
+%endif
+
%clean
rm -rf $RPM_BUILD_ROOT
diff --git a/rhel/openvswitch.spec.in b/rhel/openvswitch.spec.in
index 18bc10c..c817cce 100644
--- a/rhel/openvswitch.spec.in
+++ b/rhel/openvswitch.spec.in
@@ -6,6 +6,10 @@
# are permitted in any medium without royalty provided the copyright
# notice and this notice are preserved. This file is offered as-is,
# without warranty of any kind.
+#
+# If tests have to be skipped while building, specify the '--without check'
+# option. For example:
+# rpmbuild -bb --without check rhel/openvswitch.spec
Name: openvswitch
Summary: Open vSwitch daemon/database/utilities
@@ -21,6 +25,8 @@ Buildroot: /tmp/openvswitch-rpm
Requires: openvswitch-kmod, logrotate, python
BuildRequires: openssl-devel
+%bcond_without check
+
%description
Open vSwitch provides standard network bridging functions and
support for the OpenFlow protocol for remote per-flow control of
@@ -67,6 +73,16 @@ rm \
install -d -m 755 $RPM_BUILD_ROOT/var/lib/openvswitch
+%check
+%if %{with check}
+ if make check TESTSUITEFLAGS='%{_smp_mflags}' ||
+ make check TESTSUITEFLAGS='--recheck'; then :;
+ else
+ cat tests/testsuite.log
+ exit 1
+ fi
+%endif
+
%clean
rm -rf $RPM_BUILD_ROOT
diff --git a/xenserver/openvswitch-xen.spec.in b/xenserver/openvswitch-xen.spec.in
index ae29649..73ac9e3 100644
--- a/xenserver/openvswitch-xen.spec.in
+++ b/xenserver/openvswitch-xen.spec.in
@@ -17,6 +17,10 @@
# -D "kernel_version 2.6.32.12-0.7.1.xs5.6.100.323.170596"
# -D "kernel_flavor xen"
# -bb /usr/src/redhat/SPECS/openvswitch-xen.spec
+#
+# If tests have to be skipped while building, specify the '--without check'
+# option. For example:
+# rpmbuild -bb --without check xenserver/openvswitch-xen.spec
%if %{?openvswitch_version:0}%{!?openvswitch_version:1}
%define openvswitch_version @VERSION@
@@ -37,6 +41,8 @@
# build-supplemental-pack.sh requires this naming for kernel module packages
%define module_package modules-%{kernel_flavor}-%{kernel_version}
+%bcond_without check
+
Name: openvswitch
Summary: Open vSwitch daemon/database/utilities
Group: System Environment/Daemons
@@ -134,6 +140,16 @@ rm \
install -d -m 755 $RPM_BUILD_ROOT/var/lib/openvswitch
+%check
+%if %{with check}
+ if make check TESTSUITEFLAGS='%{_smp_mflags}' ||
+ make check TESTSUITEFLAGS='--recheck'; then :;
+ else
+ cat tests/testsuite.log
+ exit 1
+ fi
+%endif
+
%clean
rm -rf $RPM_BUILD_ROOT
--
1.7.9.5
More information about the dev
mailing list