diff --git a/.gitignore b/.gitignore index c102fa6..e2375ce 100644 --- a/.gitignore +++ b/.gitignore @@ -7,3 +7,4 @@ /avocado-51.0.tar.gz /avocado-52.0.tar.gz /avocado-52.1.tar.gz +/avocado-61.0.tar.gz diff --git a/avocado-61.0-correct-data_structures-identity-check.patch b/avocado-61.0-correct-data_structures-identity-check.patch new file mode 100644 index 0000000..3ab4be0 --- /dev/null +++ b/avocado-61.0-correct-data_structures-identity-check.patch @@ -0,0 +1,15 @@ +diff --git a/selftests/unit/test_data_structures.py b/selftests/unit/test_data_structures.py +index 60f649663..50a18b26f 100644 +--- a/selftests/unit/test_data_structures.py ++++ b/selftests/unit/test_data_structures.py +@@ -113,8 +113,8 @@ def test_invalid(self): + data_structures.DataSize, '10Mb') + + def test_value_and_type(self): +- self.assertIs(data_structures.DataSize('0b').b, 0) +- self.assertIs(data_structures.DataSize('0t').b, 0) ++ self.assertEqual(data_structures.DataSize('0b').b, 0) ++ self.assertEqual(data_structures.DataSize('0t').b, 0) + + def test_values(self): + self.assertEqual(data_structures.DataSize('10m').b, 10485760) diff --git a/avocado-61.0-skip-remote-test-if-plugin-unavailable.patch b/avocado-61.0-skip-remote-test-if-plugin-unavailable.patch new file mode 100644 index 0000000..cdec099 --- /dev/null +++ b/avocado-61.0-skip-remote-test-if-plugin-unavailable.patch @@ -0,0 +1,62 @@ +From 0cc70f1c8a41260640dfc7a660c11bcb1a163419 Mon Sep 17 00:00:00 2001 +From: Cleber Rosa +Date: Thu, 3 May 2018 21:05:43 +0200 +Subject: [PATCH] Replay with remote functional test: skip if remote plugin is + not available + +When a plugin is not installed, its command line options are not +registered with the optparse based code. That is caught earlier than +Avocado's own handling of incompatible options (in this case, the replay +and the remote runner), and results in the errors such as: + + avocado run: error: unrecognized arguments: --remote-hostname + +When building RPM packages for Python 3, the remote runner plugin is +not available, and this test should be skipped. + +Signed-off-by: Cleber Rosa +--- + selftests/functional/test_replay_basic.py | 14 +++++++++++++- + 1 file changed, 13 insertions(+), 1 deletion(-) + +diff --git a/selftests/functional/test_replay_basic.py b/selftests/functional/test_replay_basic.py +index 56f94d315..6eb944aa2 100644 +--- a/selftests/functional/test_replay_basic.py ++++ b/selftests/functional/test_replay_basic.py +@@ -1,9 +1,11 @@ + import glob + import os +-import tempfile + import shutil ++import tempfile + import unittest + ++import pkg_resources ++ + from avocado.core import exit_codes + from avocado.utils import process + +@@ -14,6 +16,14 @@ + AVOCADO = os.environ.get("UNITTEST_AVOCADO_CMD", "./scripts/avocado") + + ++def remote_capable(): ++ try: ++ pkg_resources.require('avocado-framework-plugin-runner-remote') ++ return True ++ except pkg_resources.DistributionNotFound: ++ return False ++ ++ + class ReplayTests(unittest.TestCase): + + def setUp(self): +@@ -148,6 +158,8 @@ def test_run_replay_statusfail(self): + b'INTERRUPT 0') + self.assertIn(msg, result.stdout) + ++ @unittest.skipUnless(remote_capable(), ++ "Remote runner plugin is not available") + def test_run_replay_remotefail(self): + """ + Runs a replay job using remote plugin (not supported). diff --git a/avocado-selftest-doublefree-disable.patch b/avocado-selftest-doublefree-disable.patch deleted file mode 100644 index 075de2b..0000000 --- a/avocado-selftest-doublefree-disable.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -r -u avocado-52.0.orig/selftests/functional/test_output.py avocado-52.0/selftests/functional/test_output.py ---- avocado-52.0.orig/selftests/functional/test_output.py 2017-06-26 19:26:48.000000000 -0500 -+++ avocado-52.0/selftests/functional/test_output.py 2017-08-09 07:40:41.636928188 -0500 -@@ -67,6 +67,7 @@ - def setUp(self): - self.tmpdir = tempfile.mkdtemp(prefix='avocado_' + __name__) - -+ @unittest.skip("Test is producing a false failure due to platform/compiler changes") - @unittest.skipIf(missing_binary('cc'), - "C compiler is required by the underlying doublefree.py test") - def test_output_doublefree(self): diff --git a/avocado-selftest-fix-cmdline-check.patch b/avocado-selftest-fix-cmdline-check.patch deleted file mode 100644 index 525a869..0000000 --- a/avocado-selftest-fix-cmdline-check.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -ru ../avocado-52.1.orig/selftests/functional/test_plugin_diff.py ./selftests/functional/test_plugin_diff.py ---- ../avocado-52.1.orig/selftests/functional/test_plugin_diff.py 2018-03-01 12:05:02.000000000 -0600 -+++ ./selftests/functional/test_plugin_diff.py 2018-03-13 16:50:33.662490323 -0500 -@@ -52,9 +52,9 @@ - result = self.run_and_check(cmd_line, expected_rc) - msg = "# COMMAND LINE" - self.assertIn(msg, result.stdout) -- msg = "-./scripts/avocado run" -+ msg = "-%s run" % AVOCADO - self.assertIn(msg, result.stdout) -- msg = "+./scripts/avocado run" -+ msg = "+%s run" % AVOCADO - self.assertIn(msg, result.stdout) - - def test_diff_nocmdline(self): diff --git a/python-avocado.spec b/python-avocado.spec index d80d9dd..2e3de23 100644 --- a/python-avocado.spec +++ b/python-avocado.spec @@ -8,17 +8,17 @@ # Settings used for build from snapshots. %if 0%{?rel_build} - %global gittar %{srcname}-%{version}.tar.gz + %global gittar %{srcname}-%{version}.tar.gz %else %if ! 0%{?commit:1} - %global commit 0ddd3c7b92f18c85157766e9e0ec810e6b3dd37e + %global commit 33560176c773e1d5d0b83aa59fe5d0f5f80a1cc3 %endif %if ! 0%{?commit_date:1} - %global commit_date 20180301 + %global commit_date 20180425 %endif - %global shortcommit %(c=%{commit};echo ${c:0:7}) - %global gitrel .%{commit_date}git%{shortcommit} - %global gittar %{srcname}-%{shortcommit}.tar.gz + %global shortcommit %(c=%{commit};echo ${c:0:8}) + %global gitrel .%{commit_date}git%{shortcommit} + %global gittar %{srcname}-%{shortcommit}.tar.gz %endif # Selftests are provided but may need to be skipped because many of @@ -32,16 +32,21 @@ %global with_tests 0 %endif +%bcond_without python2 +%if 0%{?fedora} || 0%{?rhel} > 7 +%bcond_without python3 +%else +%bcond_with python3 +%endif + Name: python-%{pkgname} -Version: 52.1 -Release: 2%{?gitrel}%{?dist} +Version: 61.0 +Release: 1%{?gitrel}%{?dist} Summary: Framework with tools and libraries for Automated Testing Group: Development/Tools # Found licenses: # avocado/utils/external/gdbmi_parser.py: MIT # avocado/utils/external/spark.py: MIT -# optional_plugins/html/avocado_result_html/resources/static/css/*: MIT -# optional_plugins/html/avocado_result_html/resources/static/js/*: MIT # Other files: GPLv2 and GPLv2+ License: GPLv2 and MIT URL: http://avocado-framework.github.io/ @@ -50,64 +55,80 @@ Source0: https://github.com/avocado-framework/%{srcname}/archive/%{version}.tar. %else Source0: https://github.com/avocado-framework/%{srcname}/archive/%{commit}.tar.gz#/%{gittar} %endif -Patch0: avocado-selftest-doublefree-disable.patch -Patch1: avocado-selftest-fix-cmdline-check.patch +# Upstream patch to skip remote functional test if remote plugin is not avilable +# https://github.com/avocado-framework/avocado/commit/0cc70f1c8a41260640dfc7a660c11bcb1a163419 +Patch0: avocado-61.0-skip-remote-test-if-plugin-unavailable.patch +# Upstream patch to fix unsuitable data_structures identity check +# https://github.com/avocado-framework/avocado/pull/2632/commits/71d189b6ac032524ca0a76d2ae0446ebeb8317ff +Patch1: avocado-61.0-correct-data_structures-identity-check.patch BuildArch: noarch -BuildRequires: fabric -BuildRequires: python2-pystache + +BuildRequires: procps-ng +BuildRequires: kmod + +%if %{with python2} BuildRequires: python2-aexpect BuildRequires: python2-devel BuildRequires: python2-docutils -BuildRequires: python2-flexmock -BuildRequires: python2-lxml BuildRequires: python2-mock -BuildRequires: python2-resultsdb_api - -%if 0%{?with_tests} -BuildRequires: python2-libvirt -BuildRequires: perl(TAP::Parser) -%if 0%{?rhel} && 0%{?rhel} <= 7 -BuildRequires: python-yaml -%else -BuildRequires: python2-yaml -%endif -%endif - -%if 0%{?rhel} && 0%{?rhel} <= 7 -BuildRequires: python-psutil -BuildRequires: python-requests -BuildRequires: python-setuptools -BuildRequires: python-sphinx -BuildRequires: python-stevedore -%else BuildRequires: python2-psutil BuildRequires: python2-requests +BuildRequires: python2-resultsdb_api BuildRequires: python2-setuptools +BuildRequires: python2-six BuildRequires: python2-sphinx -BuildRequires: python2-stevedore -%endif - -%if 0%{?el6} -BuildRequires: procps -BuildRequires: python-argparse -BuildRequires: python-importlib -BuildRequires: python-logutils -BuildRequires: python-unittest2 +%if 0%{?fedora} > 27 || 0%{?rhel} > 7 +BuildRequires: python2-pystache %else -BuildRequires: procps-ng +BuildRequires: pystache +%endif +%if 0%{?fedora} >= 29 +BuildRequires: python2-fabric3 +%else +BuildRequires: fabric +%endif +%if 0%{?fedora} || 0%{?rhel} > 7 +BuildRequires: python2-lxml +BuildRequires: python2-stevedore +%else +BuildRequires: python-lxml +BuildRequires: python-stevedore +%endif %endif -# For some strange reason, fabric on Fedora 24 does not require the -# python-crypto package, but the fabric code always imports it. Newer -# fabric versions, such from Fedora 25 do conditional imports (try: -# from Crypto import Random; except: Random = None) and thus do not -# need this requirement. -%if 0%{?fedora} == 24 -BuildRequires: python-crypto +%if %{with python3} +BuildRequires: python3-aexpect +BuildRequires: python3-devel +BuildRequires: python3-docutils +BuildRequires: python3-lxml +BuildRequires: python3-mock +BuildRequires: python3-psutil +BuildRequires: python3-pystache +BuildRequires: python3-requests +BuildRequires: python3-setuptools +BuildRequires: python3-six +BuildRequires: python3-sphinx +BuildRequires: python3-stevedore %endif -%if 0%{?fedora} >= 25 || 0%{?rhel} >= 7 -BuildRequires: kmod +%if 0%{?with_tests} +BuildRequires: perl-Test-Harness +%if %{with python2} +BuildRequires: python2-yaml +%if 0%{?fedora} >= 27 || 0%{?rhel} >= 7 +BuildRequires: python2-libvirt +%else +BuildRequires: libvirt-python +%endif +%endif +%if %{with python3} +BuildRequires: python3-yaml +%if 0%{?fedora} >= 27 || 0%{?rhel} >= 7 +BuildRequires: python3-libvirt +%else +BuildRequires: libvirt-python3 +%endif +%endif %endif %description @@ -115,131 +136,6 @@ Avocado is a set of tools and libraries (what people call these days a framework) to perform automated testing. -%package -n python2-%{pkgname} -Summary: %{summary} -License: GPLv2 and MIT -%{?python_provide:%python_provide python2-%{pkgname}} -Requires: fabric -Requires: gdb -Requires: gdb-gdbserver -Requires: pyliblzma -Requires: python2-pystache -Requires: python2 - -%if 0%{?rhel} && 0%{?rhel} <= 7 -Requires: python-requests -Requires: python-stevedore -%else -Requires: python2-requests -Requires: python2-stevedore -%endif - -%if 0%{?el6} -Requires: procps -Requires: python-argparse -Requires: python-importlib -Requires: python-logutils -Requires: python-unittest2 -%else -Requires: procps-ng -%endif - - -%description -n python2-%{pkgname} -Avocado is a set of tools and libraries (what people call -these days a framework) to perform automated testing. - - -%package -n python2-%{pkgname}-plugins-output-html -Summary: Avocado HTML report plugin -%{?python_provide:%python_provide python2-%{pkgname}-plugins-output-html} -Requires: python2-%{pkgname} == %{version}-%{release} -Requires: python2-pystache - -%description -n python2-%{pkgname}-plugins-output-html -Adds to avocado the ability to generate an HTML report at every job results -directory. It also gives the user the ability to write a report on an -arbitrary filesystem location. - - -%package -n python2-%{pkgname}-plugins-runner-remote -Summary: Avocado Runner for Remote Execution -%{?python_provide:%python_provide python2-%{pkgname}-plugins-runner-remote} -Requires: python2-%{pkgname} == %{version}-%{release} -Requires: fabric -%if 0%{?fedora} == 24 -Requires: python-crypto -%endif - -%description -n python2-%{pkgname}-plugins-runner-remote -Allows Avocado to run jobs on a remote machine, by means of an SSH -connection. Avocado must be previously installed on the remote machine. - - -%package -n python2-%{pkgname}-plugins-runner-vm -Summary: Avocado Runner for libvirt VM Execution -%{?python_provide:%python_provide python2-%{pkgname}-plugins-runner-vm} -Requires: python2-%{pkgname} == %{version}-%{release} -Requires: python2-%{pkgname}-plugins-runner-remote == %{version}-%{release} -Requires: python2-libvirt - -%description -n python2-%{pkgname}-plugins-runner-vm -Allows Avocado to run jobs on a libvirt based VM, by means of -interaction with a libvirt daemon and an SSH connection to the VM -itself. Avocado must be previously installed on the VM. - - -%package -n python2-%{pkgname}-plugins-runner-docker -Summary: Avocado Runner for Execution on Docker Containers -%{?python_provide:%python_provide python2-%{pkgname}-plugins-runner-docker} -Requires: python2-%{pkgname} == %{version}-%{release} -Requires: python2-%{pkgname}-plugins-runner-remote == %{version}-%{release} -Requires: python2-aexpect - -%description -n python2-%{pkgname}-plugins-runner-docker -Allows Avocado to run jobs on a Docker container by interacting with a -Docker daemon and attaching to the container itself. Avocado must -be previously installed on the container. - - -%package -n python2-%{pkgname}-plugins-resultsdb -Summary: Avocado plugin to propagate job results to ResultsDB -%{?python_provide:%python_provide python2-%{pkgname}-plugins-resultsdb} -Requires: python2-%{pkgname} == %{version}-%{release} -Requires: python2-resultsdb_api - -%description -n python2-%{pkgname}-plugins-resultsdb -Allows Avocado to send job results directly to a ResultsDB -server. - - -%package -n python2-%{pkgname}-plugins-varianter-yaml-to-mux -Summary: Avocado plugin to generate variants out of yaml files -%{?python_provide:%python_provide python2-%{pkgname}-plugins-resultsdb} -Requires: python2-%{pkgname} == %{version}-%{release} -%if 0%{?rhel} && 0%{?rhel} <= 7 -Requires: python-yaml -%else -Requires: python2-yaml -%endif - -%description -n python2-%{pkgname}-plugins-varianter-yaml-to-mux -Can be used to produce multiple test variants with test parameters -defined in a yaml file(s). - - -%package -n python-%{pkgname}-examples -Summary: Avocado Test Framework Example Tests -License: GPLv2 -# documentation does not require main package, but needs to be in lock-step if present -Conflicts: python-%{pkgname} < %{version}-%{release}, python-%{pkgname} > %{version}-%{release} - -%description -n python-%{pkgname}-examples -The set of example tests present in the upstream tree of the Avocado framework. -Some of them are used as functional tests of the framework, others serve as -examples of how to write tests on your own. - - %prep %if 0%{?rel_build} %setup -q -n %{srcname}-%{version} @@ -252,68 +148,267 @@ examples of how to write tests on your own. # version of libvirt-python does not publish the egg info and this # causes that dep to be attempted to be installed by pip sed -e "s/'libvirt-python'//" -i optional_plugins/runner_vm/setup.py +%if 0%{?fedora} >= 29 +# fabric has been renamed to python2-fabric3 +sed -e "s/'fabric'/'fabric3'/" -i optional_plugins/runner_remote/setup.py +%endif + %build -%{__python2} setup.py build +%if %{with python2} +%py2_build +%endif +%if %{with python3} +%py3_build +%endif pushd optional_plugins/html - %{__python2} setup.py build + %if %{with python2} + %py2_build + %endif + %if %{with python3} + %py3_build + %endif popd pushd optional_plugins/runner_remote - %{__python2} setup.py build + %if %{with python2} + %py2_build + %endif + %if %{with python3} + # no runner_remote plugin on Python 3 due to missing Fabric package + %endif popd pushd optional_plugins/runner_vm - %{__python2} setup.py build + %if %{with python2} + %py2_build + %endif + %if %{with python3} + # no runner_vm plugin on Python 3 due to missing Fabric package + %endif popd pushd optional_plugins/runner_docker - %{__python2} setup.py build + %if %{with python2} + %py2_build + %endif + %if %{with python3} + # no runner_docker plugin on Python 3 due to missing Fabric package + %endif popd pushd optional_plugins/resultsdb - %{__python2} setup.py build + %if %{with python2} + %py2_build + %endif + %if %{with python3} + # no resultsdb plugin on Python 3 due to missing resultsdb_api package + %endif popd pushd optional_plugins/varianter_yaml_to_mux - %{__python2} setup.py build + %if %{with python2} + %py2_build + %endif + %if %{with python3} + %py3_build + %endif +popd +pushd optional_plugins/loader_yaml + %if %{with python2} + %py2_build + %endif + %if %{with python3} + %py3_build + %endif +popd +pushd optional_plugins/golang + %if %{with python2} + %py2_build + %endif + %if %{with python3} + %py3_build + %endif +popd +pushd optional_plugins/varianter_pict + %if %{with python2} + %py2_build + %endif + %if %{with python3} + %py3_build + %endif +popd +pushd optional_plugins/result_upload + %if %{with python2} + %py2_build + %endif + %if %{with python3} + %py3_build + %endif +popd +pushd optional_plugins/glib + %if %{with python2} + %py2_build + %endif + %if %{with python3} + %py3_build + %endif popd %{__make} man %install -%{__python2} setup.py install --root %{buildroot} --skip-build -pushd optional_plugins/html - %{__python2} setup.py install --root %{buildroot} --skip-build -popd -pushd optional_plugins/runner_remote - %{__python2} setup.py install --root %{buildroot} --skip-build -popd -pushd optional_plugins/runner_vm - %{__python2} setup.py install --root %{buildroot} --skip-build -popd -pushd optional_plugins/runner_docker - %{__python2} setup.py install --root %{buildroot} --skip-build -popd -pushd optional_plugins/resultsdb - %{__python2} setup.py install --root %{buildroot} --skip-build -popd -pushd optional_plugins/varianter_yaml_to_mux - %{__python2} setup.py install --root %{buildroot} --skip-build -popd +%if %{with python2} +%py2_install %{__mv} %{buildroot}%{_bindir}/avocado %{buildroot}%{_bindir}/avocado-%{python2_version} %{__ln_s} avocado-%{python2_version} %{buildroot}%{_bindir}/avocado-2 -%{__ln_s} avocado-%{python2_version} %{buildroot}%{_bindir}/avocado %{__mv} %{buildroot}%{_bindir}/avocado-rest-client %{buildroot}%{_bindir}/avocado-rest-client-%{python2_version} %{__ln_s} avocado-rest-client-%{python2_version} %{buildroot}%{_bindir}/avocado-rest-client-2 +# configuration is held at /etc/avocado only and part of the +# python-avocado-common package +%{__rm} -rf %{buildroot}%{python2_sitelib}/avocado/etc +# ditto for libexec files +%{__rm} -rf %{buildroot}%{python2_sitelib}/avocado/libexec +%endif +%if %{with python3} +%py3_install +%{__mv} %{buildroot}%{_bindir}/avocado %{buildroot}%{_bindir}/avocado-%{python3_version} +%{__ln_s} avocado-%{python3_version} %{buildroot}%{_bindir}/avocado-3 +%{__mv} %{buildroot}%{_bindir}/avocado-rest-client %{buildroot}%{_bindir}/avocado-rest-client-%{python3_version} +%{__ln_s} avocado-rest-client-%{python3_version} %{buildroot}%{_bindir}/avocado-rest-client-3 +# configuration is held at /etc/avocado only and part of the +# python-avocado-common package +%{__rm} -rf %{buildroot}%{python3_sitelib}/avocado/etc +# ditto for libexec files +%{__rm} -rf %{buildroot}%{python3_sitelib}/avocado/libexec +%endif +%if %{with python2} +# unversioned executables must be the python2 version if shipping with python2 +%{__ln_s} avocado-%{python2_version} %{buildroot}%{_bindir}/avocado %{__ln_s} avocado-rest-client-%{python2_version} %{buildroot}%{_bindir}/avocado-rest-client +%else +%{__ln_s} avocado-%{python3_version} %{buildroot}%{_bindir}/avocado +%{__ln_s} avocado-rest-client-%{python3_version} %{buildroot}%{_bindir}/avocado-rest-client +%endif +pushd optional_plugins/html + %if %{with python2} + %py2_install + %endif + %if %{with python3} + %py3_install + %endif +popd +pushd optional_plugins/runner_remote + %if %{with python2} + %py2_install + %endif + %if %{with python3} + # no runner_remote plugin on Python 3 due to missing Fabric package + %endif +popd +pushd optional_plugins/runner_vm + %if %{with python2} + %py2_install + %endif + %if %{with python3} + # no runner_vm plugin on Python 3 due to missing Fabric package + %endif +popd +pushd optional_plugins/runner_docker + %if %{with python2} + %py2_install + %endif + %if %{with python3} + # no runner_docker plugin on Python 3 due to missing Fabric package + %endif +popd +pushd optional_plugins/resultsdb + %if %{with python2} + %py2_install + %endif + %if %{with python3} + # no resultsdb plugin on Python 3 due to missing resultsdb_api package + %endif +popd +pushd optional_plugins/varianter_yaml_to_mux + %if %{with python2} + %py2_install + %endif + %if %{with python3} + %py3_install + %endif +popd +pushd optional_plugins/loader_yaml + %if %{with python2} + %py2_install + %endif + %if %{with python3} + %py3_install + %endif +popd +pushd optional_plugins/golang + %if %{with python2} + %py2_install + %endif + %if %{with python3} + %py3_install + %endif +popd +pushd optional_plugins/varianter_pict + %if %{with python2} + %py2_install + %endif + %if %{with python3} + %py3_install + %endif +popd +pushd optional_plugins/result_upload + %if %{with python2} + %py2_install + %endif + %if %{with python3} + %py3_install + %endif +popd +pushd optional_plugins/glib + %if %{with python2} + %py2_install + %endif + %if %{with python3} + %py3_install + %endif +popd +# cleanup plugin test cruft +%if %{with python2} +%{__rm} -rf %{buildroot}%{python2_sitelib}/tests +%endif +%if %{with python3} +%{__rm} -rf %{buildroot}%{python3_sitelib}/tests +%endif +%{__mkdir} -p %{buildroot}%{_sysconfdir}/avocado +%{__cp} avocado/etc/avocado/avocado.conf %{buildroot}%{_sysconfdir}/avocado/avocado.conf +%{__cp} -r avocado/etc/avocado/conf.d %{buildroot}%{_sysconfdir}/avocado/conf.d +%{__cp} -r avocado/etc/avocado/scripts %{buildroot}%{_sysconfdir}/avocado/scripts +%{__cp} -r avocado/etc/avocado/sysinfo %{buildroot}%{_sysconfdir}/avocado/sysinfo +%{__mkdir} -p %{buildroot}%{_libexecdir}/avocado +%{__cp} avocado/libexec/avocado-bash-utils %{buildroot}%{_libexecdir}/avocado/avocado-bash-utils +%{__cp} avocado/libexec/avocado_debug %{buildroot}%{_libexecdir}/avocado/avocado_debug +%{__cp} avocado/libexec/avocado_error %{buildroot}%{_libexecdir}/avocado/avocado_error +%{__cp} avocado/libexec/avocado_info %{buildroot}%{_libexecdir}/avocado/avocado_info +%{__cp} avocado/libexec/avocado_warn %{buildroot}%{_libexecdir}/avocado/avocado_warn %{__mkdir_p} %{buildroot}%{_mandir}/man1 %{__install} -m 0644 man/avocado.1 %{buildroot}%{_mandir}/man1/avocado.1 %{__install} -m 0644 man/avocado-rest-client.1 %{buildroot}%{_mandir}/man1/avocado-rest-client.1 %{__install} -d -m 0755 %{buildroot}%{_sharedstatedir}/avocado/data -# relocate examples to documentation directory -%{__mkdir_p} %{buildroot}%{_docdir}/avocado -%{__mv} %{buildroot}%{_datadir}/avocado/tests %{buildroot}%{_docdir}/avocado/tests -%{__mv} %{buildroot}%{_datadir}/avocado/wrappers %{buildroot}%{_docdir}/avocado/wrappers +# place examples in documentation directory +%{__install} -d -m 0755 %{buildroot}%{_docdir}/avocado +%{__cp} -r examples/gdb-prerun-scripts %{buildroot}%{_docdir}/avocado/gdb-prerun-scripts +%{__cp} -r examples/plugins %{buildroot}%{_docdir}/avocado/plugins +%{__cp} -r examples/tests %{buildroot}%{_docdir}/avocado/tests +%{__cp} -r examples/varianter_pict %{buildroot}%{_docdir}/avocado/varianter_pict +%{__cp} -r examples/wrappers %{buildroot}%{_docdir}/avocado/wrappers +%{__cp} -r examples/yaml_to_mux %{buildroot}%{_docdir}/avocado/yaml_to_mux +%{__cp} -r examples/yaml_to_mux_loader %{buildroot}%{_docdir}/avocado/yaml_to_mux_loader find %{buildroot}%{_docdir}/avocado -type f -name '*.py' -exec %{__chmod} -c -x {} ';' %check %if 0%{?with_tests} + %if %{with python2} %{__python2} setup.py develop --user pushd optional_plugins/html %{__python2} setup.py develop --user @@ -333,18 +428,154 @@ find %{buildroot}%{_docdir}/avocado -type f -name '*.py' -exec %{__chmod} -c -x pushd optional_plugins/varianter_yaml_to_mux %{__python2} setup.py develop --user popd + pushd optional_plugins/loader_yaml + %{__python2} setup.py develop --user + popd + pushd optional_plugins/golang + %{__python2} setup.py develop --user + popd + pushd optional_plugins/varianter_pict + %{__python2} setup.py develop --user + popd + pushd optional_plugins/result_upload + %{__python2} setup.py develop --user + popd + pushd optional_plugins/glib + %{__python2} setup.py develop --user + popd # Package build environments have the least amount of resources # we have observed so far. Let's avoid tests that require too # much resources or are time sensitive. - # Also, use of unversioned python is deprecated, so force use of python2 as per - # https://fedoraproject.org/wiki/Changes/Avoid_usr_bin_python_in_RPM_Build - AVOCADO_CHECK_LEVEL=0 UNITTEST_AVOCADO_CMD="$HOME/.local/bin/avocado" %{__python2} selftests/run + LANG=en_US.UTF-8 AVOCADO_CHECK_LEVEL=0 UNITTEST_AVOCADO_CMD="$HOME/.local/bin/avocado" %{__python2} selftests/run + %endif + + %if %{with python3} + %{__python3} setup.py develop --user + pushd optional_plugins/html + %{__python3} setup.py develop --user + popd + pushd optional_plugins/runner_remote + # no runner_remote plugin on Python 3 due to missing Fabric package + popd + pushd optional_plugins/runner_vm + # no runner_vm plugin on Python 3 due to missing Fabric package + popd + pushd optional_plugins/runner_docker + # no runner_docker plugin on Python 3 due to missing Fabric package + popd + pushd optional_plugins/resultsdb + # no resultsdb plugin on Python 3 due to missing resultsdb_api package + popd + pushd optional_plugins/varianter_yaml_to_mux + %{__python3} setup.py develop --user + popd + pushd optional_plugins/loader_yaml + %{__python3} setup.py develop --user + popd + pushd optional_plugins/golang + %{__python3} setup.py develop --user + popd + pushd optional_plugins/varianter_pict + %{__python3} setup.py develop --user + popd + pushd optional_plugins/result_upload + %{__python3} setup.py develop --user + popd + pushd optional_plugins/glib + %{__python3} setup.py develop --user + popd + # Package build environments have the least amount of resources + # we have observed so far. Let's avoid tests that require too + # much resources or are time sensitive. + LANG=en_US.UTF-8 AVOCADO_CHECK_LEVEL=0 UNITTEST_AVOCADO_CMD="$HOME/.local/bin/avocado" %{__python3} selftests/run + %endif %endif +%if %{with python2} +%package -n python2-%{pkgname} +Summary: %{summary} +License: GPLv2 and MIT +%{?python_provide:%python_provide python2-%{pkgname}} +Requires: python-%{pkgname}-common == %{version}-%{release} +Requires: gdb +Requires: gdb-gdbserver +Requires: procps-ng +Requires: pyliblzma +Requires: python2 +Requires: python2-requests +Requires: python2-setuptools +Requires: python2-six +%if 0%{?fedora} || 0%{?rhel} > 7 +Requires: python2-stevedore +%else +Requires: python-stevedore +%endif + +%description -n python2-%{pkgname} +Avocado is a set of tools and libraries (what people call +these days a framework) to perform automated testing. + %files -n python2-%{pkgname} %license LICENSE %doc README.rst +%{python2_sitelib}/avocado/ +%{python2_sitelib}/avocado_framework-%{version}-py%{python2_version}.egg-info +%{_bindir}/avocado-%{python2_version} +%{_bindir}/avocado-2 +%{_bindir}/avocado +%{_bindir}/avocado-rest-client-%{python2_version} +%{_bindir}/avocado-rest-client-2 +%{_bindir}/avocado-rest-client +%endif + +%if %{with python3} +%package -n python3-%{pkgname} +Summary: %{summary} +License: GPLv2 and MIT +%{?python_provide:%python_provide python3-%{pkgname}} +Requires: python-%{pkgname}-common == %{version}-%{release} +Requires: gdb +Requires: gdb-gdbserver +Requires: procps-ng +Requires: pyliblzma +Requires: python3 +Requires: python3-requests +Requires: python3-setuptools +Requires: python3-six +Requires: python3-stevedore + +%description -n python3-%{pkgname} +Avocado is a set of tools and libraries (what people call +these days a framework) to perform automated testing. + +%files -n python3-%{pkgname} +%license LICENSE +%doc README.rst +%{python3_sitelib}/avocado/ +%{python3_sitelib}/avocado_framework-%{version}-py%{python3_version}.egg-info +%{_bindir}/avocado-%{python3_version} +%{_bindir}/avocado-3 +%{_bindir}/avocado-rest-client-%{python3_version} +%{_bindir}/avocado-rest-client-3 +%if %{without python2} +%{_bindir}/avocado +%{_bindir}/avocado-rest-client +%endif +%endif + + +%package -n python-%{pkgname}-common +Summary: Avocado common files + +%description -n python-%{pkgname}-common +Common files (such as configuration) for the Avocado Testing Framework. + +%files -n python-%{pkgname}-common +%{_mandir}/man1/avocado.1.gz +%{_mandir}/man1/avocado-rest-client.1.gz +%dir %{_docdir}/avocado +%dir %{_sharedstatedir}/avocado %dir %{_sysconfdir}/avocado %dir %{_sysconfdir}/avocado/conf.d %dir %{_sysconfdir}/avocado/sysinfo @@ -354,26 +585,378 @@ find %{buildroot}%{_docdir}/avocado -type f -name '*.py' -exec %{__chmod} -c -x %dir %{_sysconfdir}/avocado/scripts/job/post.d %config(noreplace) %{_sysconfdir}/avocado/avocado.conf %config(noreplace) %{_sysconfdir}/avocado/conf.d/gdb.conf +%config(noreplace) %{_sysconfdir}/avocado/conf.d/jobscripts.conf %config(noreplace) %{_sysconfdir}/avocado/sysinfo/commands %config(noreplace) %{_sysconfdir}/avocado/sysinfo/files %config(noreplace) %{_sysconfdir}/avocado/sysinfo/profilers %{_sysconfdir}/avocado/conf.d/README %{_sysconfdir}/avocado/scripts/job/pre.d/README %{_sysconfdir}/avocado/scripts/job/post.d/README -%{python2_sitelib}/avocado/ -%{python2_sitelib}/avocado_framework-%{version}-py%{python2_version}.egg-info -%{_bindir}/avocado-%{python2_version} -%{_bindir}/avocado-2 -%{_bindir}/avocado -%{_bindir}/avocado-rest-client-%{python2_version} -%{_bindir}/avocado-rest-client-2 -%{_bindir}/avocado-rest-client -%{_mandir}/man1/avocado.1.gz -%{_mandir}/man1/avocado-rest-client.1.gz -%dir %{_sharedstatedir}/avocado + + +%if %{with python2} +%package -n python2-%{pkgname}-plugins-output-html +Summary: Avocado HTML report plugin +%{?python_provide:%python_provide python2-%{pkgname}-plugins-output-html} +Requires: python2-%{pkgname} == %{version}-%{release} +%if 0%{?fedora} > 27 || 0%{?rhel} > 7 +Requires: python2-pystache +%else +Requires: pystache +%endif + +%description -n python2-%{pkgname}-plugins-output-html +Adds to avocado the ability to generate an HTML report at every job results +directory. It also gives the user the ability to write a report on an +arbitrary filesystem location. + +%files -n python2-%{pkgname}-plugins-output-html +%{python2_sitelib}/avocado_result_html/ +%{python2_sitelib}/avocado_framework_plugin_result_html-%{version}-py%{python2_version}.egg-info +%endif + +%if %{with python3} +%package -n python3-%{pkgname}-plugins-output-html +Summary: Avocado HTML report plugin +%{?python_provide:%python_provide python3-%{pkgname}-plugins-output-html} +Requires: python3-%{pkgname} == %{version}-%{release} +Requires: python3-pystache + +%description -n python3-%{pkgname}-plugins-output-html +Adds to avocado the ability to generate an HTML report at every job results +directory. It also gives the user the ability to write a report on an +arbitrary filesystem location. + +%files -n python3-%{pkgname}-plugins-output-html +%{python3_sitelib}/avocado_result_html/ +%{python3_sitelib}/avocado_framework_plugin_result_html-%{version}-py%{python3_version}.egg-info +%endif + + +%if %{with python2} +%package -n python2-%{pkgname}-plugins-runner-remote +Summary: Avocado Runner for Remote Execution +%{?python_provide:%python_provide python2-%{pkgname}-plugins-runner-remote} +Requires: python2-%{pkgname} == %{version}-%{release} +%if 0%{?fedora} >= 29 +Requires: python2-fabric3 +%else +Requires: fabric +%endif + +%description -n python2-%{pkgname}-plugins-runner-remote +Allows Avocado to run jobs on a remote machine, by means of an SSH +connection. Avocado must be previously installed on the remote machine. + +%files -n python2-%{pkgname}-plugins-runner-remote +%{python2_sitelib}/avocado_runner_remote/ +%{python2_sitelib}/avocado_framework_plugin_runner_remote-%{version}-py%{python2_version}.egg-info +%endif + +%if %{with python3} +# no python3-%%{pkgname}-plugins-runner-remote package due to +# no runner_remote plugin on Python 3 due to missing Fabric package +%endif + + +%if %{with python2} +%package -n python2-%{pkgname}-plugins-runner-vm +Summary: Avocado Runner for libvirt VM Execution +%{?python_provide:%python_provide python2-%{pkgname}-plugins-runner-vm} +Requires: python2-%{pkgname} == %{version}-%{release} +Requires: python2-%{pkgname}-plugins-runner-remote == %{version}-%{release} +%if 0%{?fedora} >= 27 || 0%{?rhel} >= 7 +Requires: python2-libvirt +%else +Requires: libvirt-python +%endif + +%description -n python2-%{pkgname}-plugins-runner-vm +Allows Avocado to run jobs on a libvirt based VM, by means of +interaction with a libvirt daemon and an SSH connection to the VM +itself. Avocado must be previously installed on the VM. + +%files -n python2-%{pkgname}-plugins-runner-vm +%{python2_sitelib}/avocado_runner_vm/ +%{python2_sitelib}/avocado_framework_plugin_runner_vm-%{version}-py%{python2_version}.egg-info +%endif + +%if %{with python3} +# no python3-%%{pkgname}-plugins-runner-vm package due to +# no runner_vm plugin on Python 3 due to missing Fabric package +%endif + + +%if %{with python2} +%package -n python2-%{pkgname}-plugins-runner-docker +Summary: Avocado Runner for Execution on Docker Containers +%{?python_provide:%python_provide python2-%{pkgname}-plugins-runner-docker} +Requires: python2-%{pkgname} == %{version}-%{release} +Requires: python2-%{pkgname}-plugins-runner-remote == %{version}-%{release} +Requires: python2-aexpect + +%description -n python2-%{pkgname}-plugins-runner-docker +Allows Avocado to run jobs on a Docker container by interacting with a +Docker daemon and attaching to the container itself. Avocado must +be previously installed on the container. + +%files -n python2-%{pkgname}-plugins-runner-docker +%{python2_sitelib}/avocado_runner_docker/ +%{python2_sitelib}/avocado_framework_plugin_runner_docker-%{version}-py%{python2_version}.egg-info +%endif + +%if %{with python3} +# no python3-%%{pkgname}-plugins-runner-docker package due to +# no runner_docker plugin on Python 3 due to missing Fabric package +%endif + + +%if %{with python2} +%package -n python2-%{pkgname}-plugins-resultsdb +Summary: Avocado plugin to propagate job results to ResultsDB +%{?python_provide:%python_provide python2-%{pkgname}-plugins-resultsdb} +Requires: python2-%{pkgname} == %{version}-%{release} +Requires: python2-resultsdb_api + +%description -n python2-%{pkgname}-plugins-resultsdb +Allows Avocado to send job results directly to a ResultsDB +server. + +%files -n python2-%{pkgname}-plugins-resultsdb +%{python2_sitelib}/avocado_resultsdb/ +%{python2_sitelib}/avocado_framework_plugin_resultsdb-%{version}-py%{python2_version}.egg-info +%config(noreplace) %{_sysconfdir}/avocado/conf.d/resultsdb.conf +%endif + +%if %{with python3} +# no python3-%%{pkgname}-plugins-resultsdb package due to +# no resultsdb plugin on Python 3 due to missing resultsdb_api package +%endif + + +%if %{with python2} +%package -n python2-%{pkgname}-plugins-varianter-yaml-to-mux +Summary: Avocado plugin to generate variants out of yaml files +%{?python_provide:%python_provide python2-%{pkgname}-plugins-varianter-yaml-to-mux} +Requires: python2-%{pkgname} == %{version}-%{release} +Requires: python2-yaml + +%description -n python2-%{pkgname}-plugins-varianter-yaml-to-mux +Can be used to produce multiple test variants with test parameters +defined in a yaml file(s). + +%files -n python2-%{pkgname}-plugins-varianter-yaml-to-mux +%{python2_sitelib}/avocado_varianter_yaml_to_mux/ +%{python2_sitelib}/avocado_framework_plugin_varianter_yaml_to_mux-%{version}-py%{python2_version}.egg-info +%endif + +%if %{with python3} +%package -n python3-%{pkgname}-plugins-varianter-yaml-to-mux +Summary: Avocado plugin to generate variants out of yaml files +%{?python_provide:%python_provide python3-%{pkgname}-plugins-varianter-yaml-to-mux} +Requires: python3-%{pkgname} == %{version}-%{release} +Requires: python3-yaml + +%description -n python3-%{pkgname}-plugins-varianter-yaml-to-mux +Can be used to produce multiple test variants with test parameters +defined in a yaml file(s). + +%files -n python3-%{pkgname}-plugins-varianter-yaml-to-mux +%{python3_sitelib}/avocado_varianter_yaml_to_mux/ +%{python3_sitelib}/avocado_framework_plugin_varianter_yaml_to_mux-%{version}-py%{python3_version}.egg-info +%endif + + +%if %{with python2} +%package -n python2-%{pkgname}-plugins-loader-yaml +Summary: Avocado plugin that loads tests from YAML files +%{?python_provide:%python_provide python2-%{pkgname}-plugins-loader-yaml} +Requires: python2-%{pkgname}-plugins-varianter-yaml-to-mux == %{version}-%{release} + +%description -n python2-%{pkgname}-plugins-loader-yaml +Can be used to produce a test suite from definitions in a YAML file, +similar to the one used in the yaml_to_mux varianter plugin. + +%files -n python2-%{pkgname}-plugins-loader-yaml +%{python2_sitelib}/avocado_loader_yaml/ +%{python2_sitelib}/avocado_framework_plugin_loader_yaml-%{version}-py%{python2_version}.egg-info +%endif + +%if %{with python3} +%package -n python3-%{pkgname}-plugins-loader-yaml +Summary: Avocado plugin that loads tests from YAML files +%{?python_provide:%python_provide python3-%{pkgname}-plugins-loader-yaml} +Requires: python3-%{pkgname}-plugins-varianter-yaml-to-mux == %{version}-%{release} + +%description -n python3-%{pkgname}-plugins-loader-yaml +Can be used to produce a test suite from definitions in a YAML file, +similar to the one used in the yaml_to_mux varianter plugin. + +%files -n python3-%{pkgname}-plugins-loader-yaml +%{python3_sitelib}/avocado_loader_yaml/ +%{python3_sitelib}/avocado_framework_plugin_loader_yaml-%{version}-py%{python3_version}.egg-info +%endif + + +%if %{with python2} +%package -n python2-%{pkgname}-plugins-golang +Summary: Avocado plugin for execution of golang tests +%{?python_provide:%python_provide python2-%{pkgname}-plugins-golang} +Requires: python2-%{pkgname} == %{version}-%{release} +Requires: golang + +%description -n python2-%{pkgname}-plugins-golang +Allows Avocado to list golang tests, and if golang is installed, +also run them. + +%files -n python2-%{pkgname}-plugins-golang +%{python2_sitelib}/avocado_golang/ +%{python2_sitelib}/avocado_framework_plugin_golang-%{version}-py%{python2_version}.egg-info +%endif + +%if %{with python3} +%package -n python3-%{pkgname}-plugins-golang +Summary: Avocado plugin for execution of golang tests +%{?python_provide:%python_provide python3-%{pkgname}-plugins-golang} +Requires: python3-%{pkgname} == %{version}-%{release} +Requires: golang + +%description -n python3-%{pkgname}-plugins-golang +Allows Avocado to list golang tests, and if golang is installed, +also run them. + +%files -n python3-%{pkgname}-plugins-golang +%{python3_sitelib}/avocado_golang/ +%{python3_sitelib}/avocado_framework_plugin_golang-%{version}-py%{python3_version}.egg-info +%endif + + +%if %{with python2} +%package -n python2-%{pkgname}-plugins-varianter-pict +Summary: Avocado plugin to generate variants with combinatorial capabilities by PICT +%{?python_provide:%python_provide python2-%{pkgname}-plugins-varianter-pict} +Requires: python2-%{pkgname} == %{version}-%{release} + +%description -n python2-%{pkgname}-plugins-varianter-pict +This plugin uses a third-party tool to provide variants created by +Pair-Wise algorithms, also known as Combinatorial Independent Testing. + +%files -n python2-%{pkgname}-plugins-varianter-pict +%{python2_sitelib}/avocado_varianter_pict/ +%{python2_sitelib}/avocado_framework_plugin_varianter_pict-%{version}-py%{python2_version}.egg-info +%endif + +%if %{with python3} +%package -n python3-%{pkgname}-plugins-varianter-pict +Summary: Avocado plugin to generate variants with combinatorial capabilities by PICT +%{?python_provide:%python_provide python3-%{pkgname}-plugins-varianter-pict} +Requires: python3-%{pkgname} == %{version}-%{release} + +%description -n python3-%{pkgname}-plugins-varianter-pict +This plugin uses a third-party tool to provide variants created by +Pair-Wise algorithms, also known as Combinatorial Independent Testing. + +%files -n python3-%{pkgname}-plugins-varianter-pict +%{python3_sitelib}/avocado_varianter_pict/ +%{python3_sitelib}/avocado_framework_plugin_varianter_pict-%{version}-py%{python3_version}.egg-info +%endif + + +%if %{with python2} +%package -n python2-%{pkgname}-plugins-result-upload +Summary: Avocado plugin propagate job results to a remote host +%{?python_provide:%python_provide python2-%{pkgname}-plugins-result-upload} +Requires: python2-%{pkgname} == %{version}-%{release} + +%description -n python2-%{pkgname}-plugins-result-upload +This optional plugin is intended to upload the Avocado Job results to +a dedicated sever. + +%files -n python2-%{pkgname}-plugins-result-upload +%{python2_sitelib}/avocado_result_upload/ +%{python2_sitelib}/avocado_framework_plugin_result_upload-%{version}-py%{python2_version}.egg-info +%config(noreplace) %{_sysconfdir}/avocado/conf.d/result_upload.conf +%endif + +%if %{with python3} +%package -n python3-%{pkgname}-plugins-result-upload +Summary: Avocado plugin propagate job results to a remote host +%{?python_provide:%python_provide python3-%{pkgname}-plugins-result-upload} +Requires: python3-%{pkgname} == %{version}-%{release} + +%description -n python3-%{pkgname}-plugins-result-upload +This optional plugin is intended to upload the Avocado Job results to +a dedicated sever. + +%files -n python3-%{pkgname}-plugins-result-upload +%{python3_sitelib}/avocado_result_upload/ +%{python3_sitelib}/avocado_framework_plugin_result_upload-%{version}-py%{python3_version}.egg-info +%config(noreplace) %{_sysconfdir}/avocado/conf.d/result_upload.conf +%endif + + +%if %{with python2} +%package -n python2-%{pkgname}-plugins-glib +Summary: Avocado plugin for execution of GLib Test Framework tests +%{?python_provide:%python_provide python2-%{pkgname}-plugins-glib} +Requires: python2-%{pkgname} == %{version}-%{release} + +%description -n python2-%{pkgname}-plugins-glib +This optional plugin is intended to list and run tests written in the +GLib Test Framework. + +%files -n python2-%{pkgname}-plugins-glib +%{python2_sitelib}/avocado_glib/ +%{python2_sitelib}/avocado_framework_plugin_glib-%{version}-py%{python2_version}.egg-info +%endif + +%if %{with python3} +%package -n python3-%{pkgname}-plugins-glib +Summary: Avocado plugin for execution of GLib Test Framework tests +%{?python_provide:%python_provide python3-%{pkgname}-plugins-glib} +Requires: python3-%{pkgname} == %{version}-%{release} + +%description -n python3-%{pkgname}-plugins-glib +This optional plugin is intended to list and run tests written in the +GLib Test Framework. + +%files -n python3-%{pkgname}-plugins-glib +%{python3_sitelib}/avocado_glib/ +%{python3_sitelib}/avocado_framework_plugin_glib-%{version}-py%{python3_version}.egg-info +%endif + + +%package -n python-%{pkgname}-examples +Summary: Avocado Test Framework Example Tests +License: GPLv2 +# documentation does not require main package, but needs to be in lock-step if present +Conflicts: python-%{pkgname} < %{version}-%{release}, python-%{pkgname} > %{version}-%{release} + +%description -n python-%{pkgname}-examples +The set of example tests present in the upstream tree of the Avocado framework. +Some of them are used as functional tests of the framework, others serve as +examples of how to write tests on your own. + +%files -n python-%{pkgname}-examples %dir %{_docdir}/avocado -%{_docdir}/avocado/avocado.rst -%{_docdir}/avocado/avocado-rest-client.rst +%{_docdir}/avocado/gdb-prerun-scripts +%{_docdir}/avocado/plugins +%{_docdir}/avocado/tests +%{_docdir}/avocado/varianter_pict +%{_docdir}/avocado/wrappers +%{_docdir}/avocado/yaml_to_mux +%{_docdir}/avocado/yaml_to_mux_loader + + +%package -n python-%{pkgname}-bash +Summary: Avocado Test Framework Bash Utilities +Requires: python-%{pkgname} == %{version}-%{release} + +%description -n python-%{pkgname}-bash +A small set of utilities to interact with Avocado from the Bourne +Again Shell code (and possibly other similar shells). + +%files -n python-%{pkgname}-bash %dir %{_libexecdir}/avocado %{_libexecdir}/avocado/avocado-bash-utils %{_libexecdir}/avocado/avocado_debug @@ -382,43 +965,12 @@ find %{buildroot}%{_docdir}/avocado -type f -name '*.py' -exec %{__chmod} -c -x %{_libexecdir}/avocado/avocado_warn -%files -n python2-%{pkgname}-plugins-output-html -%{python2_sitelib}/avocado_result_html/ -%{python2_sitelib}/avocado_framework_plugin_result_html-%{version}-py%{python2_version}.egg-info - - -%files -n python2-%{pkgname}-plugins-runner-remote -%{python2_sitelib}/avocado_runner_remote/ -%{python2_sitelib}/avocado_framework_plugin_runner_remote-%{version}-py%{python2_version}.egg-info - - -%files -n python2-%{pkgname}-plugins-runner-vm -%{python2_sitelib}/avocado_runner_vm/ -%{python2_sitelib}/avocado_framework_plugin_runner_vm-%{version}-py%{python2_version}.egg-info - - -%files -n python2-%{pkgname}-plugins-runner-docker -%{python2_sitelib}/avocado_runner_docker/ -%{python2_sitelib}/avocado_framework_plugin_runner_docker-%{version}-py%{python2_version}.egg-info - - -%files -n python2-%{pkgname}-plugins-resultsdb -%{python2_sitelib}/avocado_resultsdb/ -%{python2_sitelib}/avocado_framework_plugin_resultsdb-%{version}-py%{python2_version}.egg-info - - -%files -n python2-%{pkgname}-plugins-varianter-yaml-to-mux -%{python2_sitelib}/avocado_varianter_yaml_to_mux/ -%{python2_sitelib}/avocado_framework_plugin_varianter_yaml_to_mux-%{version}-py%{python2_version}.egg-info - - -%files -n python-%{pkgname}-examples -%dir %{_docdir}/avocado -%{_docdir}/avocado/tests -%{_docdir}/avocado/wrappers - - %changelog +* Thu May 17 2018 Merlin Mathesius - 61.0-1 +- Sync with upstream release 61.0. +- Packaging updates for Python 3. +- Reorganize SPEC file. + * Mon Apr 9 2018 Cleber Rosa - 52.1-2 - Added Fedora CI tests diff --git a/sources b/sources index 54aeac2..a5858e8 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (avocado-52.1.tar.gz) = fb97ea6056700f57f34e8e4ce0c27774c386d646aaffc7da2abb8d0a797cff4448934789ffaf81da1592fceae1bb464da2b5dde000730c4f417b03552a432c6c +SHA512 (avocado-61.0.tar.gz) = f1d5c73ec718751e615f63fb1bc0089b3351432395705d83450c88f5d429009687de3f145b90f018d34eb6abbe1ddb953b622e1fee450264a046338cc8d9b217