Comment puis-je ajouter un utilisateur à des groupes supplémentaires dans ansible? Je ne veux pas que l'ensemble de groupes existant soit remplacé, ajoutez uniquement l'utilisateur au groupe Sudo
.
Selon le module utilisateur vous pouvez utiliser ceci:
- name: Adding user {{ user }}
user: name={{ user }}
group={{ user }}
Shell=/bin/bash
password=${password}
groups=Sudo
append=yes
Vous pouvez simplement ajouter le groups=groupname
et append=yes
pour les ajouter à un utilisateur existant lorsque vous les créez
Si {{ user }}
existe déjà dans le système, vous devez utiliser ce qui suit pour l'ajouter simplement à un groupe:
- name: adding existing user '{{ user }}' to group Sudo
user:
name: '{{ user }}'
groups: Sudo
append: yes
Pour l'ajouter à un ensemble de groupes, vous pouvez utiliser une liste séparée par des virgules, par exemple groups: admin,Sudo
.
Attention, si vous omettez append: yes
, votre utilisateur sera supprimé de tous les autres groupes, selon la page de manuel usermod . Cela serait utile si vous souhaitez utiliser une liste spécifique de groupes auxquels un utilisateur doit appartenir.
Veuillez noter que {{ user }}
a été remplacé par {{ ansible_user }}
dans les versions récentes d'Ansible ( https://github.com/ansible/ansible/blob/c600ab81ee/lib/ansible/playbook/play_context.py#L46-L55 ). Vous pouvez également utiliser ansible_ssh_user
- c'est le même. Ainsi, le code mis à jour de Teresa e Junior ressemble à:
- name: adding existing user "{{ ansible_user }}" to group Sudo user: name: "{{ ansible_user }}" groups: Sudo append: yes become: yes
Plus de correctifs:
become: yes
car il a besoin de privilèges administratifs pour modifier le fichier des groupes