Hello community,

here is the log from the commit of package python-ara for openSUSE:Factory 
checked in at 2020-11-12 22:46:00
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-ara (Old)
 and      /work/SRC/openSUSE:Factory/.python-ara.new.24930 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-ara"

Thu Nov 12 22:46:00 2020 rev:10 rq:847969 version:1.5.3

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-ara/python-ara.changes    2020-09-30 
19:54:39.592799111 +0200
+++ /work/SRC/openSUSE:Factory/.python-ara.new.24930/python-ara.changes 
2020-11-12 22:46:02.942558759 +0100
@@ -1,0 +2,12 @@
+Thu Nov 12 03:36:12 UTC 2020 - Steve Kowalik <[email protected]>
+
+- Update to 1.5.3:
+  * Significant performance improvement by running non-blocking API calls in 
threads
+  * Handler tasks are now also recorded in addition to regular tasks
+  * API
+    + Add support for searching handler tasks (ex: /api/v1/tasks?handler=true)
+  * UI
+    + Hosts in the playbook report are now sorted alphabetically by hostname
+    + Added a column to display the number of tasks in the playbook summary 
+
+-------------------------------------------------------------------

Old:
----
  ara-1.5.1.tar.gz

New:
----
  ara-1.5.3.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-ara.spec ++++++
--- /var/tmp/diff_new_pack.qxgTDJ/_old  2020-11-12 22:46:03.646559493 +0100
+++ /var/tmp/diff_new_pack.qxgTDJ/_new  2020-11-12 22:46:03.650559498 +0100
@@ -27,7 +27,7 @@
 %define skip_python2 1
 %{?!python_module:%define python_module() python-%{**} python3-%{**}}
 Name:           python-ara
-Version:        1.5.1
+Version:        1.5.3
 Release:        0
 Summary:        ARA Records Ansible
 License:        GPL-3.0-or-later

++++++ ara-1.5.1.tar.gz -> ara-1.5.3.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ara-1.5.1/PKG-INFO new/ara-1.5.3/PKG-INFO
--- old/ara-1.5.1/PKG-INFO      2020-09-23 20:26:52.000000000 +0200
+++ new/ara-1.5.3/PKG-INFO      2020-10-24 00:52:20.000000000 +0200
@@ -1,6 +1,6 @@
 Metadata-Version: 2.1
 Name: ara
