Обновить данные опоры в пользовательском модуле? - PullRequest
0 голосов
/ 09 апреля 2019

Я хотел бы обновить данные столба в пользовательском модуле.

Справочная информация: я хотел бы установить некоторые значения по умолчанию.

Это сделало бы код в jinja более простым, поскольку яможно использовать одно место для создания значений по умолчанию (в пользовательском модуле) и N безусловного использования данных столба (в jinja).

Например, до сих пор код выглядит следующим образом (в нескольких местах):

{% if pillar.database_replication|default(False) %}

Я хотел бы установить значение по умолчанию в пользовательском модуле.

Тогда этого будет достаточно:

{% if pillar.database_replication %}

Моя цель - сделать файлы sls проще.

Я использую соль версии 2019.2.0.

1 Ответ

1 голос
/ 10 апреля 2019

Я думаю, что вы можете сделать, это иметь файл колонок «по умолчанию», который загружается раньше всех остальных.

Нечто подобное в столбе top.sls

base:
  '*':
     - defaults

# rest of pillar to load

Тогда вы можете иметь по умолчанию.sls

# default pillars for all minions
database_replication: False

Тогда:

  • если миньон не имеет определенного значения: вы получаете значение по умолчанию
  • если у миньона есть определенное значение, оно устанавливается после загрузки «значений по умолчанию», поэтому оно переопределяет его, и вы получаете конкретное значение миньона
...