Инструменты пользователя

Инструменты сайта


ansible:constr

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Следующая версия
Предыдущая версия
ansible:constr [2023/08/05 05:11]
admin создано
ansible:constr [2024/07/10 08:35] (текущий)
admin
Строка 107: Строка 107:
  
 ===== Переменные ===== ===== Переменные =====
 +
 +
 +==== Словари ====
 +Элементы доступны по словесному ключу, а не числу как в случае со списками\\
 +
 +<code yaml>
 +  vars:
 +    rockers:
 +      drums: John Bonham
 +      bass: John Paul Jones
 +      guitar: Jimmy Page
 +      vocals: Robert Plant
 +</code>
 +Обращаться следует через квадратные скобки, точки тоже работают но не рекоммендуется\\
 +Часто комбинируются списки и словари\\
 +
 +
 +=== Фильтр ===
 +Фильтр значений можно осуществить функцией **"selectattr()"**\\
 +В нее передается условие отбора, например **"{{ users | selectattr('password', 'undefined') }}"** отбирает записи у которых поле "password" просто задано, т.к. "undefined"\\
 +Можно сравнение типа **"selectattr("type", "equalto(match,search)", "floating")"**\\
 +Затем, для вывода значения, передаем далее по конвееру в ф-ю "map" (| map(attribute='email'))\\
 +<code yaml>
 +{{ my_dict | selectattr("type", "match", "^floating$") | map(attribute='addr') }}
 +
 +# Еще пример
 +{{ smb_client_shares | selectattr('name','equalto','AppServerLogs') | map(attribute='uri') }} 
 +</code>
 +
 +
 +
  
 <details> <details>
-<summary> :!: **Списки/словари**</summary>+<summary> :!: Образцы **Списки/словари**</summary>
 Примеры объявленных переменных: Примеры объявленных переменных:
 <code yml> <code yml>
ansible/constr.1691212265.txt.gz · Последнее изменение: 2023/08/05 05:11 — admin