[ovs-dev] [PATCH v2] rhel, xenserver: Run unit tests while creating rpms.

Gurucharan Shetty shettyg at nicira.com
Tue Jul 1 14:55:44 UTC 2014


On Mon, Jun 30, 2014 at 9:27 PM, Flavio Leitner <fbl at redhat.com> wrote:
> On Mon, Jun 30, 2014 at 05:50:20PM -0700, Gurucharan Shetty wrote:
>> 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
>
> Works on RHEL-7.0, RHEL-6.5, RHEL-5.10, Fedora 20 and Fedora 18.
> I also saw the testsuite failing and the recheck going well, so
> no build breakage.
>
> Acked-by: Flavio Leitner <fbl at redhat.com>
Thank you. I applied the change.
>
>
>
>> 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