-Version: 1.5.1
+Version: 1.5.3
 Summary: ARA Records Ansible
 Home-page: https://github.com/ansible-community/ara
 Author: OpenStack Community
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ara-1.5.1/ara/api/filters.py 
new/ara-1.5.3/ara/api/filters.py
--- old/ara-1.5.1/ara/api/filters.py    2020-09-23 20:25:58.000000000 +0200
+++ new/ara-1.5.3/ara/api/filters.py    2020-10-24 00:51:11.000000000 +0200
@@ -107,6 +107,7 @@
     name = django_filters.CharFilter(field_name="name", 
lookup_expr="icontains")
     action = django_filters.CharFilter(field_name="action", 
lookup_expr="iexact")
     path = django_filters.CharFilter(field_name="file__path", 
lookup_expr="icontains")
+    handler = django_filters.BooleanFilter(field_name="handler", 
lookup_expr="exact")
 
     # fmt: off
     order = django_filters.OrderingFilter(
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ara-1.5.1/ara/clients/http.py 
new/ara-1.5.3/ara/clients/http.py
--- old/ara-1.5.1/ara/clients/http.py   2020-09-23 20:25:58.000000000 +0200
+++ new/ara-1.5.3/ara/clients/http.py   2020-10-24 00:51:11.000000000 +0200
@@ -36,7 +36,7 @@
 
         self.endpoint = endpoint.rstrip("/")
         self.auth = auth
-        self.timeout = timeout
+        self.timeout = int(timeout)
         self.verify = verify
         self.headers = {
             "User-Agent": "ara-http-client_%s" % CLIENT_VERSION,
@@ -80,7 +80,7 @@
         self.log = logging.getLogger(__name__)
         self.endpoint = endpoint
         self.auth = auth
-        self.timeout = timeout
+        self.timeout = int(timeout)
         self.verify = verify
         self.client = HttpClient(endpoint=self.endpoint, timeout=self.timeout, 
auth=self.auth, verify=self.verify)
         active_client._instance = weakref.ref(self)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ara-1.5.1/ara/plugins/callback/ara_default.py 
new/ara-1.5.3/ara/plugins/callback/ara_default.py
--- old/ara-1.5.1/ara/plugins/callback/ara_default.py   2020-09-23 
20:25:58.000000000 +0200
+++ new/ara-1.5.3/ara/plugins/callback/ara_default.py   2020-10-24 
00:51:11.000000000 +0200
@@ -21,6 +21,7 @@
 import json
 import logging
 import os
+from concurrent.futures import ThreadPoolExecutor
 
 from ansible import __version__ as ansible_version
 from ansible.parsing.ajson import AnsibleJSONEncoder
@@ -174,7 +175,13 @@
     def __init__(self):
         super(CallbackModule, self).__init__()
         self.log = logging.getLogger("ara.plugins.callback.default")
+        # These are configured in self.set_options
         self.client = None
+        self.thread_count = None
+        self.global_threads = None
+        # Need individual threads for tasks to ensure all results are saved 
before moving on to next task
+        self.task_threads = None
+
         self.ignored_facts = []
         self.ignored_arguments = []
         self.ignored_files = []
@@ -213,6 +220,14 @@
             verify=False if insecure else True,
         )
 
+        # TODO: Consider un-hardcoding this and plumbing pool_maxsize to 
requests.adapters.HTTPAdapter.
+        #       In the meantime default to 4 so we don't go above 
requests.adapters.DEFAULT_POOLSIZE.
+        #       Otherwise we can hit "urllib3.connectionpool: Connection pool 
is full"
+        # TODO: Using >= 2 threads with the offline client can result in 
execution getting locked up
+        self.thread_count = 1 if client == "offline" else 4
+        self.global_threads = ThreadPoolExecutor(max_workers=self.thread_count)
+        self.log.debug("working with %s thread(s)" % self.thread_count)
+
     def v2_playbook_on_start(self, playbook):
         self.log.debug("v2_playbook_on_start")
 
@@ -260,7 +275,7 @@
         )
 
         # Record the playbook file
-        self._get_or_create_file(path, content)
+        self.global_threads.submit(self._get_or_create_file, path, content)
 
         return self.playbook
 
@@ -290,7 +305,7 @@
 
         # Record all the files involved in the play
         for path in play._loader._FILE_CACHE.keys():
