From 66f866293fec42fdb861d33002f550016e24fe0b Mon Sep 17 00:00:00 2001 From: Kamil Páral Date: Mar 01 2018 15:03:03 +0000 Subject: upstream release 0.5.0 --- diff --git a/.gitignore b/.gitignore index 5e46145..3a14fb9 100644 --- a/.gitignore +++ b/.gitignore @@ -12,3 +12,4 @@ /libtaskotron-0.4.23.tar.gz /libtaskotron-0.4.24.tar.gz /libtaskotron-0.4.25.tar.gz +/libtaskotron-0.5.0.tar.gz diff --git a/libtaskotron.spec b/libtaskotron.spec index 8e94ce2..189e15f 100644 --- a/libtaskotron.spec +++ b/libtaskotron.spec @@ -1,7 +1,7 @@ Name: libtaskotron # NOTE: if you update version, *make sure* to also update `libtaskotron/__init__.py` -Version: 0.4.25 -Release: 4%{?dist} +Version: 0.5.0 +Release: 1%{?dist} Summary: Taskotron Support Library License: GPLv3 @@ -10,7 +10,6 @@ Source0: https://qa.fedoraproject.org/releases/%{name}/%{name}-%{version} BuildArch: noarch -# sorted alphabetically Requires: libtaskotron-config = %{version}-%{release} Requires: libtaskotron-core = %{version}-%{release} Requires: libtaskotron-fedora = %{version}-%{release} @@ -20,47 +19,35 @@ Requires: libtaskotron-disposable = %{version}-%{release} Libtaskotron is a support library for running taskotron tasks. The top level libtaskotron package is a meta-package which will install all sub-packages. +# ********* libtaskotron-core ********* + %package -n libtaskotron-core Summary: The minimal, core parts of libtaskotron +Requires: ansible >= 2.3 Requires: libtaskotron-config = %{version}-%{release} Requires: python2-configparser >= 3.5.0b2 Requires: python2-jinja2 >= 2.8 +Requires: python2-resultsdb_api >= 2.0.0 +Requires: python2-requests >= 2.7.0 +Requires: python2-setuptools +Requires: python2-xunitparser >= 1.3.3 +# used by 'synchronize' task in ansible +Requires: rsync + %if 0%{?fedora} <= 27 Requires: python-progressbar >= 2.3 -Requires: python-resultsdb_api >= 2.0.0 -Requires: python-requests >= 2.7.0 -Requires: python-setuptools -Requires: python-xunitparser >= 1.3.3 Requires: PyYAML >= 3.11 %else Requires: python2-progressbar >= 2.3 -Requires: python2-resultsdb_api >= 2.0.0 -Requires: python2-requests >= 2.7.0 -Requires: python2-setuptools -Requires: python2-xunitparser >= 1.3.3 Requires: python2-pyyaml >= 3.11 %endif -Requires: sudo -Requires: tar >= 1.28-6 + +BuildRequires: ansible >= 2.3 +BuildRequires: grep BuildRequires: python2-devel BuildRequires: python2-configparser >= 3.5.0b2 -%if 0%{?fedora} <= 27 -BuildRequires: python-dingus >= 0.3.4 -BuildRequires: python-mock >= 2.0.0 -BuildRequires: python-progressbar >= 2.3 -BuildRequires: python2-pytest >= 2.7.3 -BuildRequires: python-pytest-cov >= 2.2.1 -BuildRequires: python-resultsdb_api >= 2.0.0 -BuildRequires: python-requests >= 2.7.0 -BuildRequires: python-setuptools -BuildRequires: python2-sphinx_rtd_theme >= 0.1.9 -BuildRequires: python-xunitparser >= 1.3.3 -BuildRequires: PyYAML >= 3.11 -%else -BuildRequires: python2-dingus >= 0.3.4 BuildRequires: python2-mock >= 2.0.0 -BuildRequires: python2-progressbar >= 2.3 BuildRequires: python2-pytest >= 2.7.3 BuildRequires: python2-pytest-cov >= 2.2.1 BuildRequires: python2-resultsdb_api >= 2.0.0 @@ -68,12 +55,24 @@ BuildRequires: python2-requests >= 2.7.0 BuildRequires: python2-setuptools BuildRequires: python2-sphinx_rtd_theme >= 0.1.9 BuildRequires: python2-xunitparser >= 1.3.3 +BuildRequires: rsync +BuildRequires: sed + +%if 0%{?fedora} <= 27 +BuildRequires: python-dingus >= 0.3.4 +BuildRequires: python-progressbar >= 2.3 +BuildRequires: PyYAML >= 3.11 +%else +BuildRequires: python2-dingus >= 0.3.4 +BuildRequires: python2-progressbar >= 2.3 BuildRequires: python2-pyyaml >= 3.11 %endif %description -n libtaskotron-core The minimal, core parts of libtaskotron that are needed to run tasks +# ******* libtaskotron-config ******** + %package -n libtaskotron-config Summary: Configuration files needed for using libtaskotron @@ -81,35 +80,30 @@ Summary: Configuration files needed for using libtaskotron libtaskotron-config contains all of the configuration files needed for using libtaskotron. +# ******** libtaskotron-fedora ******** + %package -n libtaskotron-fedora Summary: Fedora specific module for libtaskotron Requires: createrepo Requires: dnf >= 0.6.4 -%if 0%{?fedora} >= 27 -Requires: python2-koji >= 1.10.0 -%else -Requires: koji >= 1.10.0 -%endif Requires: libtaskotron-core = %{version}-%{release} -Requires: mash Requires: python2-fedora >= 0.8.0 Requires: python2-hawkey >= 0.4.13-1 +Requires: python2-koji >= 1.10.0 +Requires: python2-rpm + %if 0%{?fedora} <= 27 Requires: python-munch >= 2.0.2 %else Requires: python2-munch >= 2.0.2 %endif -Requires: python2-rpm -%if 0%{?fedora} >= 27 -BuildRequires: python2-koji >= 1.10.0 -%else -BuildRequires: koji >= 1.10.0 -%endif -BuildRequires: mash + BuildRequires: python2-fedora >= 0.8.0 BuildRequires: python2-hawkey >= 0.4.13-1 BuildRequires: python2-rpmfluff >= 0.5.1 +BuildRequires: python2-koji >= 1.10.0 + %if 0%{?fedora} <= 27 BuildRequires: python-munch >= 2.0.2 %else @@ -119,18 +113,19 @@ BuildRequires: python2-munch >= 2.0.2 %description -n libtaskotron-fedora Module for libtaskotron which contains all functionality which is fedora-only +# ****** libtaskotron-disposable ****** + %package -n libtaskotron-disposable Summary: disposable client module for libtaskotron Requires: libtaskotron-core = %{version}-%{release} -Requires: python2-paramiko >= 1.15.1 Requires: testcloud >= 0.1.15 -BuildRequires: python2-paramiko >= 1.15.1 BuildRequires: testcloud >= 0.1.15 %description -n libtaskotron-disposable Module for libtaskotron which enables the use of disposable clients +# ************************************* %pre core getent group taskotron >/dev/null || groupadd taskotron @@ -138,14 +133,18 @@ getent group taskotron >/dev/null || groupadd taskotron %prep %setup -q -%check -%{__python} setup.py test - %build +# testing needs to occur here instead of %%check section, because we need to +# patch config files after testing is done, but before py[co] files are built +# (so that they match the source files) +%{__python} setup.py test +# adjust data path in config +sed -i "/_data_dir/s#_data_dir = '../data'#_data_dir = '%{_datarootdir}/libtaskotron'#" libtaskotron/config_defaults.py +grep -Fq "_data_dir = '%{_datarootdir}/libtaskotron'" libtaskotron/config_defaults.py +# build files %{__python} setup.py build %install -rm -rf %{buildroot} %{__python} setup.py install -O1 --skip-build --root %{buildroot} # configuration files @@ -169,6 +168,10 @@ install -d %{buildroot}/%{_localstatedir}/cache/taskotron # images dir install -d %{buildroot}/%{_sharedstatedir}/taskotron/images +# data files +mkdir -p %{buildroot}%{_datarootdir}/libtaskotron +cp -a data/* %{buildroot}%{_datarootdir}/libtaskotron + %files %files -n libtaskotron-core @@ -177,13 +180,11 @@ install -d %{buildroot}/%{_sharedstatedir}/taskotron/images %{python2_sitelib}/libtaskotron/*.py* %{python2_sitelib}/libtaskotron/directives/*.py* %{python2_sitelib}/libtaskotron/ext/*.py* -%{python2_sitelib}/libtaskotron/report_templates/*.j2 %{python2_sitelib}/*.egg-info %dir %{python2_sitelib}/libtaskotron/ext/fedora %dir %{python2_sitelib}/libtaskotron/ext %dir %{python2_sitelib}/libtaskotron/directives -%dir %{python2_sitelib}/libtaskotron/report_templates %attr(755, root, root) %{_bindir}/runtask %attr(755, root, root) %{_bindir}/taskotron_result @@ -191,9 +192,10 @@ install -d %{buildroot}/%{_sharedstatedir}/taskotron/images %dir %attr(2775, root, taskotron) %{_tmppath}/taskotron %dir %attr(2775, root, taskotron) %{_localstatedir}/log/taskotron %dir %attr(2775, root, taskotron) %{_localstatedir}/cache/taskotron -%dir %attr(2775, root, taskotron) %{_sharedstatedir}/taskotron +%dir %attr(0775, root, taskotron) %{_sharedstatedir}/taskotron %dir %attr(2775, root, taskotron) %{_sharedstatedir}/taskotron/artifacts %dir %attr(2775, root, taskotron) %{_sharedstatedir}/taskotron/images +%{_datarootdir}/libtaskotron %files -n libtaskotron-config %dir %{_sysconfdir}/taskotron @@ -210,6 +212,11 @@ install -d %{buildroot}/%{_sharedstatedir}/taskotron/images %{python2_sitelib}/libtaskotron/ext/disposable/* %changelog + +* Thu Mar 1 2018 Kamil Páral - 0.5.0-1 +- Support Standard Test Interface (Ansible-based) tasks + (removes support for previous task format) + * Fri Feb 09 2018 Igor Gnatenko - 0.4.25-4 - Escape macros in %%changelog diff --git a/sources b/sources index 5a5f7c4..77e63fb 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (libtaskotron-0.4.25.tar.gz) = db48f291790e396ff7969987ad8b8be781b810e02099d417a742224120ea7bb38ceedd3338304acadb87bc2df8638a0f796ae46d53d6bfeac8b50577885d1ce7 +SHA512 (libtaskotron-0.5.0.tar.gz) = 62245a6f4b5fe2b1cac69eac55a90319dcd5ab398a4f8fdc5e747c5ddcc32b8207a127029b875f93a22d0528e8fd7a64a62c03435a4f0cfb7d6ce581831811cb