¿Cómo puedo agregar un usuario a varios grupos en Ansible?

¿Cómo puedo agregar un usuario a varios grupos en Ansible?

No puedo agregar un usuario a varios grupos, sigo recibiendo mensajes: este módulo requiere argumentos clave=valor.

Este es el fragmento de código que estoy probando:

- name: make a new user
  user: name=user
        state=present
        groups="group1", "group2", "group3"
        comment="comment"

La documentación dice: Grupos= Coloca al usuario en esta lista de grupos delimitados por comas. Cuando se establece en la cadena vacía ('groups='), el usuario se elimina de todos los grupos excepto del grupo principal.

Lo intenté con "grupo", "grupo" y sin dos puntos y sigo recibiendo el mismo error.

http://docs.ansible.com/user_module.html

Respuesta1

La sintaxis correcta es:

- name: make a new user
  user: name=user
        state=present
        groups="group1, group2, group3"
        comment="comment"

Respuesta2

Hay dos problemas con el código que publicaste:

  1. Para pasar varios valores a groups, utilice valores separados por comas sin espacios entre ellos:groups: group1,group2
  2. En YAML, cuando colocas cada clave en su propia línea, cambia el =for:

Aquí hay un ejemplo de código de trabajo:

- name: make a new user
  user: 
    name: johnsmith
    state: present
    groups: group1,group2
    comment: "comment"
    append: no # If yes, will only add groups, not set them to just the list in groups.

Respuesta3

Me sale que el grupo "grupo2" no existe. (Pero sin las comillas, eso es para mostrar el espacio extra).

La forma correcta es

groups={{ group }},{{ sudo_group }}

Respuesta4

Las respuestas anteriores son incorrectas. La forma correcta de definir una variable:

groups: group1,group2 

Luego para usar:

action: user groups={{user.groups}}

información relacionada