community.general.merge_variables поиск – объединение переменных, имена которых соответствуют заданному шаблону
Примечание
Этот плагин поиска входит в сборку community.general (версия 9.5.0).
У вас, возможно, уже установлена эта сборка, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.
Чтобы установить её, используйте: ansible-galaxy collection install community.general.
Чтобы использовать её в книге задач, укажите: community.general.merge_variables.
Добавлена в community.general 6.5.0
Описание
- Этот поиск возвращает объединенный результат всех переменных в области видимости, которые соответствуют заданным префиксам, суффиксам или регулярным выражениям (по желанию).
Термины
Параметр | Комментарии |
|---|---|
Термины список / элементы=строка / обязательно | В зависимости от значения |
Параметры ключевых слов
Это описывает параметры ключевых слов поиска. Это значения key1=value1, key2=value2 и так далее в следующих примерах: lookup('community.general.merge_variables', key1=value1, key2=value2, ...) и query('community.general.merge_variables', key1=value1, key2=value2, ...).
Параметр | Комментарии |
|---|---|
groups список / элементы=строка добавлено в community.general 8.5.0 | Искать переменные по хостам, которые принадлежат указанным группам. Это позволяет собирать фрагменты конфигурации с разных хостов (например, услугу на одном хосте и базу данных на другом хосте). |
initial_value любой | Начальное значение для начала. |
override строка | Возвращать ошибку, выводить предупреждение или игнорировать её, когда ключ будет перезаписан. По умолчанию Когда Выбор:
Настройка:
|
pattern_type строка | Изменить способ поиска заданного шаблона. Выбор:
Настройка:
|
Примечания
Примечание
- Когда параметры ключевых слов и позиционные параметры используются вместе, позиционные параметры должны быть перечислены перед параметрами ключевых слов:
lookup('community.general.merge_variables', term1, term2, key1=value1, key2=value2)иquery('community.general.merge_variables', term1, term2, key1=value1, key2=value2)
Примеры
# Some example variables, they can be defined anywhere as long as they are in scope
test_init_list:
- "list init item 1"
- "list init item 2"
testa__test_list:
- "test a item 1"
testb__test_list:
- "test b item 1"
testa__test_dict:
ports:
- 1
testb__test_dict:
ports:
- 3
# Merge variables that end with '__test_dict' and store the result in a variable 'example_a'
example_a: "{{ lookup('community.general.merge_variables', '__test_dict', pattern_type='suffix') }}"
# The variable example_a now contains:
# ports:
# - 1
# - 3
# Merge variables that match the '^.+__test_list$' regular expression, starting with an initial value and store the
# result in a variable 'example_b'
example_b: "{{ lookup('community.general.merge_variables', '^.+__test_list$', initial_value=test_init_list) }}"
# The variable example_b now contains:
# - "list init item 1"
# - "list init item 2"
# - "test a item 1"
# - "test b item 1"
Возвращаемое значение
Ключ | Описание |
|---|---|
Возвращаемое значение любой | В случае, если поиск соответствует элементам списка, будет возвращен список. В случае, если поиск соответствует словарям, будет возвращен словарь. Возвращаемое значение: успех |
Ссылки на сборку
© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/community/general/merge_variables_lookup.html