Spec-Zone.ru › Ansible 2.6

подэлементы - обход вложенных ключей из списка словарей

Новое в версии 1.4.

  • Обзор
  • Параметры
  • Примеры
  • Возвращаемые значения
  • Статус
    • Автор

Обзор

  • Subelements проходит по списку хэшей (также словарей) и затем обходит список с заданным (вложенным под-)ключом внутри этих записей.

Параметры

Параметр Варианты/Значения по умолчанию Настройка Комментарии
_terms
обязательно
кортеж из списка словарей и ключа словаря для извлечения
skip_missing По умолчанию:
"нет"
Если установлено в True, плагин поиска пропустит элементы списков, которые не содержат заданный подключ. Если False, плагин выдаст ошибку и сообщит об отсутствии подключа.

Примеры

- name: show var structure as it is needed for example to make sense
  hosts: all
  vars:
    users:
      - name: alice
        authorized:
          - /tmp/alice/onekey.pub
          - /tmp/alice/twokey.pub
        mysql:
            password: mysql-password
            hosts:
              - "%"
              - "127.0.0.1"
              - "::1"
              - "localhost"
            privs:
              - "*.*:SELECT"
              - "DB1.*:ALL"
        groups:
          - wheel
      - name: bob
        authorized:
          - /tmp/bob/id_rsa.pub
        mysql:
            password: other-mysql-password
            hosts:
              - "db1"
            privs:
              - "*.*:SELECT"
              - "DB2.*:ALL"
  tasks:
    - name: Set authorized ssh key, extracting just that data from 'users'
      authorized_key:
        user: "{{ item.0.name }}"
        key: "{{ lookup('file', item.1) }}"
      with_subelements:
         - "{{ users }}"
         - authorized

    - name: Setup MySQL users, given the mysql hosts and privs subkey lists
      mysql_user:
        name: "{{ item.0.name }}"
        password: "{{ item.0.mysql.password }}"
        host: "{{ item.1 }}"
        priv: "{{ item.0.mysql.privs | join('/') }}"
      with_subelements:
        - "{{ users }}"
        - mysql.hosts

    - name: list groups for user that have them, dont error if they don't
      debug: var=item
      with_list: "{{lookup('subelements', users, 'groups', 'skip_missing=True')}}"

Возвращаемые значения

Общие значения возврата описаны здесь, следующие являются полями, уникальными для этого поиска:

Ключ Возвращённое значение Описание
_list
список извлечённых подэлементов



Статус

Автор

  • Serge van Ginderachter <serge@vanginderachter.be>

Подсказка

Если вы заметили какие-либо проблемы в этой документации, вы можете отредактировать этот документ, чтобы улучшить его.

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.6/plugins/lookup/subelements.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API