Как добавить права sudo пользователю, созданному с помощью Ansible?

Как добавить права sudo пользователю, созданному с помощью Ansible?

Какой самый чистый способ сделать это? Попробовал добавить пользователя в группу sudo с помощью модуля users, но Ansible сообщает, что не может найти группу sudo.

решение1

Вместо

- name: create a new user
    user: name=user
          state=present
          groups="group1, group2"
          password={{ password }}
          comment="Comment"

Я сделал

- name: create a new user
    user: name=user
          state=present
          group=primary-group
          groups="sudo"
          password={{ password }}
          comment="Comment"

И пользователь был добавлен в группу sudo.

решение2

- name: Create Deploy user
  user: name={{ deploy }} comment="Deploy User" groups="sudo,admin,{{ deploy }}"
  sudo: yes

Будьте осторожны с пробелами в списке групп... Если они есть, вы получите сообщение «группа не существует».

решение3

groups="admin" создаст добавление пользователя в группы администраторов

решение4

Сделать это традиционным способом Linux с помощью ansible :)

Создайте файл create_user.ymlи добавьте следующий код.
Измените <username>на имя пользователя, которого вы хотите добавить в группу sudo

- name: "run command"
  become: true
  gather_facts: no
  hosts: all
  tasks:
    - name: add user to sudo group
      shell: usermod -aG sudo <username>
      args:
        executable: /bin/bash

Теперь запустите этот сценарий user_create.yml с помощью команды

ansible-playbook -K <filename>.yml

Связанный контент