This reverts commit 53f2444dbba473c22554af1689dfc444f3441018.
Revert to avoid regression:
https://review.opendev.org/710208 just gave a lot of new linting warnings that look new "py38: DeprecationWarning: inspect.getargspec() is deprecated since Python 3.0, use inspect.signature() or inspect.getfullargspec()"
Change-Id: I26c862255cce6b6c99a69d9e3f5f4354db90f953
This is needed to be able to parse output from ansible-lint.
Removes a testcase with a faulty assumption that if the column is
not present the output must be a warning and should not be returned.
It is probably better to allow the user to configure their linting
output themselves.
Also we don't need a separate matcher for sphinx.
Change-Id: I6d06dce921348d3c6fb5a56cdc1e4df675d685c2
In the fetch-sphinx-tarball role our handling of pdfs didn't fully
migrate the loop control var 'item' renaming. Update to replace now
incorrect 'item' with correct 'zj_' prefixed var names.
Change-Id: Ia5cb68ccbc410d88349e9dd6e3fc2551d5eff5e2
Fix bug which prevented find from finding builds when the
folder was a symlink. This can happen if a project using a different
build layout tries to expose the docs at the expected location.
Change-Id: Ib7782b60cef42d2e9fd3077791f06b0f918d7c45
YARN needs a modern version of NodeJS and if we don't use the role
to get the latest version, we end up failing on most platforms that
ship an old version of it.
This patch also adds testing to validate that ensure-yarn alone works.
Co-Authored-By: Andreas Jaeger <aj@suse.com>
Change-Id: I83ac09bc5751c85c6f1eac550d289a300ca2255e
Log synchronization fails when trying to preserve uid and guid
for a user and or group that doesn't exist on the executor.
This makes it so the owner and group is not preserved from the remote.
Simplify operations, use a single task with a loop instead of three
separate tasks.
Change-Id: I8ae937ba07e240ee4394374405aa841ad882022a
The role previously conditionally installed YARN only if there was
a yarn.lock. The role shouldn't conditionally decide to install
if there is a yarn.lock file as that's not expected behaviour.
Change-Id: Ia6940df036fd27d55d60fa959b794de952040745
This patch refactors ensure-docker to use the new ensure-package-repostories
role which cleans up the codebase for it a lot. It also converges the
Debian and Ubuntu configuration as they were pretty much the same.
Also, it updates the Docker to the proper GPG key as while refactoring,
it was exposed that it was using the wrong key. Docker uses a different
key for Debian and RHEL based packaging.
Change-Id: Iad430c6a31be0750c1a0f50e12a26df230de9f4e
This patch refactors ensure-yarn to use the new generic role
to allow it to be cross-platform in the future.
Change-Id: I32bb40f5afb26d0d906f332c1c8440859367d97a
This patch refactors ensure-podman to use the new generic role
to allow it to be cross-platform in the future.
Change-Id: Id9ad0fbaeb9d19d022393ad16a27f11260c45da0
This patch refactors ensure-nodejs to use the new generic role
to allow it to be cross-platform in the future.
Change-Id: I859b6b3e33bc22ad4f99828e921ac2ed35a49252
This patch refactors ensure-kubernetes to use the new generic role
to allow it to be cross-platform in the future.
Change-Id: Ic90c8973431823814c7e6b122f4ef25a67d64c2f
This role allows users to supply a common variable and it will
contain all the logic to configure the correct repository based
on their operating system.
Co-Authored-By: Andreas Jaeger <aj@suse.com>
Change-Id: I4a3ab5f099c2e4671b78c751d8f0e8ccf2304afa
* Build role requires build target to be specified via a variable
* Ensure role checks for a specific version of Bazel and downloads
and installs if missing; defaults to v3.1.0 and downloading from
bazelbuild Github, but these can be overrriden using variables
* Also installs dependencies for Bazel; only supports Ubuntu/Debian
at present, but includes scope to extend for other platforms
* Includes test playbook and job
Change-Id: I83f198aaf20c2b3664bea6fc05edd3b4fca13a4f
The variable was changed inside the role from image to zj_image but the
included task file did not use the new variable name. This patch fixes
this.
Change-Id: Ibe3acbd0881da24ec9c2f636d777885a309bdf98
This adds a custom ansible-lint rule at .rules/ZuulJobsNamespaceLoopVar.py
that enforces the loop var policy described at:
https://zuul-ci.org/docs/zuul-jobs/policy.html#ansible-loops-in-roles
It also updates existing roles to follow the policy.
Change-Id: I92b2ff56a1c2702542fc07b316f1809087a4c92f
This is part of the efforts to remove pip-and-virtualenv from our base
images [1].
There are some users who specifically require the virtualenv command
(perhaps, like dib, they have some code that uses the activate_this.py
mechanisms it provides wich venv does not).
This installs the virtualenv package for the currently running
distribution.
One of the main maintenance issues of pip-and-virtualenv is that tried
to ensure that "virtualenv" created a Python 2 environment always by
default. Now that we have Python 3 only distributions like current
Fedora, this is not something we can continue to do (even if we wanted
to, which we don't).
What owns virtualenv and what it produces in our heterogeneous
environment is messy, and I think the best we can do is document it as
done here.
[1] https://docs.opendev.org/opendev/infra-specs/latest/specs/cleanup-test-node-python.html
Change-Id: I97d8bfb970ed2b5aaa02a0813899014c94994066