Don't try to create change tag if zuul.change is not defined that is the
case for periodic builds.
Change-Id: I5a7e02caf0f502e90e0477daeee868bf06dfbb5c
Use a proper link to the referenced role and mention in the short
description that this is related to OpenShift.
While it might work with any Kubernetes, it uses an
openshift tool, oc.
Change-Id: Ia4fba00c8a3adec4dc26a2d32a21df8ff548a120
ansible-2.9 does not allow "|skipped" anymore, it needs "is skipped"
instead, fix the only usage.
See also Ic0c93f2ea896ead76922694e6150882d8a280daf and
Id6c62da8f8a94c270d8a5d5981683a9d8c4e7ad6.
Change-Id: I597c92d2f6dce31dab1ac4bf52bb534c8146b33b
This seems to introduce the following error with Ansible 2.9
"The conditional check 'not ara_generated | skipped' failed.
The error was: template error while templating string: no filter named 'skipped'.
This reverts commit 262c16b30583f634588f5a52bd7aab944687a8a4.
Change-Id: Id6c62da8f8a94c270d8a5d5981683a9d8c4e7ad6
The
command -v pip pip3 | head -n1
introduced with Ie50928c9b782ea84db916bb1441567e1206ff466 has a very
subtle race; if "pip" and "pip3" exists and there are two lines
output, the "head -n1" will exit and depending on scheduling the
"command" might write to a broken pipe (this manifests as exit code
141).
Move this to a more explicit if statement.
Co-Authored-By: Jens Harbott <j.harbott@x-ion.de>
Change-Id: I80823a7bc6351925d6f0b20bdebca3eafef0b27d
The sphinx .doctrees directory is not needed for publishing. By default
sphinx puts it below html. Some projects add to sphinx-build a "-d"
option to put the content elsewhere and not publish it.
This change assures that a .doctrees directory below "html" will not put
stored as artifact and published later.
Statistics: In all of OpenDev, we have:
* 511 repos putting .doctrees elsewhere and thus not publishing it
* 631 repos no caring and thus publishing .doctrees
The size of .doctrees directory is not neglectable: 2MB for
system-config, 14 MB for nova.
Change-Id: I63b581164aab84352d9e80278cf4a8d634ff28af
When returning the subunit test result as an artifact it will be
directly linked on the build result page.
Change-Id: I1a83288ac0857333f87cd085b3e0243bd3b92fc2
Fixed issues failing to install tox on python3 only systems which have
only pip3 executable and not the pip one.
Needed-By: https://review.rdoproject.org/r/#/c/24584/
Change-Id: Ie50928c9b782ea84db916bb1441567e1206ff466
This change enables using fetch-tox role along with
the fetch-output role. By default the role still synchronizes
artifacts back to the executor.
Change-Id: Iffe5ffc52ee4c765b2e23ab8b3235b6bc7c510d8
This role runs Helm template of a specific chart and then makes
sure that all resources become ready afterwards.
Change-Id: I62e160eac673d13bd1018b58fd36cae54e1482b4
We use this in a few different places and it's really useful
to collect all the logs of all containers.
Change-Id: Idc46a47f444bf48cd040f4f9724f3a6ee8bc8f8e
Move the chart-testing task to a role (so that it is easily
reconsumable) and update the default arguments to disable checking
for version bumps (instead, we expect to rely on setting the version
when building a release).
Change-Id: I85482dc704c189222c92fd4174f733382ebf69d1
Stop compressing files that would otherwise be handled uncompressed in
intermediate log handling. The reason for this is final log/artifact
upload should decide if a file need to be compressed or not as some file
hosting services (like swift) may not return the expected data if we get
this wrong.
This was noticed when we used swift to store intermediate tar.gz
tarballs before final upload to permanent storage. When retrieving the
tar.gz files from swift we got them back as uncompressed .tar files
(because swift was being helpful) and then later when we try to
uncompress these files we break.
Instead we'll let the upload to swift (or other storage) decide if files
should be compressed further than their existing state.
This is the second change in the stack and update the stage-output role.
Change-Id: I2fa6f123d23568ba1537a7c26d2672f04110c35b
Stop compressing files that would otherwise be handled uncompressed in
intermediate log handling. The reason for this is final log/artifact
upload should decide if a file need to be compressed or not as some file
hosting services (like swift) may not return the expected data if we get
this wrong.
This was noticed when we used swift to store intermediate tar.gz
tarballs before final upload to permanent storage. When retrieving the
tar.gz files from swift we got them back as uncompressed .tar files
(because swift was being helpful) and then later when we try to
uncompress these files we break.
Instead we'll let the upload to swift (or other storage) decide if files
should be compressed further than their existing state.
This is the first change in the stack that updates this behavior for
fetch-subunit-output.
Change-Id: I5727b270d6d34c256fe78a443baa1ad6c3474108
This lets use-buildset-registry notify cri-o about the new
registries.conf file if it is being used as the container backend
for k8s.
Change-Id: Ia1805519ab4b6bb5f79df0492f702effc6a3e024
When retrieving gzipped files out of swift with gzip encoding set some
swift implementations return a decompressed version of the file if your
client cannot accept gzip encoding. This causes problems when the file
you want is actually compressed like a .tar.gz. Instead we avoid setting
the encoding type of these files forcing swift to give them back as is.
This change should only be approved after confirming its parent is
tested and working.
Change-Id: Ibcf478b572ba84273732e0ede17bf92bddd8c36f
When retrieving gzipped files out of swift with gzip encoding set some
swift implementations return a decompressed version of the file if your
client cannot accept gzip encoding. This causes problems when the file
you want is actually compressed like a .tar.gz. Instead we avoid setting
the encoding type of these files forcing swift to give them back as is.
This change will be followed by a change that updates the production
role.
Change-Id: Ica27cf070d50fcafd879b6f8ccc3964afa9bf5e6
1.31.1 contained some critical fixes regarding go module
handling, let's just jump to the latest minor release.
Change-Id: I829d3a1550d343e778e79b519925099651392eb1
Ansible 2.9 does not accept the "installed" state so we need to update
occurences of that to "present".
Change-Id: I13c95794efc63697c2418334ded7c6912bd7b59f
This fixes a byte vs str problem on python3 in the tox role's sibling
library.
As part of this fix add unit testing of the function that was failing
under python3 and functional testing of the role that covers siblings.
Change-Id: I2df4ddce91dfd53f5c4177a19288e97120bc3e3b
There are a number of issues with this. Firstly, it needs to copy the
parent directories to make a heirarchy in the .zuul-siblings
directory. The current "cp -r" was only copying the final directory.
Switch into the source directory and use "--parent" to do this.
Also, it should be copying into the context dir. Add the
{{ item.context }} to the path where appropriate.
Make new testing image that copies in files from the siblings.
Because COPY will fail if the sources aren't there, this is like an
assert that we copied it correctly.
Change-Id: I9f3b0a1f71d20cf7511f224648dd2fa51a039015
Add support for "siblings:" to the build-container-image role. This
is a port of change I079d823e7194e15b1b496aea0f53f70f6b563f02 from the
build-docker-image role.
Note that we found a couple of issues with this role, fixed with
I9f3b0a1f71d20cf7511f224648dd2fa51a039015. However,
build-container-image has merged before this fix, so thess fixes now
follow this change. To avoid squashing this into something confusing
this update incorporates those fixes. However testing is left to the
follow-on change because the extant build-docker-image role would fail
the corrected testing. They should be merged roughly together.
One minor thing is the removal of an additional duplicated "tags:"
entry from the variable documentation.
Change-Id: I71e2f2ab29446bd113644ce8c75378b8d3ef8ba6