javiergayala.users
javiergayala.users
Ceci est un rôle qui crée des utilisateurs sur des serveurs.
Variables du rôle
users_list: liste contenant des dictionnaires d’utilisateurs à ajoutername: nom d'utilisateur à créergroups: liste délimitée par des virgules des groupes secondaires. Par défaut, aucun.ssh_key: chaîne de texte contenant la clé ssh publique de l'utilisateur qui sera placée dans/home/$USER/.ssh/authorized_keyssudoers: si défini suryes, l'utilisateur sera ajouté au fichier sudoers du serveur.sudo_opts: dictionnaire contenant les options à utiliser pour le fichier sudoers.passwordless: (Booléen) par défaut à "False". Définir sur "True" pour permettre aux commandessudode ne pas demander de mot de passe.hosts: par défaut àALL. Hôtes sur lesquels l'utilisateur est autorisé à exécutersudo.run_as: par défaut à(ALL). Utilisateurs autorisés à exécuter des commandes sudo.commands: par défaut àALL. Commandes que l'utilisateur est autorisé à exécuter avecsudo.requiretty: (Booléen) non défini par défaut. Définir surFalsepour désactiver l'exigence d'un TTY lorsque vous utilisez sudo.
user_sshkey_exclusive: par défaut àno. Le définir suryesindique à ansible de gérer les clés dans le fichierauthorized_keyset de supprimer celles qui ne sont pas définies dans le play.use_os_prompt: par défaut àno. Le définir suryesouTruefera en sorte que cet utilisateur ne utilise PAS l'invite bash spécialisée. Cela est utile pour les comptes de service, comme le compte de déploiementjenkinsourswebteam, ou tout compte qui n'utilise pas unTTY.
users_list:
- name: deployment
groups: apache
ssh_key: >
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA6NF8iallvQVp22WDkTkyrtvp9eWW6A8YVr+kz4TjGY
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
RdK8jlqm8tehUc9c9WhQ== clé publique non sécurisée vagrant
sudoers: "yes"
sudo_opts:
passwordless: "True"
hosts: "ALL"
run_as: "(ALL)"
commands: "ALL"
requiretty: "False"
use_os_prompt: "yes"
- name: user1
ssh_key: https://github.com/javiergayala.keys
sudoers: "no"
- name: user2
Exemple de Playbook
- hosts: servers
roles:
- { role: javiergayala.users, users_list: [{ name: user1 }] }
Test
Vous aurez besoin de ce qui suit pour tester et exécuter ce rôle :
Il est fortement recommandé d'utiliser un virtualenv pour les tests :
PYENV_HOME=$WORKSPACE/.pyenv/
# Supprimer le virtualenv déjà construit
if [ -d $PYENV_HOME ]; then
rm -rf $PYENV_HOME
fi
# Créer un virtualenv et installer les paquets nécessaires
virtualenv --no-site-packages $PYENV_HOME
. $PYENV_HOME/bin/activate
pip install -r pip-requirements.txt
molecule test --all
Licence
BSD
Informations sur l'auteur
Javier Ayala [email protected]
ansible-galaxy install javiergayala.users