From ce392dd86e35ba33bcdb76279f785f296008a1db Mon Sep 17 00:00:00 2001 From: Matt Clay Date: Mon, 27 Jan 2025 17:59:29 -0800 Subject: [PATCH] Revert "generator: add support for extra vars usage (#84544)" (#84619) This reverts commit 186c716af1d0a0a4745d5d85c66e91b926327879. --- changelogs/fragments/generator_use_extra.yml | 3 --- lib/ansible/plugins/inventory/generator.py | 21 +--------------- .../targets/inventory_generator/aliases | 1 - .../extra_vars_generator.yml | 8 ------ .../targets/inventory_generator/generator.yml | 10 -------- .../inventory_generator/generator_parent.yml | 18 ------------- .../targets/inventory_generator/runme.sh | 25 ------------------- 7 files changed, 1 insertion(+), 85 deletions(-) delete mode 100644 changelogs/fragments/generator_use_extra.yml delete mode 100644 test/integration/targets/inventory_generator/aliases delete mode 100644 test/integration/targets/inventory_generator/extra_vars_generator.yml delete mode 100644 test/integration/targets/inventory_generator/generator.yml delete mode 100644 test/integration/targets/inventory_generator/generator_parent.yml delete mode 100755 test/integration/targets/inventory_generator/runme.sh diff --git a/changelogs/fragments/generator_use_extra.yml b/changelogs/fragments/generator_use_extra.yml deleted file mode 100644 index f5a1d4028d6..00000000000 --- a/changelogs/fragments/generator_use_extra.yml +++ /dev/null @@ -1,3 +0,0 @@ ---- -minor_changes: - - generator - add support for extra vars (https://github.com/ansible/ansible/issues/83270). diff --git a/lib/ansible/plugins/inventory/generator.py b/lib/ansible/plugins/inventory/generator.py index 84db79730c4..49c8550403f 100644 --- a/lib/ansible/plugins/inventory/generator.py +++ b/lib/ansible/plugins/inventory/generator.py @@ -32,20 +32,6 @@ DOCUMENTATION = """ description: - A dictionary of layers, with the key being the layer name, used as a variable name in the C(host) C(name) and C(parents) keys. Each layer value is a list of possible values for that layer. - use_extra_vars: - version_added: '2.19' - description: - - Merge extra vars into the available variables for composition (highest precedence). - type: bool - default: false - ini: - - section: inventory_plugins - key: use_extra_vars - - section: inventory_plugin_generator - key: use_extra_vars - env: - - name: ANSIBLE_INVENTORY_USE_EXTRA_VARS - - name: ANSIBLE_GENERATOR_USE_EXTRA_VARS """ EXAMPLES = """ @@ -91,7 +77,6 @@ from itertools import product from ansible import constants as C from ansible.errors import AnsibleParserError from ansible.plugins.inventory import BaseInventoryPlugin -from ansible.utils.vars import load_extra_vars class InventoryModule(BaseInventoryPlugin): @@ -138,14 +123,10 @@ class InventoryModule(BaseInventoryPlugin): super(InventoryModule, self).parse(inventory, loader, path, cache=cache) config = self._read_config_data(path) - if self.get_option('use_extra_vars'): - extra_vars = load_extra_vars(loader) - else: - extra_vars = {} + template_inputs = product(*config['layers'].values()) for item in template_inputs: template_vars = dict() - template_vars.update(extra_vars) for i, key in enumerate(config['layers'].keys()): template_vars[key] = item[i] host = self.template(config['hosts']['name'], template_vars) diff --git a/test/integration/targets/inventory_generator/aliases b/test/integration/targets/inventory_generator/aliases deleted file mode 100644 index 70a7b7a9f32..00000000000 --- a/test/integration/targets/inventory_generator/aliases +++ /dev/null @@ -1 +0,0 @@ -shippable/posix/group5 diff --git a/test/integration/targets/inventory_generator/extra_vars_generator.yml b/test/integration/targets/inventory_generator/extra_vars_generator.yml deleted file mode 100644 index ca6071cc041..00000000000 --- a/test/integration/targets/inventory_generator/extra_vars_generator.yml +++ /dev/null @@ -1,8 +0,0 @@ -plugin: ansible.builtin.generator -use_extra_vars: True -hosts: - name: "{{ region }}_{{ machine_type }}" -layers: - machine_type: - - web - - db diff --git a/test/integration/targets/inventory_generator/generator.yml b/test/integration/targets/inventory_generator/generator.yml deleted file mode 100644 index fe0edc3a494..00000000000 --- a/test/integration/targets/inventory_generator/generator.yml +++ /dev/null @@ -1,10 +0,0 @@ -plugin: ansible.builtin.generator -hosts: - name: "{{ region }}_{{ machine_type }}" -layers: - machine_type: - - web - - db - region: - - mumbai - - pune diff --git a/test/integration/targets/inventory_generator/generator_parent.yml b/test/integration/targets/inventory_generator/generator_parent.yml deleted file mode 100644 index 70b4518139e..00000000000 --- a/test/integration/targets/inventory_generator/generator_parent.yml +++ /dev/null @@ -1,18 +0,0 @@ -plugin: ansible.builtin.generator -hosts: - name: "{{ application }}_{{ operation }}_runner" - parents: - - name: "{{ environment }}" - vars: - log: "s" -layers: - operation: - - build - - launch - environment: - - dev - - test - - prod - application: - - web - - api diff --git a/test/integration/targets/inventory_generator/runme.sh b/test/integration/targets/inventory_generator/runme.sh deleted file mode 100755 index 60360f7bc69..00000000000 --- a/test/integration/targets/inventory_generator/runme.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/usr/bin/env bash - -set -eux - -ansible-inventory -i generator.yml --graph | tee out.txt - -grep 'mumbai_web' out.txt -grep 'mumbai_db' out.txt -grep 'pune_web' out.txt -grep 'pune_db' out.txt - -ANSIBLE_INVENTORY_USE_EXTRA_VARS=True ansible-inventory -i extra_vars_generator.yml --graph -e "region=pune" - -grep 'pune_web' out.txt -grep 'pune_db' out.txt - -ansible-inventory -i generator_parent.yml --graph | tee out.txt - -grep 'web_build_runner' out.txt -grep 'api_build_runner' out.txt -grep 'web_launch_runner' out.txt -grep 'api_launch_runner' out.txt -grep '@dev' out.txt -grep '@test' out.txt -grep '@prod' out.txt