Как создать модуль ANSIBLE модуль или плагин для динамического создания файла, чтобы подтолкнуть - PullRequest
0 голосов
/ 22 мая 2019

Я использую ansible для развертывания файла sudoers на всех серверах, права sudoers хранятся в центральном хранилище и динамически генерируются с помощью библиотек python, установленных локально на узле управления.

Я пытался создать скрипт Python в папке библиотек на управляющем узле ... но сейчас не знаю, как передать файл, сгенерированный в переменной a кода ниже, на удаленные хосты в / etc / sudoers.

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

from sudo_manager.objects import Host
import sudo_manager
h = Host.get_host('hostname')
a = sudo_manager.render_sudoers(h, 'sudoers.j2')

любая помощь будет оценена.

1 Ответ

0 голосов
/ 22 мая 2019

Лучшим вариантом будет использовать модуль template , учитывая, что файл sudoers.j2 является шаблоном Jinja2.

- hosts: remote_hosts
  tasks:
    - template:
        src: sudoers.j2
        dest: /etc/sudoers

Ansible может использовать sudo увеличить привилегии .Будьте осторожны, чтобы не запереться.

...