Blame beaker.spec

c2ac75a
%if 0%{?rhel} && 0%{?rhel} <= 6
c2ac75a
%{!?__python2: %global __python2 /usr/bin/python2}
c2ac75a
%{!?python2_sitelib: %global python2_sitelib %(%{__python2} -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")}
c2ac75a
%endif
c2ac75a
c2ac75a
# The server, lab controller, and integration test subpackages can be conditionally built.
c2ac75a
# Use rpmbuild --without to override.
c2ac75a
%global _lc_services beaker-proxy beaker-provision beaker-watchdog beaker-transfer
c2ac75a
# systemd?
c2ac75a
%if 0%{?fedora} >= 18 || 0%{?rhel} >= 7
c2ac75a
%global with_systemd 1
c2ac75a
%else
c2ac75a
%global with_systemd 0
c2ac75a
%endif
c2ac75a
33187bc
# This will not necessarily match the RPM Version if the real version number is
33187bc
# not representable in RPM. For example, a release candidate might be 0.15.0rc1
33187bc
# but that is not usable for the RPM Version because it sorts higher than
c2ac75a
# 0.15.0, so the RPM will have Version 0.15.0 and Release 0.rc1 in that case.
c2ac75a
%global upstream_name beaker
c2ac75a
c2ac75a
Name:           %{upstream_name}
4cd5686
Version:        25.4
33187bc
Release:        1%{?dist}
c2ac75a
Summary:        Full-stack software and hardware integration testing system
c2ac75a
Group:          Applications/Internet
c2ac75a
License:        GPLv2+ and BSD
c2ac75a
URL:            https://beaker-project.org/
c2ac75a
8b19aa4
Source0:        https://beaker-project.org/releases/%{upstream_name}-%{version}.tar.xz
c2ac75a
c2ac75a
BuildArch:      noarch
92eecd5
BuildRequires:  python2-setuptools
92eecd5
BuildRequires:  python2-nose >= 0.10
233446d
BuildRequires:  python2-unittest2
233446d
BuildRequires:  python2-mock
c2ac75a
BuildRequires:  python2-devel
92eecd5
BuildRequires:  python2-docutils >= 0.6
c2ac75a
# These are needed just to build the server manpages
c2ac75a
#BuildRequires:  python-sqlalchemy
c2ac75a
#BuildRequires:  TurboGears
c2ac75a
#BuildRequires:  python-flask
c2ac75a
#BuildRequires:  python2-decorator
c2ac75a
#BuildRequires:  python-webassets
c2ac75a
#BuildRequires:  python-netaddr
c2ac75a
#BuildRequires:  python-ldap
c2ac75a
#BuildRequires:  cracklib-python
c2ac75a
#BuildRequires:  python2-passlib
c2ac75a
#BuildRequires:  rpm-python
c2ac75a
%if 0%{?rhel} == 5 || 0%{?rhel} == 6
c2ac75a
BuildRequires:  python-sphinx10
c2ac75a
%else
92eecd5
BuildRequires:  python2-sphinx >= 1.0
c2ac75a
%endif
92eecd5
BuildRequires:  python2-sphinxcontrib-httpdomain
92eecd5
BuildRequires:  python2-prettytable
c2ac75a
# setup.py uses pkg-config to find the right installation paths
c2ac75a
%if 0%{?fedora} || 0%{?rhel} >= 7
c2ac75a
BuildRequires:  pkgconfig(bash-completion)
c2ac75a
%endif
c2ac75a
%if %{with_systemd}
c2ac75a
BuildRequires:  pkgconfig(systemd)
c2ac75a
%endif
c2ac75a
%if 0%{?rhel} >= 6 || 0%{?fedora}
c2ac75a
# some client commands use requests, they are unsupported on RHEL5
92eecd5
BuildRequires:  python2-requests
c2ac75a
%endif
c2ac75a
c2ac75a
# As above, these client dependencies are needed in build because of sphinx
233446d
BuildRequires:  python2-krbv
92eecd5
BuildRequires:  python2-lxml
92eecd5
BuildRequires:  python2-libxslt
c2ac75a
c2ac75a
c2ac75a
%package common
c2ac75a
Summary:        Common components for Beaker packages
c2ac75a
Group:          Applications/Internet
c2ac75a
Provides:       %{upstream_name} = %{version}-%{release}
c2ac75a
c2ac75a
c2ac75a
%package client
c2ac75a
Summary:        Command-line client for interacting with Beaker
c2ac75a
Group:          Applications/Internet
92eecd5
Requires:       python2-setuptools
d76e33e
Requires:       %{upstream_name}-common = %{version}-%{release}
233446d
Requires:       python2-krbv
92eecd5
Requires:       python2-lxml
c2ac75a
%if 0%{?rhel} >= 6 || 0%{?fedora}
c2ac75a
# some client commands use requests, they are unsupported on RHEL5
92eecd5
Requires:       python2-requests
c2ac75a
%endif
233446d
Requires:       python2-libxslt
c2ac75a
%if !(0%{?rhel} >= 6 || 0%{?fedora} >= 14)
c2ac75a
Requires:       python-simplejson
c2ac75a
%endif
c2ac75a
Requires:       libxml2-python
92eecd5
Requires:       python2-prettytable
92eecd5
Requires:       python2-jinja2
c2ac75a
# beaker-wizard was moved from rhts-devel to here in 4.52
c2ac75a
Conflicts:      rhts-devel < 4.52
c2ac75a
c2ac75a
%description
c2ac75a
Beaker is a full stack software and hardware integration testing system, with
c2ac75a
the ability to manage a globally distributed network of test labs.
c2ac75a
c2ac75a
%description common
c2ac75a
Python modules which are used by other Beaker packages.
c2ac75a
c2ac75a
%description client
c2ac75a
The bkr client is a command-line tool for interacting with Beaker servers. You
c2ac75a
can use it to submit Beaker jobs, fetch results, and perform many other tasks.
c2ac75a
c2ac75a
%prep
8b19aa4
%setup -q -n %{upstream_name}-%{version}
c2ac75a
# The server relies on a great many packages which are intended to be bundled
c2ac75a
# source, and its documentation greatly inflates the number of BR packages
c2ac75a
# required. Until those are packaged separately, building those subpackages is
c2ac75a
# unnnecessary
c2ac75a
rm -r Server documentation/server-api
c2ac75a
c2ac75a
%build
c2ac75a
make
c2ac75a
c2ac75a
%install
c2ac75a
DESTDIR=%{buildroot} make install
c2ac75a
c2ac75a
%check
c2ac75a
make check
c2ac75a
c2ac75a
%files common
c2ac75a
%doc README.md
c2ac75a
%license COPYING
c2ac75a
%dir %{python2_sitelib}/bkr/
c2ac75a
%{python2_sitelib}/bkr/__init__.py*
c2ac75a
%{python2_sitelib}/bkr/timeout_xmlrpclib.py*
c2ac75a
%{python2_sitelib}/bkr/common/
c2ac75a
%{python2_sitelib}/bkr/log.py*
c2ac75a
%{python2_sitelib}/%{upstream_name}_common-%{version}-py2.7.egg-info/
c2ac75a
%{_mandir}/man8/%{upstream_name}-import.8.gz
c2ac75a
%exclude %{_mandir}/man8/%{upstream_name}-create-ipxe-image.8.gz
c2ac75a
%exclude %{_mandir}/man8/%{upstream_name}-create-kickstart.8.gz
c2ac75a
%exclude %{_mandir}/man8/%{upstream_name}-init.8.gz
c2ac75a
%exclude %{_mandir}/man8/%{upstream_name}-repo-update.8.gz
c2ac75a
%exclude %{_mandir}/man8/%{upstream_name}-usage-reminder.8.gz
c2ac75a
c2ac75a
%files client
c2ac75a
%dir %{_sysconfdir}/%{upstream_name}
c2ac75a
%doc Client/client.conf.example
c2ac75a
%{python2_sitelib}/bkr/client/
c2ac75a
%{python2_sitelib}/%{upstream_name}_client-%{version}-py2.7-nspkg.pth
c2ac75a
%{python2_sitelib}/%{upstream_name}_client-%{version}-py2.7.egg-info/
c2ac75a
%{_bindir}/%{upstream_name}-wizard
c2ac75a
%{_bindir}/bkr
c2ac75a
%{_mandir}/man1/beaker-wizard.1.gz
c2ac75a
%{_mandir}/man1/bkr.1.gz
c2ac75a
%{_mandir}/man1/bkr-*.1.gz
c2ac75a
%if 0%{?fedora} >= 17 || 0%{?rhel} >= 7
c2ac75a
%{_datadir}/bash-completion
c2ac75a
%else
c2ac75a
%{_sysconfdir}/bash_completion.d
c2ac75a
%endif
c2ac75a
c2ac75a
%changelog
4cd5686
* Fri May 25 2018 Greg Hellings <greg.hellings@gmail.com> - 25.4-1
4cd5686
- Upstream version 25.4
4cd5686
- Fixes BZ 1579575
4cd5686
9ddba5d
* Mon May 14 2018 Greg Hellings <greg.hellings@gmail.com> - 25.2-1
9ddba5d
- Upstream version 25.2
9ddba5d
- Fixes BZ1566043
9ddba5d
33187bc
* Tue Mar 13 2018 Greg Hellings <greg.hellings@gmail.com> - 25.0-1
33187bc
- Upstream version 25.0
33187bc
19ee76c
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 24.5-2
19ee76c
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
19ee76c
51711cf
* Thu Nov 16 2017 Greg Hellings <greg.hellings@gmail.com> - 24.5-1
51711cf
- Upstream release 24.5
51711cf
a953868
* Tue Oct 03 2017 Greg Hellings <greg.hellings@gmail.com> - 24.4-1
a953868
- Upstream release 24.4
a953868
04dd70a
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 24.3-2
04dd70a
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
04dd70a
8b19aa4
* Tue May 30 2017 Greg Hellings <greg.hellings@gmail.com> - 24.3-1
8b19aa4
- Upstream release 24.3
8b19aa4
c26d048
* Thu Apr 06 2017 Greg Hellings <greg.hellings@gmail.com> - 24.2-1
c26d048
- Upstream release 24.2
c26d048
49f033a
* Mon Mar 06 2017 Greg Hellings <greg.hellings@gmail.com> - 24.1-2
49f033a
- Fixed broken dependency
49f033a
c2ac75a
* Mon Mar 06 2017 Greg Hellings <greg.hellings@gmail.com> - 24.1-1
c2ac75a
- New upstream release 24.1
c2ac75a
- Imported to official builds
c2ac75a
c2ac75a
* Wed Mar 01 2017 Greg Hellings <greg.hellings@gmail.com> - 24.0-2
c2ac75a
- Renamed child packages per review
c2ac75a
c2ac75a
* Thu Feb 23 2017 Greg Hellings <greg.hellings@gmail.com> - 24.0-1
c2ac75a
- Upgraded to upstream 24.0
c2ac75a
c2ac75a
* Wed Dec 21 2016 Greg Hellings <greg.hellings@gmail.com> - 23.3-1
c2ac75a
- Initial build