From 5ed35b37c7ee4a2560d1a8ce1bb03653ca1eef70 Mon Sep 17 00:00:00 2001 From: Chandan Kumar Date: Sun, 20 Jan 2019 15:41:33 +0530 Subject: [PATCH] Always generate stackviz irrespective of tests pass or fail Stackviz provides a nice report of all the tempest testst. In current implementation, stackviz playbook is called only when there is a tempest pass result otherwise on failure tempest_run playbook calls assert and abort the playbook and then stackviz playbook does not runs. This patch enables to run stackviz playbook irrespective of the tempest tests passes or fails. It also moves stackviz installation to tempest_install.yml and gather datas to tempest_run.yml. Change-Id: I682277ec9ebd02ba98837677b6f0a900e4581f5d --- tasks/main.yml | 7 ------- tasks/stackviz.yml | 43 --------------------------------------- tasks/tempest_install.yml | 8 ++++++++ tasks/tempest_run.yml | 18 ++++++++++++++++ 4 files changed, 26 insertions(+), 50 deletions(-) delete mode 100644 tasks/stackviz.yml diff --git a/tasks/main.yml b/tasks/main.yml index 8f5323a9..5516a885 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -48,10 +48,3 @@ tags: - tempest-config - tempest-run - -- include_tasks: stackviz.yml - when: tempest_run | bool - tags: - - tempest-config - - tempest-run - - stackviz diff --git a/tasks/stackviz.yml b/tasks/stackviz.yml deleted file mode 100644 index 373a869f..00000000 --- a/tasks/stackviz.yml +++ /dev/null @@ -1,43 +0,0 @@ ---- -# Copyright 2018, Red Hat Inc. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -- name: Install stackviz on venv - include_role: - name: "python_venv_build" - vars: - venv_install_destination_path: "{{ stackviz_venv_bin | dirname }}" - venv_pip_install_args: "--isolated" - venv_pip_packages: "{{ [ stackviz_tarball ] }}" - -# Copy module doesn't copy recursively with remote_src set to true -- name: Copy stackviz-html to home directory - shell: | - cp -r {{ stackviz_venv_bin | dirname }}/share/stackviz-html {{ tempest_log_dir }}/stackviz - args: - executable: /bin/bash - tags: - # don't trigger ANSIBLE0013 - - skip_ansible_lint - -- name: Collecting data from tempest run - shell: | - . {{ stackviz_venv_bin }}/activate - stackviz-export -f {{ tempest_log_dir }}/testrepository.subunit --env {{ tempest_log_dir }}/stackviz/data - args: - chdir: "{{ tempest_workspace }}" - executable: /bin/bash - tags: - # don't trigger ANSIBLE0013 - - skip_ansible_lint diff --git a/tasks/tempest_install.yml b/tasks/tempest_install.yml index e03e0a94..adc2585e 100644 --- a/tasks/tempest_install.yml +++ b/tasks/tempest_install.yml @@ -28,3 +28,11 @@ - name: Install Tempest packages from PIP include_tasks: tempest_install_source.yml when: tempest_install_method == 'source' + +- name: Install stackviz on venv + include_role: + name: "python_venv_build" + vars: + venv_install_destination_path: "{{ stackviz_venv_bin | dirname }}" + venv_pip_install_args: "--isolated" + venv_pip_packages: "{{ [ stackviz_tarball ] }}" diff --git a/tasks/tempest_run.yml b/tasks/tempest_run.yml index 9d61d31f..6ffdb436 100644 --- a/tasks/tempest_run.yml +++ b/tasks/tempest_run.yml @@ -101,6 +101,24 @@ executable: /bin/bash changed_when: false failed_when: false + + # Copy module doesn't copy recursively with remote_src set to true + - name: Copy stackviz-html to home directory + shell: | + cp -r {{ stackviz_venv_bin | dirname }}/share/stackviz-html {{ tempest_log_dir }}/stackviz + args: + executable: /bin/bash + tags: + # don't trigger ANSIBLE0013 + - skip_ansible_lint + + - name: Collecting data from tempest run + shell: | + . {{ stackviz_venv_bin }}/activate + stackviz-export -f {{ tempest_log_dir }}/testrepository.subunit --env {{ tempest_log_dir }}/stackviz/data + args: + chdir: "{{ tempest_workspace }}" + executable: /bin/bash tags: # don't trigger ANSIBLE0013 - skip_ansible_lint