
Add basic information and examples for the action, callback, filter, and lookup plugins provided by this repo. Partial-Bug: 1579091 Change-Id: If7cea759bb790c6f6d266eff560ac7a67309219d
171 lines
5.6 KiB
ReStructuredText
171 lines
5.6 KiB
ReStructuredText
=======
|
|
Lookups
|
|
=======
|
|
|
|
py_pkgs
|
|
~~~~~~~
|
|
The ``py_pkgs`` lookup crawls a given list of directories to parse variables
|
|
and generate lists of Python packages, git repo information and Ansible group
|
|
memberships which is used within OpenStack-Ansible's repo_build role to build
|
|
wheels and virtual environments.
|
|
|
|
Files and paths containing the following strings are evaluated:
|
|
- test-requirements.txt
|
|
- dev-requirements.txt
|
|
- requirements.txt
|
|
- global-requirements.txt
|
|
- global-requirement-pins.txt
|
|
- /defaults/
|
|
- /vars/
|
|
- /user_*
|
|
|
|
Variables parsed within any evaluated files include:
|
|
- service_pip_dependencies
|
|
- pip_common_packages
|
|
- pip_container_packages
|
|
- pip_packages
|
|
|
|
Example
|
|
-------
|
|
|
|
.. code-block:: yaml
|
|
|
|
- name: Load local packages
|
|
debug:
|
|
msg: "Loading Packages"
|
|
with_py_pkgs: "{{ pkg_locations }}"
|
|
register: local_packages
|
|
vars:
|
|
pkg_locations:
|
|
- "/etc/ansible/roles/os_nova"
|
|
# => {
|
|
# "packages": [
|
|
# "httplib2",
|
|
# "keystonemiddleware",
|
|
# "libvirt-python",
|
|
# "nova",
|
|
# "nova-lxd",
|
|
# "nova-powervm",
|
|
# "pyasn1-modules",
|
|
# "pycrypto",
|
|
# "pylxd",
|
|
# "pymysql",
|
|
# "python-ironicclient",
|
|
# "python-keystoneclient",
|
|
# "python-memcached",
|
|
# "python-novaclient",
|
|
# "virtualenv",
|
|
# "virtualenv-tools",
|
|
# "websockify"
|
|
# ],
|
|
# "remote_package_parts": [
|
|
# {
|
|
# "egg_name": "nova",
|
|
# "fragment": null,
|
|
# "name": "nova",
|
|
# "original":
|
|
# "git+https://git.openstack.org/openstack/nova@stable/newton#egg=nova&gitname=nova&projectgroup=all",
|
|
# "project_group": "all",
|
|
# "url": "https://git.openstack.org/openstack/nova",
|
|
# "version": "stable/newton"
|
|
# },
|
|
# {
|
|
# "egg_name": "nova_lxd",
|
|
# "fragment": null,
|
|
# "name": "nova-lxd",
|
|
# "original":
|
|
# "git+https://git.openstack.org/openstack/nova-lxd@stable/newton#egg=nova_lxd&gitname=nova-lxd&projectgroup=all",
|
|
# "project_group": "all",
|
|
# "url": "https://git.openstack.org/openstack/nova-lxd",
|
|
# "version": "stable/newton"
|
|
# },
|
|
# {
|
|
# "egg_name": "novnc",
|
|
# "fragment": null,
|
|
# "name": "novnc",
|
|
# "original":
|
|
# "git+https://github.com/kanaka/novnc@master#egg=novnc&gitname=novnc&projectgroup=all",
|
|
# "project_group": "all",
|
|
# "url": "https://github.com/kanaka/novnc",
|
|
# "version": "master"
|
|
# },
|
|
# {
|
|
# "egg_name": "spice_html5",
|
|
# "fragment": null,
|
|
# "name": "spice-html5",
|
|
# "original":
|
|
# "git+https://github.com/SPICE/spice-html5@master#egg=spice_html5&gitname=spice-html5&projectgroup=all",
|
|
# "project_group": "all",
|
|
# "url": "https://github.com/SPICE/spice-html5",
|
|
# "version": "master"
|
|
# }
|
|
# ],
|
|
# "remote_packages": [
|
|
# "git+https://git.openstack.org/openstack/nova-lxd@stable/newton#egg=nova_lxd&gitname=nova-lxd&projectgroup=all",
|
|
# "git+https://git.openstack.org/openstack/nova@stable/newton#egg=nova&gitname=nova&projectgroup=all",
|
|
# "git+https://github.com/SPICE/spice-html5@master#egg=spice_html5&gitname=spice-html5&projectgroup=all",
|
|
# "git+https://github.com/kanaka/novnc@master#egg=novnc&gitname=novnc&projectgroup=all"
|
|
# ],
|
|
# "role_packages": {
|
|
# "os_nova": [
|
|
# "httplib2",
|
|
# "keystonemiddleware",
|
|
# "libvirt-python",
|
|
# "nova",
|
|
# "nova-lxd",
|
|
# "nova-powervm",
|
|
# "pyasn1-modules",
|
|
# "pycrypto",
|
|
# "pylxd",
|
|
# "pymysql",
|
|
# "python-ironicclient",
|
|
# "python-keystoneclient",
|
|
# "python-memcached",
|
|
# "python-novaclient",
|
|
# "virtualenv",
|
|
# "virtualenv-tools",
|
|
# "websockify"
|
|
# ]
|
|
# },
|
|
# "role_project_groups": {
|
|
# "os_nova": "nova_all"
|
|
# },
|
|
# "role_requirement_files": {},
|
|
# "role_requirements": {
|
|
# "os_nova": {
|
|
# "nova_compute_ironic_pip_packages": [
|
|
# "python-ironicclient"
|
|
# ],
|
|
# "nova_compute_lxd_pip_packages": [
|
|
# "nova-lxd",
|
|
# "pylxd"
|
|
# ],
|
|
# "nova_compute_pip_packages": [
|
|
# "libvirt-python"
|
|
# ],
|
|
# "nova_compute_powervm_pip_packages": [
|
|
# "nova-powervm",
|
|
# "pyasn1-modules"
|
|
# ],
|
|
# "nova_novnc_pip_packages": [
|
|
# "websockify"
|
|
# ],
|
|
# "nova_pip_packages": [
|
|
# "keystonemiddleware",
|
|
# "nova",
|
|
# "pycrypto",
|
|
# "pymysql",
|
|
# "python-keystoneclient",
|
|
# "python-memcached",
|
|
# "python-novaclient"
|
|
# ],
|
|
# "nova_requires_pip_packages": [
|
|
# "httplib2",
|
|
# "python-keystoneclient",
|
|
# "virtualenv",
|
|
# "virtualenv-tools"
|
|
# ],
|
|
# "project_group": "nova_all"
|
|
# }
|
|
# }
|