-            self._get_or_create_file(path)
+            self.global_threads.submit(self._get_or_create_file, path)
 
         # Create the play
         self.play = self.client.post(
@@ -304,9 +319,15 @@
 
         return self.play
 
+    def v2_playbook_on_handler_task_start(self, task):
+        self.log.debug("v2_playbook_on_handler_task_start")
+        # TODO: Why doesn't `v2_playbook_on_handler_task_start` have 
is_conditional ?
+        self.v2_playbook_on_task_start(task, False, handler=True)
+
     def v2_playbook_on_task_start(self, task, is_conditional, handler=False):
         self.log.debug("v2_playbook_on_task_start")
         self._end_task()
+        self.task_threads = ThreadPoolExecutor(max_workers=self.thread_count)
 
         pathspec = task.get_path()
         if pathspec:
@@ -341,16 +362,16 @@
         self.result_started[host.get_name()] = 
datetime.datetime.now().isoformat()
 
     def v2_runner_on_ok(self, result, **kwargs):
-        self._load_result(result, "ok", **kwargs)
+        self.task_threads.submit(self._load_result, result, "ok", **kwargs)
 
     def v2_runner_on_unreachable(self, result, **kwargs):
-        self._load_result(result, "unreachable", **kwargs)
+        self.task_threads.submit(self._load_result, result, "unreachable", 
**kwargs)
 
     def v2_runner_on_failed(self, result, **kwargs):
-        self._load_result(result, "failed", **kwargs)
+        self.task_threads.submit(self._load_result, result, "failed", **kwargs)
 
     def v2_runner_on_skipped(self, result, **kwargs):
-        self._load_result(result, "skipped", **kwargs)
+        self.task_threads.submit(self._load_result, result, "skipped", 
**kwargs)
 
     def v2_playbook_on_stats(self, stats):
         self.log.debug("v2_playbook_on_stats")
@@ -361,15 +382,25 @@
 
     def _end_task(self):
         if self.task is not None:
-            self.client.patch(
-                "/api/v1/tasks/%s" % self.task["id"], status="completed", 
ended=datetime.datetime.now().isoformat()
+            self.task_threads.submit(
+                self.client.patch,
+                "/api/v1/tasks/%s" % self.task["id"],
+                status="completed",
+                ended=datetime.datetime.now().isoformat(),
             )
+            # Flush threads before moving on to next task to make sure all 
results are saved
+            self.log.debug("waiting for task threads...")
+            self.task_threads.shutdown(wait=True)
+            self.task_threads = None
             self.task = None
 
     def _end_play(self):
         if self.play is not None:
-            self.client.patch(
-                "/api/v1/plays/%s" % self.play["id"], status="completed", 
ended=datetime.datetime.now().isoformat()
+            self.global_threads.submit(
+                self.client.patch,
+                "/api/v1/plays/%s" % self.play["id"],
+                status="completed",
+                ended=datetime.datetime.now().isoformat(),
             )
             self.play = None
 
@@ -380,9 +411,14 @@
         else:
             status = "completed"
 
-        self.playbook = self.client.patch(
-            "/api/v1/playbooks/%s" % self.playbook["id"], status=status, 
ended=datetime.datetime.now().isoformat()
+        self.global_threads.submit(
+            self.client.patch,
+            "/api/v1/playbooks/%s" % self.playbook["id"],
+            status=status,
+            ended=datetime.datetime.now().isoformat(),
         )
+        self.log.debug("waiting for global threads...")
+        self.global_threads.shutdown(wait=True)
 
     def _set_playbook_name(self, name):
         if self.playbook["name"] != name:
@@ -477,7 +513,9 @@
         for hostname in hosts:
             host = self._get_or_create_host(hostname)
             host_stats = stats.summarize(hostname)
-            self.client.patch(
+
+            self.global_threads.submit(
+                self.client.patch,
                 "/api/v1/hosts/%s" % host["id"],
                 changed=host_stats["changed"],
                 unreachable=host_stats["unreachable"],
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ara-1.5.1/ara/ui/management/commands/generate.py 
new/ara-1.5.3/ara/ui/management/commands/generate.py
--- old/ara-1.5.1/ara/ui/management/commands/generate.py        2020-09-23 
20:25:58.000000000 +0200
+++ new/ara-1.5.3/ara/ui/management/commands/generate.py        2020-10-24 
00:51:11.000000000 +0200
@@ -61,7 +61,7 @@
         for pb in query:
             playbook = serializers.DetailedPlaybookSerializer(pb)
             hosts = serializers.ListHostSerializer(
-                
models.Host.objects.filter(playbook=playbook.data["id"]).all(), many=True
+                
models.Host.objects.filter(playbook=playbook.data["id"]).order_by("name").all(),
 many=True
             )
             files = serializers.ListFileSerializer(
                 
models.File.objects.filter(playbook=playbook.data["id"]).all(), many=True
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ara-1.5.1/ara/ui/templates/index.html 
new/ara-1.5.3/ara/ui/templates/index.html
--- old/ara-1.5.1/ara/ui/templates/index.html   2020-09-23 20:25:58.000000000 
+0200
+++ new/ara-1.5.3/ara/ui/templates/index.html   2020-10-24 00:51:11.000000000 
+0200
@@ -106,6 +106,7 @@
                 <th role="columnheader" scope="col">Labels</th>
                 <th role="columnheader" scope="col" 
class="pf-m-fit-content">Hosts</th>
                 <th role="columnheader" scope="col" 
class="pf-m-fit-content">Plays</th>
+                <th role="columnheader" scope="col" 
class="pf-m-fit-content">Tasks</th>
                 <th role="columnheader" scope="col" 
class="pf-m-fit-content">Results</th>
                 <th role="columnheader" scope="col" 
class="pf-m-fit-content">Files</th>
                 <th role="columnheader" scope="col" 
class="pf-m-fit-content">Records</th>
@@ -173,6 +174,9 @@
                 <td role="cell" data-label="Plays" class="pf-m-fit-content">
                     <a href="{% if page != "index" %}../{% endif 
%}playbooks/{{ playbook.id }}.html#plays">{{ playbook.items.plays }}</a>
                 </td>
+                <td role="cell" data-label="Tasks" class="pf-m-fit-content">
+                    <a href="{% if page != "index" %}../{% endif 
%}playbooks/{{ playbook.id }}.html#results">{{ playbook.items.tasks }}</a>
+                </td>
                 <td role="cell" data-label="Results" class="pf-m-fit-content">
                     <a href="{% if page != "index" %}../{% endif 
%}playbooks/{{ playbook.id }}.html#results">{{ playbook.items.results }}</a>
                 </td>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/ara-1.5.1/ara/ui/templates/partials/playbook_card.html 
new/ara-1.5.3/ara/ui/templates/partials/playbook_card.html
--- old/ara-1.5.1/ara/ui/templates/partials/playbook_card.html  2020-09-23 
20:25:58.000000000 +0200
+++ new/ara-1.5.3/ara/ui/templates/partials/playbook_card.html  2020-10-24 
00:51:11.000000000 +0200
@@ -55,6 +55,11 @@
                     </div>
                     <div class="pf-c-data-list__cell pf-m-flex-1">
                         <div style="padding-top:1em;">
+                            <a href="{% if page != "index" %}../{% endif 
%}playbooks/{{ playbook.id }}.html#results">{{ playbook.items.tasks }} Tasks</a>
+                        </div>
+                    </div>
+                    <div class="pf-c-data-list__cell pf-m-flex-1">
+                        <div style="padding-top:1em;">
                             <a href="{% if page != "index" %}../{% endif 
%}playbooks/{{ playbook.id }}.html#results">{{ playbook.items.results }} 
results</a>
                         </div>
                     </div>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ara-1.5.1/ara/ui/views.py 
new/ara-1.5.3/ara/ui/views.py
--- old/ara-1.5.1/ara/ui/views.py       2020-09-23 20:25:58.000000000 +0200
+++ new/ara-1.5.3/ara/ui/views.py       2020-10-24 00:51:11.000000000 +0200
@@ -71,7 +71,7 @@
     def get(self, request, *args, **kwargs):
         playbook = serializers.DetailedPlaybookSerializer(self.get_object())
         hosts = serializers.ListHostSerializer(
-            models.Host.objects.filter(playbook=playbook.data["id"]).all(), 
many=True
+            
models.Host.objects.filter(playbook=playbook.data["id"]).order_by("name").all(),
 many=True
         )
         files = serializers.ListFileSerializer(
             models.File.objects.filter(playbook=playbook.data["id"]).all(), 
many=True
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ara-1.5.1/ara.egg-info/PKG-INFO 
new/ara-1.5.3/ara.egg-info/PKG-INFO
--- old/ara-1.5.1/ara.egg-info/PKG-INFO 2020-09-23 20:26:51.000000000 +0200
+++ new/ara-1.5.3/ara.egg-info/PKG-INFO 2020-10-24 00:52:20.000000000 +0200
@@ -1,6 +1,6 @@
 Metadata-Version: 2.1
 Name: ara
-Version: 1.5.1
+Version: 1.5.3
 Summary: ARA Records Ansible
 Home-page: https://github.com/ansible-community/ara
 Author: OpenStack Community
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ara-1.5.1/ara.egg-info/SOURCES.txt 
new/ara-1.5.3/ara.egg-info/SOURCES.txt
--- old/ara-1.5.1/ara.egg-info/SOURCES.txt      2020-09-23 20:26:52.000000000 
+0200
+++ new/ara-1.5.3/ara.egg-info/SOURCES.txt      2020-10-24 00:52:20.000000000 
+0200
@@ -229,6 +229,8 @@
 tests/zuul_post_with_postgresql.yaml
 tests/zuul_pre_multinode_networking.yaml
 tests/zuul_publish_dockerhub.yaml
+tests/integration/benchmark.yaml
+tests/integration/benchmark_tasks.yaml
 tests/integration/failed.yaml
 tests/integration/hosts.yaml
 tests/integration/import.yaml
@@ -244,6 +246,7 @@
 tests/integration/roles/included-role/tasks/included-task.yaml
 tests/integration/roles/included-role/tasks/main.yaml
 tests/integration/roles/smoke-tests/defaults/main.yaml
+tests/integration/roles/smoke-tests/handlers/main.yaml
 tests/integration/roles/smoke-tests/tasks/ara-ops.yaml
 tests/integration/roles/smoke-tests/tasks/main.yaml
 tests/integration/roles/smoke-tests/tasks/test-ops.yaml
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ara-1.5.1/ara.egg-info/pbr.json 
new/ara-1.5.3/ara.egg-info/pbr.json
--- old/ara-1.5.1/ara.egg-info/pbr.json 2020-09-23 20:26:51.000000000 +0200
+++ new/ara-1.5.3/ara.egg-info/pbr.json 2020-10-24 00:52:20.000000000 +0200
@@ -1 +1 @@
-{"git_version": "9c79cf2", "is_release": true}
\ No newline at end of file
+{"git_version": "bba0f81", "is_release": true}
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ara-1.5.1/doc/source/changelog-release-notes.rst 
new/ara-1.5.3/doc/source/changelog-release-notes.rst
--- old/ara-1.5.1/doc/source/changelog-release-notes.rst        2020-09-23 
20:25:58.000000000 +0200
+++ new/ara-1.5.3/doc/source/changelog-release-notes.rst        2020-10-24 
00:51:11.000000000 +0200
@@ -4,6 +4,56 @@
 Changelog and release notes
 ***************************
 
+1.5.2 (2020-10-16)
+##################
+
+https://github.com/ansible-community/ara/releases/tag/1.5.2
+
+.. code-block:: text
+
+    This is the 1.5.2 stable release of ARA.
+    
+    Changes since 1.5.1:
+    
+    Ansible callback plugin
+    -----------------------
+    
+    - Significant performance improvement by running non-blocking API calls in 
threads
+      https://github.com/ansible-community/ara/issues/171
+    - Handler tasks are now also recorded in addition to regular tasks
+      https://github.com/ansible-community/ara/issues/178
+    
+    API
+    ---
+    
+    - Add support for searching handler tasks (ex: /api/v1/tasks?handler=true)
+    
+    UI
+    --
+    
+    - Hosts in the playbook report are now sorted alphabetically by hostname
+    - Added a column to display the number of tasks in the playbook summary
+
+1.5.1 (2020-09-23)
+##################
+
+https://github.com/ansible-community/ara/releases/tag/1.5.1
+
+.. code-block:: text
+
+    This is a re-release of the 1.5.0 stable version of ara in order to fix
+    a release issue to PyPi.
+
+1.5.0.1 (2020-09-23)
+####################
+
+https://github.com/ansible-community/ara/releases/tag/1.5.0.1
+
+.. code-block:: text
+
+    This is a re-release of the 1.5.0 stable version of ara in order to fix
+    a release issue to PyPi.
+
 1.5.0 (2020-09-23)
 ##################
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ara-1.5.1/doc/source/distributed-sqlite-backend.rst 
new/ara-1.5.3/doc/source/distributed-sqlite-backend.rst
--- old/ara-1.5.1/doc/source/distributed-sqlite-backend.rst     2020-09-23 
20:25:58.000000000 +0200
+++ new/ara-1.5.3/doc/source/distributed-sqlite-backend.rst     2020-10-24 
00:51:11.000000000 +0200
@@ -48,32 +48,32 @@
 
     /var/www/logs/
     ├── 1
-    │   ├── ara-api
+    │   ├── ara-report
     │   │   └── ansible.sqlite
     │   └── console.txt
     ├── 2
     │   ├── logs.tar.gz
     │   └── some
     │       └── path
-    │           └── ara-api
+    │           └── ara-report
     │               └── ansible.sqlite
     └── 3
         ├── builds.txt
         ├── dev
-        │   └── ara-api
+        │   └── ara-report
         │       └── ansible.sqlite
         └── prod
-            └── ara-api
+            └── ara-report
                 └── ansible.sqlite
 
 With the above example file tree, a single instance of the API server with the
 distributed sqlite backend enabled would be able to respond to queries at the
 following endpoints:
 
-- http://example.org/1/ara-api
-- http://example.org/2/some/path/ara-api
-- http://example.org/3/dev/ara-api
-- http://example.org/3/prod/ara-api
+- http://example.org/1/ara-report
+- http://example.org/2/some/path/ara-report
+- http://example.org/3/dev/ara-report
+- http://example.org/3/prod/ara-report
 
 Configuration
 -------------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ara-1.5.1/tests/integration/benchmark.yaml 
new/ara-1.5.3/tests/integration/benchmark.yaml
--- old/ara-1.5.1/tests/integration/benchmark.yaml      1970-01-01 
01:00:00.000000000 +0100
+++ new/ara-1.5.3/tests/integration/benchmark.yaml      2020-10-24 
00:51:11.000000000 +0200
@@ -0,0 +1,29 @@
+# Copyright (c) 2020 The ARA Records Ansible authors
+# GNU General Public License v3.0+ (see COPYING or 
https://www.gnu.org/licenses/gpl-3.0.txt)
+
+- name: Create many hosts
+  hosts: localhost
+  gather_facts: no
+  vars:
+    benchmark_host_count: 25
+  tasks:
+    - name: Add a host to the inventory
+      add_host:
+        ansible_connection: local
+        hostname: "host-{{ item }}"
+        groups: benchmark
+      with_sequence: start=1 end={{ benchmark_host_count }}
+
+- name: Run tasks on many hosts
+  hosts: benchmark
+  vars:
+    benchmark_task_file: "{{ playbook_dir }}/benchmark_tasks.yaml"
+    # Run N tasks per host
+    benchmark_task_count: 50
+    # Off by default to prevent accidental load spike on localhost
+    benchmark_gather_facts: no
+  gather_facts: "{{ benchmark_gather_facts }}"
+  tasks:
+    - name: Include a task file
+      include_tasks: "{{ benchmark_task_file }}"
+      with_sequence: start=1 end={{ benchmark_task_count }}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ara-1.5.1/tests/integration/benchmark_tasks.yaml 
new/ara-1.5.3/tests/integration/benchmark_tasks.yaml
--- old/ara-1.5.1/tests/integration/benchmark_tasks.yaml        1970-01-01 
01:00:00.000000000 +0100
+++ new/ara-1.5.3/tests/integration/benchmark_tasks.yaml        2020-10-24 
00:51:11.000000000 +0200
@@ -0,0 +1,8 @@
+# Copyright (c) 2020 The ARA Records Ansible authors
+# GNU General Public License v3.0+ (see COPYING or 
https://www.gnu.org/licenses/gpl-3.0.txt)
+
+# These are tasks meant to be imported by benchmark.yaml
+
+- name: Run a task
+  debug:
+    msg: "{{ inventory_hostname }} running task #{{ item }}"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/ara-1.5.1/tests/integration/roles/smoke-tests/handlers/main.yaml 
new/ara-1.5.3/tests/integration/roles/smoke-tests/handlers/main.yaml
--- old/ara-1.5.1/tests/integration/roles/smoke-tests/handlers/main.yaml        
1970-01-01 01:00:00.000000000 +0100
+++ new/ara-1.5.3/tests/integration/roles/smoke-tests/handlers/main.yaml        
2020-10-24 00:51:11.000000000 +0200
@@ -0,0 +1,7 @@
+# Copyright (c) 2020 The ARA Records Ansible authors
+# GNU General Public License v3.0+ (see COPYING or 
https://www.gnu.org/licenses/gpl-3.0.txt)
+
+- name: handler
+  debug:
+    msg: hi, this is a handler task
+  register: _handler_run
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/ara-1.5.1/tests/integration/roles/smoke-tests/tasks/test-ops.yaml 
new/ara-1.5.3/tests/integration/roles/smoke-tests/tasks/test-ops.yaml
--- old/ara-1.5.1/tests/integration/roles/smoke-tests/tasks/test-ops.yaml       
2020-09-23 20:25:58.000000000 +0200
+++ new/ara-1.5.3/tests/integration/roles/smoke-tests/tasks/test-ops.yaml       
2020-10-24 00:51:11.000000000 +0200
@@ -49,3 +49,16 @@
 - name: Test for XSS
   command: echo "<script>alert(document.cookie)</script>"
   changed_when: False
+
+- name: Notify something for a handler task
+  command: /bin/true
+  notify:
+    - handler
+
+- name: Flush handlers
+  meta: flush_handlers
+
+- name: Assert that handler task has run
+  assert:
+    that:
+      - _handler_run is success
_______________________________________________
openSUSE Commits mailing list -- [email protected]
To unsubscribe, email [email protected]
List Netiquette: https://en.opensuse.org/openSUSE:Mailing_list_netiquette
List Archives: 
https://lists.opensuse.org/archives/list/[email protected]

Reply via email to