Ansible - добавить некоторые вычисляемые свойства в список dict - PullRequest
0 голосов
/ 21 октября 2019

Я использую список dict для объявления какого-либо веб-сайта для настройки на веб-сервере. Есть некоторые вычисляемые свойства, которые я не хочу переопределять каждый раз, когда мне это нужно, поэтому перед использованием я сделал цикл, объявляющий все вычисленные / отсутствующие свойства, чтобы получить правильный список веб-сайтов (dict).

Вот что я сейчас делаю

- name: Set server vhosts
  set_fact:
    websites: "{{ websites|default([]) + [item | combine({'vhost': '200-' + item.name, 'path': path_vhosts + '/' + item.name, 'domain': app_hosts[item.name]})] }}"
  with_items: "{{ vhosts }}"

Но это очень ограничено и будет нечитаемым, если будет установлено слишком много свойств. Как я могу улучшить его, чтобы правильно его построить?

В лучшем случае нет переменных vhosts, мы просто используем веб-сайты и заменяем их.

1 Ответ

0 голосов
/ 21 октября 2019

Q: "Будет невозможно прочитать, если слишком много свойств для установки. Как я могу улучшить его, чтобы построить его правильно?"

A: Он построен правильно. Форматирование может помочь. Смотри ниже

- name: Set server vhosts
  set_fact:
    websites: "{{ websites|default([]) + [item|
                  combine({'vhost': '200-' + item.name,
                           'path': path_vhosts + '/' + item.name,
                           'domain': app_hosts[item.name]
                           }) ] }}"
  loop: "{{ vhosts }}"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...