Vendor collections for isolated jobs to work in ansible 2.10

kubectl and synchronize are now part of community.kubernetes
and ansible.posix collections, respectively. This change installs
these collections to a local directory to be used in inventory and
isolated management playbooks.

awx issue #6930
This commit is contained in:
Seth Foster
2020-05-13 10:41:01 -04:00
parent ba4ae7c104
commit 4da0e0dd80
16 changed files with 27 additions and 18 deletions

View File

@@ -41,12 +41,12 @@ At some point, scripts will be removed and the script-related (for credentials a
Collections are used for inventory imports starting in Ansible 2.9, and each collection has its own versioning independently from Ansible.
Versions for those collections are set in the requirements file `requirements/collections_requirements.yml`.
The location of vendored collections is set by the file-only setting `INVENTORY_COLLECTIONS_ROOT`.
The location of vendored collections is set by the file-only setting `AWX_ANSIBLE_COLLECTIONS_PATHS`.
For development purposes, this can be changed so that you can test against development versions of those collections.
Instructions for doing this are in `tools/collections`.
If, for some reason, you need to change the version of a particular collection used in inventory imports,
you can use the `ansible-galaxy` tool to update the collection inside of the `INVENTORY_COLLECTIONS_ROOT`.
you can use the `ansible-galaxy` tool to update the collection inside of the `AWX_ANSIBLE_COLLECTIONS_PATHS`.
Note that the logic for building the inventory file is written and tested only for the version pinned in the requirements file.