We are going to provide support the ARA sqlite middleware which
provides the ability for an ARA web application to dynamically load
databases, eliminating the need for HTML generation.
HTML generation does not scale very well: it's orders of magnitude
larger than the database file containing the data and it also takes
a significant amount of time to generate the report.
It would be awkward to add dynamic database things into a role called
"emit-ara-html" and so I took the opportunity to refactor things a
little bit and make the role less prone to failures.
Note that this role was developed with the nested Ansible use case in
mind -- a job running it's own copy of Ansible with ARA should be able
to use this role to generate the report or save the database.
This role will be tested with 'base-test' first and it is expected to
make the 'emit-ara-html' role obsolete if everything works well.
Change-Id: Idedc0bfa1f0f89356b795fb9e2a16f9421a2dc18
Depends-On: I3b10c93b4902a9b45e23c227863e472697f662ef
This is breaking project-config, and some reason we didn't catch it in
testing. We should look into why that is.
Change-Id: I994484cdb28297fdff8c52ccf7455733584cd8ae
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
The role today only adds known hosts for the zuul user.
This replicates what d-g does today by adding a default known_hosts
file which applies to all users.
We csnnot remove the original task that adds for the zuul user since
there's a unit test in openstack-zuul-jons that expects that.
Depends-on: https://review.openstack.org/550425/
Change-Id: I54d4d975fa54cbb6df7dbed525211ab5c2cd6754
This currently fails with "Error 'nodepool' is undefined".
REmove nodepool line completely for now.
Change-Id: I134079a6118c8825fa91920c0f12c2d2789361a5
Load the variables from an architecture specific file first --
ansible's ansible_architecture fact for arm64 is aarch64 (it's all
confusing, Ubuntu calls it arm64). Add this file that sets up the
repo as "ubuntu-ports", which is our mirror of ports.ubuntu.com
Change-Id: Ieb50ae29c7f822e831ef1e32fdd03f74a93e298a
Built content and source tarballs are different. Have a role that
handles uploading built content.
Append -content to the tarball so that a project can publish both a
source tarball and a built content tarball without stepping on each
other.
Change-Id: I33dff8080018bda281a00e648468de80d3ecd679
The version-from-git role doesn't properly handle tag-less repos. Update
it to handle that case too.
Change-Id: I358037fd34f5dc202a6761b9e6f81bbe7870f3f2
After fixing the copy-build-sshkey role, using it again in
multinode job pre.
This reverts commit ace4db4b04fd1eb71411d079524fded8189a72aa.
Change-Id: Id59216ce7dd62ff604ddf2c2c1cf27c4dca0deb0
Run the first task in the block, with become_user since the zuul
user may not access a generic use .ssh folder.
Depends-on: https://review.openstack.org/550091
Change-Id: I4ce120412079fe92502eee5310a03664aa55d5ce
As we look towards updating the version of Ansible zuul is running with,
letting people know what version it is would be friendly.
Change-Id: I09cd990af5365a8da3c339eede128166a76b35dd
The nodepool provider variable is not always available, for example
when running only on localhost, so default it to "N/A".
Additionally, we don't want these tasks to run multiple times if we
are running a multi-node job so use "run_once: yes" to prevent
printing the header more than once.
This reverts commit 27755ba83f83858f3dec3c23c3ab5101ea93a692.
Depends-On: Ia79a793200fcb89161783ff641b85106936084b5
Change-Id: Id9117935d9c53268ea893796154af03db21ee3a7
Unfortunately ansible_distribution is "openSUSE Tumbleweed" on
tumbleweed, and the whitespace in there is harmful. as there
isn't a version with tumbleweed, we can just replace
distribution/version with "opensuse-tumbleweed".
Change-Id: I21da4b5f851ec864dfb3cbf8ea6713bc12cda58f
The role allows override of the zuul_work_dir variable, however in the
step where it retrieves the test results is the only step where it
prepends the directory with a fixed path. This breaks the step if the
zuul_work_dir given is a fully qualified path.
This patch defaults the zuul_work_dir to a fully qualified directory and
standarizes the usage zuul_work_dir across the role.
Change-Id: I62bc7571f625586a0d1b660f896e0c7cbaeae6e1
The role is an almost duplicate of fetch-subunit-output.
This patch favors the latter, since it's the more used role.
Depends-On: https://review.openstack.org/548394
Change-Id: I2dc7e6a0ead585601debf0f772fee25c96155448
Last revision of I700ba2279dc7aadc7051cad53898e1de9007a08d
of course had a typo compared to what was tested successfully before.
Change-Id: I6f1053d69650ee6235089e61e7f19f8927d8e8f5
This commits starts using the copy-build-sshkey role, however
the role is buggy, so we should first revert this, then use
reapply this after it's tested.
This reverts commit 4bdb01e60a5085c65f0a80e8f8bed743e7043b5d.
Change-Id: Ibbcfd4a0a9c37ce819cd2ad14109e9cdd20b3a1e
Deploy the build ssh key to the authorized_keys for root user
on all hosts in a multinode environment, to allow passwordless
ssh between nodes.
Change-Id: I3b1a8ce825d093a886f6dee2c1c8d49204939274
Tumbleweed as a rolling release model distribution does not
have a sensible release version and is kept distinct from the
classing "release + update" distributions that are called "Leap".
Conditionalize the repository setup for tumbleweed properly,
the base path is different and it does not have a releaseversion
component (the release version is always changing, it is
the snapshot date in the form YYYYMMDD).
Change-Id: I700ba2279dc7aadc7051cad53898e1de9007a08d
In Ansible-2.4, the |succeed behavior changed and always return True
when task uses 'failed_when: false'.
Also uses "type -p" instead of "which" that is used in other roles.
Change-Id: Iddcff07a40dc6c36a1a1c2101a7822697cdbbc34
As of Ansible 2.4, the parameter 'executable' is
no longer supported with the 'command' module.
Also check for return code since it the |succeed changed
and now always returns True when using failed_when: false.
Change-Id: I4c33db7f3d6fd613a6144f7520054cbcf50684e1
We only rename the extensions for files specified in zuul_copy_output
but we should rename files in folders specified in zuul_copy_output as
well. In addition we need to rename files or folders that start with a
'.' which would otherwise not be visible once uploaded to logs.
Change-Id: Id55ab51019d10d5ccbc6531549758ac71ad276be
The stage-output role accepts a list of extensions to be replaced as txt
so that they can be seen directly from within a web browser.
Using a list means that children jobs cannot add to the parent setting,
only overwrite. Adding support for dicts while preserving, at least for
now, support for lists - to avoid breaking existing implementations.
This reverts change 844b3333aae02d596061386b5a1a2fbc821950be.
Change-Id: I5052c873f0a5da7ecaa38627e8900af86bbec2f9
Needed-By: https://review.openstack.org/539686
Needed-By: https://review.openstack.org/539708
Needed-By: https://review.openstack.org/539854
We need to set the remote HEAD of the repos after we mirror them. We
have been doing that by looking at git status on the local repos to find
what their head has been set to. However, we have 'checkout' in
zuul.projects now, so we can really just use that.
Change-Id: I251da11b7767793278c3f08dcf64aa008e759669
Depends-On: https://review.openstack.org/540948
This creates a test role for change https://review.openstack.org/540934
that we can use in base-test.
Change-Id: I23b468b9440c6a4ec7e4c34f351b1934e0f63be0
Sometimes the task to determine the local HEAD of projects we've
checked out is failing in a way that we can't parse. Add a step before
the one that fails to show the full git status output to help with
debugging.
Change-Id: I095489249593442e1e9a3b346aed1ecf4135825f
Signed-off-by: Doug Hellmann <doug@doughellmann.com>