Foreman / Puppet: Добавление пользователя в sudoers с помощью модуля

Я хотел бы улучшить свои навыки в Foreman и Puppet . Для этого я хотел бы выполнить несколько простых задач.

В моей конфигурации все серверы, принадлежащие группе хостов «Базовая», должны получить базовую настройку, включая добавление нового пользователя и его добавление в файл sudsers.

] Для этого я использую example42 / sudo

Теперь я хотел бы добавить пользователя, добавив файл в каталог /etc/sudoers.d/ .

документация говорит мне использовать sudo :: directive .

Это пример:

sudo::directive { 'jenkins':
  content => "jenkins ALL=NOPASSWD: /usr/sbin/puppi \n", # Double quotes and newline (\n) are needed here
}

Теперь мой вопрос: я знаю, как добавить класс в группу хостов. Я также знаю, как переопределить параметры.

Моя текущая конфигурация для группы хостов "Basis" выглядит так:

Foreman config

Но как я могу использовать sudo :: directive в Foreman?

0
задан 18 January 2016 в 23:55
1 ответ

Классификаторы внешних узлов, такие как Foreman, не предназначены для прямого объявления отдельных ресурсов. Вы можете сделать пару вещей:

  • определить значения глобальных переменных
  • объявить классы
  • определить значения параметров класса

Поскольку используемый вами модуль не предлагает параметр класса, который принимает хэш-значение для описания некоторых начальных ресурсов, вы не можете сделать это напрямую с помощью ENC.

Вы можете создать собственный модуль, который принимает значение хеш-функции и объявляет для вас ресурсы sudo :: directive , используя ] create_resources .

1
ответ дан 4 December 2019 в 16:43

Теги

Похожие вопросы