Currently when podman tempest container tempest tests fails, it
stores the exit status as fail and exit the run_tempest.sh script
leading to not copying the stuff from tempest container to host.
It decouples the step of copying and managing permission for tempest
post log processing and run only when tempest run finishes with in
a container.
https://tree.taiga.io/project/tripleo-ci-board/task/819
Change-Id: I9c7f97f3aa97c0ea061ba6aeb125501bf3a1adbf
Upgrades yamllint to latest version and adots use of its strict
checking.
Fix all known problems reported by yamllint so we don't have to do
that while touching these files.
Change-Id: I4bdc520d9e2aff086c4b463718bc1e053261a4f5
Story: https://tree.taiga.io/project/tripleo-ci-board/task/381
* When Moving 'stackviz to /var/log/extra/stackviz' task is called,
/var/log/extra/stackviz directory does not exist which leads to
failure giving no such directory in order to fix that we need
to check whether destination exists or not. If not first create
it and then move the content and also make sure stackviz-export
operation has successfully completed.
Change-Id: Ie84c150c74363da25e76bbb234a864a72c6c366a
This is a better way to install and run stackviz, also removing some
tasks that's no longer necessary:
* Remove stackviz static files from the repo, since it's already in the
tarball
* Remove stackviz cloning, and using tarball
* Install stackviz directly from pip module
* Removing tempest-status.yml since we don't use to anything
* Move tempest-results.yml to run before stackviz, so we can take
advantage of the testrepository.subunit file to generate stackviz data
* Use testrepository.subunit to generate subunit2html report instead
of stestr/testr stream
Closes-Bug: 1779562
Change-Id: I918e5401b4f46e947bbaca99a48c2b21bce9a4bd
When using pipes in ansible shell module we can miss the error
because shell is executing without pipefail by default.
This rule will check every shell module if it has "set -e pipefail"
and will fail in case if not.
It excludes tasks which have 'ignore_errors: true' or register
variables.
Change-Id: I394c72040d62dff76180aeb9d703bb8a212bcc98
Stackviz is failing in multinode container because tempest runs as root,
so all the result files are created with root as owner, so when stackviz
tries to access these files, got a permission error. This patch set the
owner back to undercloud_user for tempest directory
Change-Id: Ia3b3dd4688a8d20c3750d299136211acc5a5db82
In the latest version of tempest, the testr was replaced by
stestr, and so, the path where these results were stored changed
as well from .testrepository to .stestr. This patch verify which
directory was generated, and execute the subunit2html in the
proper directory.
Change-Id: Ic5a04781f830597a2c5fe9516a704ff5a9b5ff24
Closes-Bug: #1729403
After I177b32622500dab54896fda740080d07f5f65261 we started to use
testrepository from system, which is version 0.0.18 and generate subunit
v1 output, and stackviz doesn't recognize it. So it's required to
transform version 1 to 2 with subunit-1to2 command.
I've tested manually, and the subunit-1to2 works either if you're using
version 0.0.18 or 0.0.20.
Change-Id: Ie7c3f3e734fabdd116cb2421e85c0595e3c56a87
With change I177b32622500dab54896fda740080d07f5f65261 we are no longer
using .venv as default to run tempest, and stackviz was relying on that.
this patch remove the call to source .venv in tempest to be executed
when tempest_format is not venv
Change-Id: Ic47baa14f6f0615e437d8dabe38d977cb2d575fc
- According to the ansible-lint documentation, we can pass a role directory as
an argument. But due to https://github.com/willthames/ansible-lint/issues/210,
the role directory has to contain a trailing slash!
- This patch fixes the following ansible-lint rules:
* ANSIBLE0004: Git checkouts must contain explicit version
* ANSIBLE0008: Deprecated sudo
* ANSIBLE0011: All tasks should be named
* ANSIBLE0014: Environment variables don't work as part of command
* ANSIBLE0015: Using bare variables is deprecated
- Temporarily skipping the following ansible-lint rules (Fixes will be part of
others patches):
* ANSIBLE0007: Using command rather than an argument to e.g file
We have a lot of 'rm' command and we should use file module instead
* ANSIBLE0012: Commands should not change things if nothing needs doing
* ANSIBLE0013: Use Shell only when shell functionality is required
Change-Id: I3d5591ea9fd1691e8115d7093db87781a08a6082
Signed-off-by: Gael Chamoulaud <gchamoul@redhat.com>
Pip isn't installed on undercloud, making Install stackviz task fails
because isn't able to find it.
Change-Id: I3aac9a91e1ca74f03d84694239b0a8299dfc9c85
This patch add to tempest role, the generation of the report created by
stackviz from tempest results. Basically, what it does is:
- Download stackviz from git repository
- Copy static html and javascript stackviz files so we don't need
to install npm, download the dependences, and build the static html
(which would save some minutes)
- Install stackviz (only the processor)
- Run stackviz-export on tempest to collect the results
Also, add the code needed in the collect logs role to collect these
static files generated by stackviz.
Change-Id: Ia5ee717eaa9777bad265ecc338154e131021283f