The upload-afs role is actually fairly specialised for uploading docs
with its root-marker scheme. As we're moving more parts of our
infrastructure to publish via AFS I think it's worth making this quite
explicit by renaming the upload-afs role to upload-afs-roots. This
should be transparent as we call the renamed role, and once callers
have been migrated we can use the usual deprecation process.
Add a partner role, upload-afs-synchronize, which is more of a
straight copy with options to synchronize. This will be suitable for
uploading tarball and release artifacts. This is similar in concept
to the promotion job used by zuul [1], but in this case will be
focused on the extant publishing jobs in project-config which don't
currently use the artifact-reporting/promote process.
[1] https://opendev.org/opendev/base-jobs/src/branch/master/playbooks/artifacts/promote.yaml#L39
Change-Id: I493d8829e3fd98e84f1b8f0e776e7ba41abf16c2
Story: #2006598
Task: #38600
Explain the intention of this role and the details of .root-marker,
some of it is copied verbatim from the infra-specs repository design
document.
Change-Id: I6d9124c7eafadc4b53626ff2fef6be6399f61947
Add a testenv:py27 environment that overrides basepython to 2.7
Unfortunately implicit namespace packages are a Python3 thing [1] so
we have to scatter a few __init__.py's around for the test loader
under python2 to be able to find the unit test directories.
Update documenation to mention this
Needed-By: https://review.openstack.org/592768
[1] https://www.python.org/dev/peps/pep-0420/
Change-Id: I9a653666e8a083fb7f3fbb92589fe0467a41e6e6
Add a unit testing framework for python roles. Thanks to Matthew
Treinish for the suggestion of how to perform discovery (and much of the
code which is copied from Tempest).
Change-Id: Iec95dd1026a41614def57c65c3faa0516a682a5a
In working on a different patch it became clear that flake8 wasn't
actually running such that it found errors. Updated the
test-requirements to match what's in zuul and all started working (and
failing) properly.
Change-Id: Icfdb1fedbd92ff49484b116a0879686581274a25
NamedTemporaryFile mode is mode='w+b' by default. Make sure we encode
utf8 and write bytes to our temp file.
Change-Id: I0b31abcd52c049efc7d95d6d6e39dfb5d0860620
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
We need to use filter_file.name to get the actually path.
Change-Id: I130284fdaccd1ace139d71b8a3395e9e9fa0df76
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
This is a modified version of zuul_afs we are running in zuulv2.5. The
differences is we no longer setup kinit / aklog / k5start here.
Instead we'd use the create-afs-token / destroy-afs-token roles.
Change-Id: Id6223283dd10f178d13865a53e4f5d17ad73c661
Signed-off-by: Paul Belanger <pabelanger@redhat.com>