This option was deprecated in favor of the allowlist_externals option
and does no longer work in recent tox.
Change-Id: I1cbf545c382fdb4dda837699392e59061ccf8f75
There was no coverage of an actual OSA deployment in CI, so we
add this. Also remove the legacy python3 functional test
and move all tox environments to be python3.
Change-Id: I36cee01b9a14adf1840d35c3a8934de8a994f399
This patch adds a `pdf-docs` tox target that will build
PDF versions of our docs. As per the Train community goal:
https://governance.openstack.org/tc/goals/selected/train/pdf-doc-generation.html
Add sphinxcontrib-svg2pdfconverter to doc/requirements.txt
to convert our SVGs.
Change-Id: Ib0fc3cabe19771c3f569d22c8b09aa456f4caf6e
Story: 2006105
We want to default to running all tox environments under python 3, so
set the basepython value in each environment.
We do not want to specify a minor version number, because we do not
want to have to update the file every time we upgrade python.
We do not want to set the override once in testenv, because that
breaks the more specific versions used in default environments like
py35 and py36.
Change-Id: I158a8368f1e2fd4df14753e69141111b451443be
Closes-Bug: #1801657
We want to default to running all tox environments under python 3, so
set the basepython value in each environment.
We do not want to specify a minor version number, because we do not
want to have to update the file every time we upgrade python.
We do not want to set the override once in testenv, because that
breaks the more specific versions used in default environments like
py35 and py36.
Change-Id: I9cc42f8bcbb38ec3a189affbee8b4b57adbf1ba1
Signed-off-by: Doug Hellmann <doug@doughellmann.com>
Compare dict vars of before and after configuration to determine whether
the config keys or values have changed so a configuration file will not
be incorrectly marked as changed when only the ordering has changed.
Set diff return variable to a dict of changes applied.
Change-Id: Ie67119b1420936c8ed89f8338ea9dce4c47e185c
The TESTING_BRANCH environment variable is provided by the
run_tests.sh script and is derived from the .gitreview file.
This ensures that once the master branch becomes a stable
branch, the constraints from the stable branch in the
integrated repository will automatically get used once the
.gitreview file is updated.
To ensure that the required environment variables are present
we export them appropriately in run_tests.sh and modify the
tox configuration to pass them into the tox test.
Change-Id: I01e4df147134b3fa2eca8e9cae977db6444c9a48
Needed-By: https://review.openstack.org/579371
Using tox for requirements management requires in-repo
requirements files for all our repositories. Rather than
do that, we make use of the tests repo to capture our
common requirements and use this to install them.
This reduces our review requirement rate and simplifies
maintenance for us for the tox config. It also makes it
usable with 'Depends-On', which is marvellous!
The tox requirements definitions for docs/releasenotes
builds are left in-place as those are standard entries
across the community. If that changes at some point, we
can re-assess those entries too.
Depends-On: https://review.openstack.org/579208
Change-Id: I1f61d9b31f983eeb21376166b80aca400235ced1
In ansible 2.5 the way files are generated changes meaning that --diff
mode will stop working, and generate an error instead. Pending a better
solution, we should remove --diff mode.
Change-Id: I0d9b7baf08be00b978b8198f95db8962e7fa7787
Due to the ordering of the vars passed to the _get_diff_data mode,
--diff mode would only work with --check activated, otherwise the file
used didn't exist and you would get an error similar to:
https://github.com/ceph/ceph-ansible/issues/2742
This PR allows this to work by configuring the diff data before running
the copy module, so the file exists.
Additionally, we should run with --diff mode enabled by default on tests
for this repository to ensure any functional issues with diff mode are
caught.
Change-Id: I020a181731c3ee87f04933f8c62213ea12cfa3a4
Now that run_tests.sh handles the tests repo clone, we can
remove the use of the older tests-repo-clone.sh script.
Change-Id: Ia09ee6c5e0014332af211039fe4e1ae430a776ff
The lint tests make use of the common linters test
used by the roles, so we need to ensure that the
run_tests.sh script is updated and the configuration
adjusted accordingly.
Change-Id: Ic623e6074a85e08416b30e3e42c48fe8873113d6
Gate tests will fail until we fix pep8 for config_template.py
This PR fixes the config_template module for pep8 compliance,
follows the latest PTI for docs compliance,
and re-enables the linters.
Change-Id: Ic288b462a53ac45983f47f29a7d5d8d48d0b9c0b
Co-Authored-By: Jean-Philippe Evrard <jean-philippe@evrard.me>
Currently the role tests use whatever versions of pip,
setuptools and wheel are already installed on the host.
When a version of these tools changes it often causes
problems for our testing.
This will ensure that we use a known good set of pins
which is maintained in the general SHA bumping process.
Change-Id: If04c306c7f794dc80e4f6ff308ac27fefe4fc0fe
When executing the tests repo clone in OpenStack-CI,
use zuul-cloner instead of git to enable cross-repo
testing. This ensures that if a dependent patch from
the tests repo is noted using 'Depends-On: <change-id>'
in the commit message, that patch will be included.
Depends-On: Idce7abebf32f24c356a27e099fbca954d917402b
Depends-On: I5da7802d61d2ab6b03908138e3a3ed2db22e3d29
Change-Id: Ib9e5f4c93529b6bf74e37ce9f2feb0faa87a3b81
Renames the "artifacting" strategy to "tagfilter" and implements
a more generic tag skipping implementation that can be defined
from within the ansible vars structure dynamically on a per-host,
per-group, or per-playbook basis.
To use the tagfilter strategy, run the playbook with
strategy: tagfilter
and define a hostvar named "skip_tags". Skip tags can be a string
or a list, and any tag CONTAINING a skip tag (an exact match is not
needed) will be skipped.
Also added is a check for a var called "skip_handlers", defaulted
to True. When skip_handlers is enabled, no handlers will be run
regardless of whether the task is skipped or not. If set to False,
handlers will be allowed to run as normal except when tasks are
skipped by the skip_tags.
Change-Id: I649707e6744e03763c4e786d203716ebf657ab48
By using the centralized testing repo and its ansible.cfg file, a git
clone of the plugins repo is made to ~/.ansible/ and used for testing.
Effectively, testing of plugins is only done against the last merged
commit.
Set environment variables through tox so that ansible uses the library
and plugin paths in tree.
Change-Id: I61d60ae997d1bbcfdfa154a68908f7131ebc11c3
With the implementation of https://review.openstack.org/388087 all
tox targets may now use upper constraints.
Change-Id: If8981345d225d9eb365c2027f6989898d416a93c
This patch consumes the centralised Ansible test scripts
implemented in https://review.openstack.org/381853
Change-Id: I3300e7111263e7a4daf8bc39286e9b1a8c67b87f
With https://review.openstack.org/381479 merged, setting this
variable in tox.ini via an extra var is unnecessary.
Change-Id: I3e7a1ae65be77766603be15404a32dd16b0ad8b5
This patch consumes the test scripts implemented by
https://review.openstack.org/375061 to ensure that
the tests and test preparation is consistent and
more maintainable.
Change-Id: Iffbb70a29d1c5c0a7a9d0956b8df39fa53e0f686
Add a playbook to test each of the osa-filters.
The linters tox test environment has been updated to include a run of
this playbook.
Change-Id: I0bd877ce7bbd56edc52cf071d02d55d0210f9829
This patch updates the tox.ini the same bashate exceptions as are
currently in the OpenStack-Ansible playbook repo.
It also ensures that the linters and all lint targets work
appropriately and normalises the tox.ini configuration to use
uniform formatting.
Change-Id: I2e76678eb79ec4a52a7cce74997f59e005aee283
OpenStack-Infra has requested that lint tests be pipelined into the 'linters'
tox target in order to make more efficient use of nodepool resources.
This patch:
- Ensures that a complete set of lints tests is available in individual
tox targets.
- Adds a 'linters' target which executes all the other lints tests.
Change-Id: I7a682da5c94534dad4da441dbe285e9a33205a95