Name: odcs Version: 0.5.0 Release: 2%{?dist} Summary: The On Demand Compose Service Group: Development/Tools License: MIT URL: https://pagure.io/odcs Source0: https://files.pythonhosted.org/packages/source/o/%{name}/%{name}-%{version}.tar.gz Source1: odcs-backend.service Patch1: https://pagure.io/odcs/pull-request/614.patch BuildArch: noarch BuildRequires: createrepo_c BuildRequires: gobject-introspection BuildRequires: koji BuildRequires: python3-alembic BuildRequires: python3-defusedxml BuildRequires: python3-devel BuildRequires: python3-flufl-lock BuildRequires: python3-gobject-base BuildRequires: python3-kobo BuildRequires: python3-koji BuildRequires: python3-ldap BuildRequires: python3-libmodulemd BuildRequires: python3-openidc-client BuildRequires: python3-productmd BuildRequires: python3-prometheus_client BuildRequires: python3-psutil BuildRequires: python3-pyOpenSSL BuildRequires: python3-requests-gssapi BuildRequires: python3-setuptools BuildRequires: python3-sqlalchemy BuildRequires: python3-systemd BuildRequires: python3-tabulate BuildRequires: python3-zipp BuildRequires: systemd # test requirements BuildRequires: python3-freezegun BuildRequires: python3-pytest # following test requirements are missing # BuildRequires: python3-pytest-cov BuildRequires: python3-responses %{?systemd_requires} Requires(pre): shadow-utils Requires: gobject-introspection Requires: hardlink Requires: pungi Requires: pungi-modular-support Requires: python3-alembic Requires: python3-celery Requires: python3-defusedxml Requires: python3-flask Requires: python3-flask-login Requires: python3-flask-migrate Requires: python3-flask-sqlalchemy Requires: python3-flufl-lock Requires: python3-kobo Requires: python3-ldap Requires: python3-libmodulemd Requires: python3-openidc-client Requires: python3-productmd Requires: python3-prometheus_client Requires: python3-psutil Requires: python3-psycopg2 Requires: python3-pyOpenSSL Requires: python3-requests-gssapi Requires: python3-rhmsg Requires: python3-systemd Requires: systemd Requires: python3-odcs-common = %{version}-%{release} %description The On Demand Compose Service (ODCS) creates temporary composes using Pungi tool and manages their lifetime. The composes can be requested by external services or users using the REST API provided by Flask frontend. %package -n python3-odcs-common Summary: ODCS subpackage providing code shared between server and client. %{?python_provide:%python_provide python3-odcs-client} %description -n python3-odcs-common ODCS subpackage providing code shared between server and client. %package -n python3-odcs-client Summary: ODCS client module %{?python_provide:%python_provide python3-odcs-client} Requires: python3-requests Requires: python3-requests-gssapi Requires: python3-odcs-common = %{version}-%{release} %description -n python3-odcs-client Client library for sending requests to On Demand Compose Service (ODCS). %package -n odcs-client Summary: ODCS command line client Requires: python3-openidc-client Requires: python3-odcs-client = %{version}-%{release} %description -n odcs-client Command line client for sending requests to ODCS. %prep %autosetup -p1 # These packages are not avaiable on el8 and only needed by frontend sed -i '/apispec-webframeworks/d' server/requirements.txt sed -i '/apispec/d' server/requirements.txt sed -i '/marshmallow/d' server/requirements.txt %build %py3_build %install %py3_install export PYTHONPATH=%{buildroot}%{python3_sitelib} mkdir -p %{buildroot}%{_mandir}/man1 for command in odcs-manager odcs-frontend odcs-gencert ; do export ODCS_CONFIG_DIR=server/conf/ export ODCS_DEVELOPER_ENV=1 done install -d -m 0755 %{buildroot}%{_unitdir} install -p -m 0644 %{SOURCE1} %{buildroot}%{_unitdir}/ install -d -m 0755 %{buildroot}%{_datadir}/odcs install -p -m 0644 server/contrib/odcs.wsgi %{buildroot}%{_datadir}/odcs %pre getent group odcs >/dev/null || groupadd -r odcs getent passwd odcs >/dev/null || \ useradd -r -g odcs -s /sbin/nologin \ -c "On Demand Compose Service user" odcs exit 0 %post %systemd_post odcs-backend.service %preun %systemd_preun odcs-backend.service %postun %systemd_postun_with_restart odcs-backend.service %check # Skip tests due to permission issue or old version of mock # PYTHONPATH=`pwd`/common:`pwd`/server:`pwd`/client ODCS_CONFIG_DIR=`pwd`/server/conf ODCS_DEVELOPER_ENV=1 pytest-%{python3_version} -v -k 'not test_mock_runroot_run and not test_error_string' %files -n odcs-client %doc README.md %{_bindir}/odcs %files -n python3-odcs-common %doc README.md %dir %{python3_sitelib}/odcs/ %{python3_sitelib}/odcs/__init__.py* %{python3_sitelib}/odcs/common/ %{python3_sitelib}/odcs-%{version}-py%{python3_version}.egg-info/ %exclude %{python3_sitelib}/odcs/__pycache__ %files -n python3-odcs-client %doc README.md %dir %{python3_sitelib}/odcs/ %{python3_sitelib}/odcs/client/ %exclude %{python3_sitelib}/odcs/__pycache__ %files %doc README.md %{_unitdir}/odcs-backend.service %{python3_sitelib}/odcs/server %{_bindir}/odcs-* %{_datadir}/odcs %dir %{_sysconfdir}/odcs %config(noreplace) %{_sysconfdir}/odcs/config.py %config(noreplace) %{_sysconfdir}/odcs/pungi.conf %config(noreplace) %{_sysconfdir}/odcs/raw_config_urls.conf %config(noreplace) %{_sysconfdir}/odcs/raw_config_wrapper.conf %exclude %{_sysconfdir}/odcs/*.py[co] %exclude %{_sysconfdir}/odcs/__pycache__ %exclude %{python3_sitelib}/odcs/__pycache__ %changelog * Thu Mar 23 2023 Lubomír Sedlář - 0.5.0-2 - Backport patch for merged pulp repos (RHELCMP-11462) - Switch to %%autosetup * Wed Mar 01 2023 Haibo Lin - 0.5.0-1 - backend: Handle raw config file in subdirectory implicitly - backend: pulp: Always include explicitly mentioned repos - client: switch to HTTPSPNEGOAuth and drop mutual_authentication - docs: Improve documentation for pulp composes - server: Load raw_config_urls config without reboot - server: Refine server config initializing - Add missing comma in setup.py - Update formatting to satisfy latest black - Update license info * Wed Dec 07 2022 Haibo Lin - 0.4.0-1 - backend: Drop python 2 support - backend: Remove non-latest symlink before creating - cleanup: Delete unneeded requirement - client: Add missing requirement openidc-client - client: Customize user-agent of odcs-client - client: Drop python 2 support - client: improve create-tag --help description - frontend: Allow `^` character in ODCS input. - frontend: Allow querying rover groups - frontend: Brand new API doc available at /api/1/ - frontend: Drop python 2 support - frontend: Optimized metrics raw_config_types - promote: Stop checking symlinks before promoting * Thu Sep 29 2022 Haibo Lin - 0.3.8-2 - Use python3-requests-gssapi * Thu Sep 29 2022 Haibo Lin - 0.3.8-1 - new version * Wed May 25 2022 Haibo Lin - 0.3.7-2 - Build package for server side * Fri Apr 22 2022 Haibo Lin - 0.3.7-1 - client: Replace http request with https in order prevent false redirection * Wed Dec 08 2021 Haibo Lin - 0.3.6-1 - client: Suggest KRB5_TRACE env variable option on auth failure - client: Improve odcs create-module user experience - client: improve renew --help description * Wed Aug 18 2021 Lubomír Sedlář - 0.3.4-1 - New upstream release - Backport patch to work with both authenticated and unauthenticated server * Wed Jan 06 2021 Lubomír Sedlář - 0.2.52-3 - Bump release to allow rebuild * Fri Dec 11 2020 Haibo Lin - 0.2.52-2 - Install /usr/bin/odcs * Fri Dec 11 2020 Haibo Lin - 0.2.52-1 - new version * Tue Nov 24 2020 Lubomír Sedlář - 0.2.51-3 - Build a client only version * Wed Nov 04 2020 Haibo Lin - 0.2.51-2 - Backport patch * Wed Nov 04 2020 Haibo Lin - 0.2.51-1 - new version * Wed Sep 30 2020 Lubomír Sedlář - 0.2.50-2 - Backport patch to support development composes * Wed Sep 30 2020 Lubomír Sedlář - 0.2.50-1 - new version * Wed Aug 19 2020 Lubomír Sedlář - 0.2.49-4 - Actually include the patch * Wed Aug 19 2020 Lubomír Sedlář - 0.2.49-3 - Fix scratch module argument parser * Wed Aug 19 2020 Lubomír Sedlář - 0.2.49-2 - Add missing migration * Tue Aug 18 2020 Lubomír Sedlář - 0.2.49-1 - new version * Fri Jul 03 2020 Lubomír Sedlář - 0.2.48-2 - odcs-promote-compose: When hardlink fails because of EXDEV, fallback to copy * Fri Jun 19 2020 Lubomír Sedlář - 0.2.48-1 - New upstream release * Fri May 22 2020 Lubomír Sedlář - 0.2.47-1 - New upstream release * Tue Apr 07 2020 Jan Kaluza - 0.2.43-1 - New upstream release * Wed Apr 01 2020 Lubomír Sedlář - 0.2.42-1 - New upstream release * Thu Feb 20 2020 Lubomír Sedlář - 0.2.38-1 - New upstream release * Mon Nov 11 2019 Lubomír Sedlář - 0.2.37-1 - new version * Thu Oct 03 2019 Lubomír Sedlář - 0.2.36-1 - new version * Mon Sep 23 2019 Lubomír Sedlář - 0.2.35-1 - new version * Fri Aug 23 2019 Jan Kaluza - 0.2.34-2 - fix flooding the log with rmtree error messages. * Tue Aug 20 2019 Jan Kaluza - 0.2.34-1 - new version * Mon Aug 05 2019 Jan Kaluza - 0.2.33-1 - new version * Mon Jul 15 2019 Jan Kaluza - 0.2.32-1 - new version * Fri Jun 14 2019 Jan Kaluza - 0.2.31-1 - new version * Thu May 16 2019 Jan Kaluza - 0.2.30-1 - new version * Thu May 09 2019 Jan Kaluza - 0.2.29-1 - new version * Tue May 07 2019 Jan Kaluza - 0.2.28-1 - new version * Wed Apr 03 2019 Jan Kaluza - 0.2.27-1 - new version * Wed Apr 03 2019 Jan Kaluza - 0.2.26-2 - fix the default raw config. * Wed Apr 03 2019 Jan Kaluza - 0.2.26-1 - new version * Tue Mar 26 2019 Jan Kaluza - 0.2.25-2 - fix compatibility with python-amqp-2.4.x * Mon Mar 25 2019 Jan Kaluza - 0.2.25-1 - new version * Mon Mar 11 2019 Jan Kaluza - 0.2.24-1 - new version * Fri Feb 15 2019 Jan Kaluza - 0.2.23-1 - new version * Fri Feb 01 2019 Jan Kaluza - 0.2.22-1 - new version * Tue Jan 29 2019 Jan Kaluza - 0.2.21-2 - do not require 'koji' in requirements.txt, because in RHEL7, it does not provide the egginfo. * Tue Jan 29 2019 Jan Kaluza - 0.2.21-1 - new version * Thu Jan 03 2019 Jan Kaluza - 0.2.20-1 - new version * Tue Nov 27 2018 Luiz Carvalho - 0.2.19-1 - new version * Thu Nov 08 2018 Jan Kaluza - 0.2.18-1 - new version * Tue Nov 06 2018 Jan Kaluza - 0.2.16-1 - new version * Tue Oct 23 2018 Chenxiong Qi - 0.2.15-1 - new version * Fri Sep 21 2018 Jan Kaluza - 0.2.14-1 - new version * Thu Sep 13 2018 Jan Kaluza - 0.2.13-2 - fix tracebacks when multilib is not set. * Wed Sep 12 2018 Jan Kaluza - 0.2.13-1 - new version * Mon Sep 03 2018 Jan Kaluza - 0.2.12-2 - set '--nightly' as default PUNGI_KOJI_ARGS. * Mon Sep 03 2018 Jan Kaluza - 0.2.12-1 - new version * Thu Aug 16 2018 Jan Kaluza - 0.2.11-1 - new version * Tue Jul 31 2018 Jan Kaluza - 0.2.10-2 - bump the release for eng-rhel-7 repo * Tue Jul 31 2018 Jan Kaluza - 0.2.10-1 - new version * Mon Jul 30 2018 Jan Kaluza - 0.2.9-1 - new version * Tue Jul 17 2018 Jan Kaluza - 0.2.8-1 - new version * Fri Jun 15 2018 Ralph Bean - 0.2.6.1-1 - new version * Thu Jun 14 2018 Ralph Bean - 0.2.6-1 - updated to new version 0.2.6. * Thu Jun 07 2018 Jan Kaluza - 0.2.5-2 - Add dep on python-requests-kerberos. * Thu Jun 07 2018 Jan Kaluza - 0.2.5-1 - updated to new version 0.2.5. * Mon Jun 04 2018 Jan Kaluza - 0.2.4-1 - updated to new version 0.2.4 * Mon May 07 2018 Jan Kaluza - 0.2.3-1 - updated to new version 0.2.3. * Thu Apr 19 2018 Jan Kaluza - 0.2.2-1 - updated to new version 0.2.2. * Mon Mar 12 2018 Jan Kaluza - 0.2.1-1 - updated to new version 0.2.1. * Mon Feb 26 2018 Jan Kaluza - 0.2.0-1 - updated to new version 0.2.0. * Thu Feb 08 2018 Fedora Release Engineering - 0.1.7-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild * Mon Feb 05 2018 Jan Kaluza - 0.1.7-2 - restart odcs-backend.service on failure. * Mon Feb 05 2018 Jan Kaluza - 0.1.7-1 - updated to new version 0.1.7. * Thu Jan 11 2018 Jan Kaluza - 0.1.6-1 - updated to new version 0.1.6. * Tue Dec 12 2017 Jan Kaluza - 0.1.5-5 - do not remove pungi ODCS composes * Mon Dec 11 2017 Jan Kaluza - 0.1.5-4 - fix Koji kerberos login with keytab * Mon Dec 11 2017 Jan Kaluza - 0.1.5-3 - fix Koji kerberos login with keytab * Mon Dec 11 2017 Jan Kaluza - 0.1.5-2 - fix traceback in unique_path. * Fri Dec 08 2017 Jan Kaluza - 0.1.5-1 - updated to new version 0.1.5 * Fri Nov 24 2017 Jan Kaluza - 0.1.4-1 - updated to new version 0.1.4. * Fri Nov 24 2017 Jan Kaluza - 0.1.3-1 - updated to new version 0.1.3. * Wed Nov 01 2017 Jan Kaluza - 0.1.2-1 - updated to new version 0.1.2. * Mon Oct 30 2017 Jan Kaluza - 0.1.1-3 - Require:hardlink * Mon Oct 30 2017 Jan Kaluza - 0.1.1-1 - updated to new version 0.1.1. * Thu Oct 12 2017 Jan Kaluza - 0.1.0-2 - use http instead of https for pulp .repo file * Fri Oct 06 2017 Ralph Bean - 0.1.0-1 - new version * Thu Oct 05 2017 Ralph Bean - 0.0.8-1 - new version * Fri Sep 29 2017 Ralph Bean - 0.0.7-1 - new version * Tue Sep 26 2017 Ralph Bean - 0.0.6-1 - new version * Thu Sep 21 2017 Jan Kaluza - 0.0.5-1 - new version * Thu Aug 10 2017 Jan Kaluza - 0.0.4-1 - new version * Thu Jul 27 2017 Fedora Release Engineering - 0.0.3-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild * Tue Jul 18 2017 Jan Kaluza - 0.0.3-4 - fix reversed condition for python2-* dependencies * Mon Jul 17 2017 Jan Kaluza - 0.0.3-3 - Add python2- prefix to requirements when it makes sense - Add -p to install command to preserve timestamp - Fix macros formatting, use _datadir instead of /usr/share * Tue Jul 11 2017 Jan Kaluza - 0.0.3-2 - fix dependencies * Thu Jun 29 2017 Jan Kaluza - 0.0.3-1 - Initial version of spec file