Name: bodhi Version: 3.5.0 Release: 1%{?dist} BuildArch: noarch License: GPLv2+ Summary: A modular framework that facilitates publishing software updates Group: Applications/Internet URL: https://github.com/fedora-infra/bodhi Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz BuildRequires: %{py2_dist alembic} BuildRequires: %{py2_dist arrow} BuildRequires: %{py2_dist bleach} BuildRequires: %{py2_dist click} BuildRequires: %{py2_dist colander} BuildRequires: %{py2_dist cornice_sphinx} >= 0.3 BuildRequires: %{py2_dist cornice} >= 3.0.0 BuildRequires: %{py2_dist cryptography} BuildRequires: %{py2_dist feedgen} BuildRequires: %{py2_dist flake8} BuildRequires: %{py2_dist iniparse} BuildRequires: %{py2_dist jinja2} BuildRequires: %{py2_dist kitchen} BuildRequires: %{py2_dist markdown} BuildRequires: %{py2_dist mock} BuildRequires: %{py2_dist pylibravatar} BuildRequires: %{py2_dist pyramid-fas-openid} BuildRequires: %{py2_dist pyramid-mako} BuildRequires: %{py2_dist pyramid-tm} BuildRequires: %{py2_dist pyramid} BuildRequires: %{py2_dist pytest-cov} BuildRequires: %{py2_dist pytest} BuildRequires: %{py2_dist python-bugzilla} BuildRequires: %{py2_dist python-fedora} BuildRequires: %{py2_dist python-openid} BuildRequires: %{py2_dist pyyaml} BuildRequires: %{py2_dist simplemediawiki} BuildRequires: %{py2_dist sphinx} BuildRequires: %{py2_dist sqlalchemy_schemadisplay} BuildRequires: %{py2_dist sqlalchemy} BuildRequires: %{py2_dist virtualenv} BuildRequires: %{py2_dist webtest} BuildRequires: createrepo_c BuildRequires: fedmsg BuildRequires: koji BuildRequires: liberation-mono-fonts BuildRequires: packagedb-cli BuildRequires: pungi BuildRequires: python2-createrepo_c BuildRequires: python2-devel BuildRequires: python2-dnf BuildRequires: python2-dogpile-cache BuildRequires: python2-koji BuildRequires: python2-librepo BuildRequires: python2-pillow %description Bodhi is a web application that facilitates the process of publishing updates for a software distribution. A modular piece of the Fedora Infrastructure stack * Utilizes the Koji Buildsystem for tracking RPMs * Creates the update repositories using Mash, which composes a repository based on tagged builds in Koji. %package client Summary: Bodhi Client Group: Applications/Internet Requires: filesystem Requires: koji Requires: %{py2_dist click} Requires: %{py2_dist python-fedora} >= 0.9 Requires: %{py2_dist iniparse} Requires: %{py2_dist kitchen} Requires: %{py2_dist six} Requires: python2-bodhi == %{version}-%{release} Requires: python2-dnf Requires: python2-koji %description client Client tools for interacting with bodhi. %package docs Summary: Bodhi documentation Group: Applications/Internet %description docs Bodhi documentation. %package -n python2-bodhi Summary: Common files shared by bodhi-client and bodhi-server Group: Applications/Internet %{?python_provide:%python_provide python2-bodhi} %description -n python2-bodhi Common files shared by bodhi-client and bodhi-server. %package server Summary: A modular framework that facilitates publishing software updates Group: Applications/Internet Requires: %{py2_dist alembic} Requires: %{py2_dist arrow} Requires: %{py2_dist bleach} Requires: %{py2_dist click} Requires: %{py2_dist colander} Requires: %{py2_dist cornice} >= 3.0.0 Requires: %{py2_dist cryptography} Requires: %{py2_dist feedgen} Requires: %{py2_dist jinja2} Requires: %{py2_dist kitchen} Requires: %{py2_dist markdown} Requires: %{py2_dist psycopg2} Requires: %{py2_dist pylibravatar} Requires: %{py2_dist pyramid-fas-openid} Requires: %{py2_dist pyramid-mako} Requires: %{py2_dist pyramid-tm} Requires: %{py2_dist pyramid} Requires: %{py2_dist python-bugzilla} Requires: %{py2_dist python-fedora} Requires: %{py2_dist python-openid} Requires: %{py2_dist simplemediawiki} Requires: %{py2_dist sqlalchemy} Requires: %{py2_dist waitress} Requires: bodhi-client == %{version}-%{release} Requires: createrepo_c Requires: fedmsg Requires: fedmsg-base Requires: git Requires: httpd Requires: intltool Requires: liberation-mono-fonts Requires: mod_wsgi Requires: packagedb-cli Requires: pungi Requires: python2-bodhi == %{version}-%{release} Requires: python2-createrepo_c Requires: python2-dogpile-cache Requires: python2-koji Requires: python2-librepo Requires: python2-pillow Provides: bundled(aajohan-comfortaa-fonts) Provides: bundled(abattis-cantarell-fonts) Provides: bundled(bootstrap) = 3.0.1 Provides: bundled(bootstrap) = 3.0.2 Provides: bundled(bootstrap) = 3.1.1 Provides: bundled(chrissimpkins-hack-fonts) Provides: bundled(fedora-bootstrap) = 1.0.1 Provides: bundled(fontawesome-fonts-web) = 4.4.0 Provides: bundled(js-chart) Provides: bundled(js-excanvas) Provides: bundled(js-jquery) = 1.10.2 Provides: bundled(js-jquery) = 2.0.3 Provides: bundled(js-messenger) Provides: bundled(js-moment) Provides: bundled(js-typeahead.js) = 1.1.1 Provides: bundled(nodejs-flot) Provides: bundled(open-sans-fonts) Provides: bundled(xstatic-bootstrap-datepicker-common) %description server Bodhi is a modular framework that facilitates the process of publishing updates for a software distribution. %prep %autosetup -p1 -n bodhi-%{version} # Kill some dev deps sed -i '/pyramid_debugtoolbar/d' setup.py sed -i '/pyramid_debugtoolbar/d' devel/development.ini.example # Kill this from the egg-info deps so that bodhi-server doesn't demand it. sed -i '/click/d' setup.py # The unit tests needs a development.ini mv devel/development.ini.example development.ini %build %py2_build make %{?_smp_mflags} -C docs html make %{?_smp_mflags} -C docs man %install %py2_install %{__mkdir_p} %{buildroot}/var/lib/bodhi %{__mkdir_p} %{buildroot}/var/cache/bodhi %{__mkdir_p} %{buildroot}%{_sysconfdir}/bash_completion.d %{__mkdir_p} %{buildroot}%{_sysconfdir}/httpd/conf.d %{__mkdir_p} %{buildroot}%{_sysconfdir}/fedmsg.d %{__mkdir_p} %{buildroot}%{_sysconfdir}/bodhi %{__mkdir_p} %{buildroot}%{_datadir}/%{name} %{__mkdir_p} -m 0755 %{buildroot}/%{_localstatedir}/log/bodhi %{__install} -m 0755 bodhi-complete.sh %{buildroot}%{_sysconfdir}/bash_completion.d %{__install} -m 644 apache/%{name}.conf %{buildroot}%{_sysconfdir}/httpd/conf.d/%{name}.conf %{__install} -m 640 production.ini %{buildroot}%{_sysconfdir}/%{name}/production.ini %{__install} -m 640 alembic.ini %{buildroot}%{_sysconfdir}/%{name}/alembic.ini %{__install} apache/%{name}.wsgi %{buildroot}%{_datadir}/%{name}/%{name}.wsgi %{__install} -m 644 fedmsg.d/masher.py %{buildroot}%{_sysconfdir}/fedmsg.d/masher.py %{__install} -m 644 fedmsg.d/bodhi.py %{buildroot}%{_sysconfdir}/fedmsg.d/bodhi.py install -d %{buildroot}%{_mandir}/man1 install -pm0644 docs/_build/man/*.1 %{buildroot}%{_mandir}/man1/ if [ ! -e %{buildroot}%{python2_sitelib}/%{name}/server/static/bootstrap ]; then # setuptools on EL 7 does not install bootstrap, so we need to symlink it ln -s ./bootstrap-3.1.1-fedora \ %{buildroot}%{python2_sitelib}/%{name}/server/static/bootstrap fi; %check # setuptools on EL 7 doesn't install bootstrap. This test ensures that bootstrap is present. if [ ! -e %{buildroot}%{python2_sitelib}/%{name}/server/static/bootstrap ]; then echo "%{buildroot}%{python2_sitelib}/%{name}/server/static/bootstrap is missing, failing!" /usr/bin/false fi; # The tests need bodhi to be installed to pass. Let's build a virtualenv so we can install bodhi # there. virtualenv --system-site-packages --no-pip --never-download .test-virtualenv .test-virtualenv/bin/python2 setup.py develop .test-virtualenv/bin/python2 /usr/bin/py.test %pre server %{_sbindir}/groupadd -r %{name} &>/dev/null || : %{_sbindir}/useradd -r -s /sbin/nologin -d %{_datadir}/%{name} -M \ -c 'Bodhi Server' -g %{name} %{name} &>/dev/null || : %files client %license COPYING %doc README.rst %{_sysconfdir}/bash_completion.d/bodhi-complete.sh %{_bindir}/bodhi %{python2_sitelib}/%{name}/client %{python2_sitelib}/%{name}_client-%{version}-py%{python2_version}.egg-info %{_mandir}/man1/bodhi.1* %files docs %license COPYING %doc docs/_build/html/ README.rst %files -n python2-bodhi %license COPYING %doc README.rst %dir %{python2_sitelib}/%{name}/ %{python2_sitelib}/%{name}/__init__.py* %{python2_sitelib}/%{name}-%{version}-py%{python2_version}.egg-info %files server %license COPYING %doc README.rst %{_bindir}/bodhi-approve-testing %{_bindir}/bodhi-check-policies %{_bindir}/bodhi-clean-old-mashes %{_bindir}/bodhi-dequeue-stable %{_bindir}/bodhi-expire-overrides %{_bindir}/bodhi-manage-releases %{_bindir}/bodhi-monitor-composes %{_bindir}/bodhi-push %{_bindir}/bodhi-untag-branched %{_bindir}/initialize_bodhi_db %config(noreplace) %{_sysconfdir}/bodhi/alembic.ini %config(noreplace) %{_sysconfdir}/httpd/conf.d/bodhi.conf %config(noreplace) %{_sysconfdir}/fedmsg.d/* %dir %{_sysconfdir}/bodhi/ %{python2_sitelib}/%{name}/server %{python2_sitelib}/%{name}_server-%{version}-py%{python2_version}.egg-info %{_mandir}/man1/bodhi-*.1* %{_mandir}/man1/initialize_bodhi_db.1* %attr(-,bodhi,root) %{_datadir}/%{name} %attr(-,bodhi,bodhi) %config(noreplace) %{_sysconfdir}/bodhi/* %attr(0775,bodhi,bodhi) %{_localstatedir}/cache/bodhi %changelog * Tue Feb 27 2018 Randy Barlow - 3.5.0-1 - Update to 3.5.0. - https://bodhi.fedoraproject.org/docs/release_notes.html#v3-5-0 * Mon Feb 26 2018 Randy Barlow - 3.4.0-1 - Update to 3.4.0. - https://bodhi.fedoraproject.org/docs/release_notes.html#v3-4-0 * Fri Feb 16 2018 Randy Barlow - 3.3.0-1 - Update to 3.3.0. - https://bodhi.fedoraproject.org/docs/release_notes.html#v3-3-0 * Wed Feb 07 2018 Fedora Release Engineering - 3.2.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild * Wed Jan 17 2018 Randy Barlow - 3.2.0-1 - Update to 3.2.0. - Use the fancy new py2_dist macro for dependencies. - Fix a FTBFS (#1530245). - Drop the moveshelf patch because it causes tests to fail. * Fri Jan 05 2018 Patrick Uiterwijk - 3.1.0-3 - Apply patch to move the shelves * Tue Dec 12 2017 Randy Barlow - 3.1.0-2 - Correct bodhi-client's help text to show the correct syntax for multi-build updates (#1515766). * Tue Oct 31 2017 Randy Barlow - 3.1.0-1 - Update to 3.1.0. - https://github.com/fedora-infra/bodhi/releases/tag/3.1.0 - Require alembic in the server package (#1493678). * Tue Oct 24 2017 Randy Barlow - 3.0.0-1 - Update to 3.0.0 (#1506021). - https://github.com/fedora-infra/bodhi/releases/tag/3.0.0 - Supports non-RPM artifacts (#1352587). * Wed Oct 11 2017 Randy Barlow - 2.12.2-1 - Update to 2.12.2. - https://github.com/fedora-infra/bodhi/releases/tag/2.12.2 * Wed Oct 11 2017 Randy Barlow - 2.12.1-1 - Update to 2.12.1. - https://github.com/fedora-infra/bodhi/releases/tag/2.12.1 * Tue Oct 10 2017 Randy Barlow - 2.12.0-1 - Update to 2.12.0 (#1500515). - https://github.com/fedora-infra/bodhi/releases/tag/2.12.0 * Fri Sep 22 2017 Randy Barlow - 2.11.0-3 - Retry auth upon captcha failures (#1494644). * Wed Sep 20 2017 Randy Barlow - 2.11.0-2 - Use python2- versions on several dependencies. * Tue Sep 19 2017 Randy Barlow - 2.11.0-1 - Update to 2.11.0 (#1493587). - https://github.com/fedora-infra/bodhi/releases/tag/2.11.0 * Fri Sep 15 2017 Randy Barlow - 2.10.1-4 - The client should Require koji and python2-koji (#1488223). - Fix Fedora < 27 to require python-progressbar. * Tue Sep 05 2017 Randy Barlow - 2.10.1-3 - Use python2- prefixes for progressbar and pytest-cov dependencies. * Tue Sep 05 2017 Randy Barlow - 2.10.1-2 - Bump the release to fix the upgrade path from F26. * Tue Aug 22 2017 Jeremy Cline - 2.10.1-1 - Update to 2.10.1 - https://github.com/fedora-infra/bodhi/releases/tag/2.10.1 * Fri Aug 18 2017 Jeremy Cline - 2.10.0-1 - Update to 2.10.0 - https://github.com/fedora-infra/bodhi/releases/tag/2.10.0 * Tue Aug 15 2017 Randy Barlow - 2.9.1-1 - Update to 2.9.1, which fixes CVE-2017-1002152 (#1478587). - https://github.com/fedora-infra/bodhi/releases/tag/2.9.1 * Tue Aug 08 2017 Randy Barlow - 2.9.0-4 - bodhi-server now depends on bodhi-client for some of its CLI tools (#1479456). * Tue Aug 08 2017 Randy Barlow - 2.9.0-3 - Depend on filesystem instead of bash-completion (#1479341). * Thu Aug 03 2017 Randy Barlow - 2.9.0-2 - Use python2- dependencies where appropriate. * Wed Aug 02 2017 Randy Barlow - 2.9.0-1 - Update to 2.9.0 (#1477579). - https://github.com/fedora-infra/bodhi/releases/tag/2.9.0 - Lexigraphically sort dependencies. * Wed Jul 26 2017 Fedora Release Engineering - 2.8.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild * Wed Jun 21 2017 Randy Barlow - 2.8.1-1 - Update to 2.8.1. - https://github.com/fedora-infra/bodhi/releases/tag/2.8.1 - Make a few of the python2- dependencies be python- again for F24-25. * Tue Jun 20 2017 Randy Barlow - 2.8.0-2 - Use python2- versions of dependencies where available. - Rearrange dependencies alphabetically. - Drop client requirement on kitchen, since it doesn't use it. - Drop server requirement on sphinx, since it doesn't use it. * Tue Jun 20 2017 Randy Barlow - 2.8.0-1 - Update to 2.8.0. - https://github.com/fedora-infra/bodhi/releases/tag/2.8.0 * Wed Jun 07 2017 Randy Barlow - 2.7.0-2 - Drop the alembic.ini symlink in /usr/share since it is not needed. * Mon May 15 2017 Randy Barlow - 2.7.0-1 - Update to 2.7.0 (#1458342). - https://github.com/fedora-infra/bodhi/releases/tag/2.7.0 - Install alembic.ini as a config file (#1451091). * Fri May 05 2017 Randy Barlow - 2.6.2-1 - Update to 2.6.2 (#1445294). - https://github.com/fedora-infra/bodhi/releases/tag/2.6.2 * Mon May 01 2017 Randy Barlow - 2.6.1-1 - Update to 2.6.1 (#1447149). - https://github.com/fedora-infra/bodhi/releases/tag/2.6.1 * Mon Apr 17 2017 Randy Barlow - 2.6.0-1 - Update to 2.6.0. - https://github.com/fedora-infra/bodhi/releases/tag/2.6.0 * Mon Apr 10 2017 Randy Barlow - 2.5.0-2 - Apply a patch to fix https://github.com/fedora-infra/bodhi/issues/1423 - Temporarily disable the tests since the patch causes two of them to fail, expectedly. * Tue Mar 28 2017 Randy Barlow - 2.5.0-1 - Update to 2.5.0. - https://github.com/fedora-infra/bodhi/releases/tag/2.5.0 - Declare all the bundled packages found in bodhi-server's static/ folder. - Remove commented Requires and BuildRequires. * Wed Mar 22 2017 Randy Barlow - 2.4.0-3 - Drop depenency on yum from the client (#1135681). * Fri Mar 10 2017 Randy Barlow - 2.4.0-2 - Apply a patch to workaround https://github.com/fedora-infra/bodhi/issues/1343 until a true fix is available.