mirror of
https://github.com/ansible-collections/community.general.git
synced 2025-10-07 08:54:01 -07:00
Fix inventory cache interface (#50446)
* Replace InventoryFileCacheModule with a better developer-interface Use new interface for inventory plugins with backwards compatibility Auto-update the backing cache-plugin if the cache has changed after parsing the inventory plugin * Update CacheModules to use the config system and add a deprecation warning if they are being imported directly rather than using cache_loader * Fix foreman inventory caching * Add tests * Add integration test to check that fact caching works normally with cache plugins using ansible.constants and inventory caching provides a helpful error for non-compatible cache plugins * Add some developer documentation for inventory and cache plugins * Add user documentation for inventory caching * Add deprecation docs * Apply suggestions from docs review * Add changelog
This commit is contained in:
parent
831f068f98
commit
9687879840
24 changed files with 831 additions and 86 deletions
|
@ -23,9 +23,13 @@ options:
|
|||
description:
|
||||
- Cache plugin to use for the inventory's source data.
|
||||
type: str
|
||||
default: memory
|
||||
env:
|
||||
- name: ANSIBLE_CACHE_PLUGIN
|
||||
- name: ANSIBLE_INVENTORY_CACHE_PLUGIN
|
||||
ini:
|
||||
- section: defaults
|
||||
key: fact_caching
|
||||
- section: inventory
|
||||
key: cache_plugin
|
||||
cache_timeout:
|
||||
|
@ -34,8 +38,11 @@ options:
|
|||
default: 3600
|
||||
type: int
|
||||
env:
|
||||
- name: ANSIBLE_CACHE_PLUGIN_TIMEOUT
|
||||
- name: ANSIBLE_INVENTORY_CACHE_TIMEOUT
|
||||
ini:
|
||||
- section: defaults
|
||||
key: fact_caching_timeout
|
||||
- section: inventory
|
||||
key: cache_timeout
|
||||
cache_connection:
|
||||
|
@ -43,8 +50,23 @@ options:
|
|||
- Cache connection data or path, read cache plugin documentation for specifics.
|
||||
type: str
|
||||
env:
|
||||
- name: ANSIBLE_CACHE_PLUGIN_CONNECTION
|
||||
- name: ANSIBLE_INVENTORY_CACHE_CONNECTION
|
||||
ini:
|
||||
- section: defaults
|
||||
key: fact_caching_connection
|
||||
- section: inventory
|
||||
key: cache_connection
|
||||
cache_prefix:
|
||||
description:
|
||||
- Prefix to use for cache plugin files/tables
|
||||
default: ansible_inventory_
|
||||
env:
|
||||
- name: ANSIBLE_CACHE_PLUGIN_PREFIX
|
||||
- name: ANSIBLE_INVENTORY_CACHE_PLUGIN_PREFIX
|
||||
ini:
|
||||
- section: default
|
||||
key: fact_caching_prefix
|
||||
- section: inventory
|
||||
key: cache_prefix
|
||||
'''
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue