Updated Readme to french :p
This commit is contained in:
parent
01adf37d9c
commit
326d802139
71
README.md
71
README.md
|
@ -1,8 +1,8 @@
|
|||
## Configuration
|
||||
|
||||
1. Install Ansible on your machine (`pacman -S ansible`).
|
||||
2. You should have an account with sudoers rights on the target.
|
||||
3. Add an host to your `~/.ssh/config` to simplify the login process:
|
||||
1. Installer Ansible sur sa machine (`pacman -S ansible`).
|
||||
2. Avoir un compte avec les droits sudo sur la machine cible.
|
||||
3. Ajouter un hôte à son `~/.ssh/config` pour simplifier la connexion :
|
||||
|
||||
```
|
||||
Host aperture-labs
|
||||
|
@ -10,9 +10,54 @@ Host aperture-labs
|
|||
User <username>
|
||||
```
|
||||
|
||||
## Use a role
|
||||
|
||||
Usually, it looks like this:
|
||||
## Fonctionnement général
|
||||
|
||||
On défini d'une part un inventaires (des machines), avec des variables spécifiques à ces machines,
|
||||
et d'autre part des rôles, qui seront des états à atteindre, en effectuant des actions.
|
||||
|
||||
### Inventaire
|
||||
|
||||
On défini dans un fichier, ici `inventory/main.yml` un host.
|
||||
Généralement c'est une IP + user + port ssh, etc, mais on profite de la config SSH pour ne mettre que l'alias.
|
||||
|
||||
Dans `inventory/host_vars/aperture-labs.yml`, on défini des variables spécifiques à l'host `aperture-labs`.
|
||||
Aujourd'hui on a qu'un serveur, donc tout va bien. Dans le cas où on en a plusieurs, on peut aussi définir des variables dans `inventory/group_vars`.
|
||||
Dans ce cas, elles seront communes au groupe.
|
||||
|
||||
### Rôle
|
||||
|
||||
Un rôle se compose de plusieurs dossiers et fichiers :
|
||||
|
||||
```
|
||||
rolename
|
||||
├── files
|
||||
| └── static_file.cfg
|
||||
├── defaults
|
||||
│ └── vars.yml
|
||||
├── tasks
|
||||
│ └── main.yml
|
||||
├── templates
|
||||
| └── dynamic_file.cfg
|
||||
└── vars
|
||||
└── vars.yml
|
||||
```
|
||||
|
||||
Le principal est `tasks` : il contient la liste des opérations à effectuer.
|
||||
Pour les grosses tâches, on peut écrire plusieurs fichiers et les appeler dans `main.yml`.
|
||||
|
||||
Dans `files`, on retrouve les fichiers de config à copier tels quels.
|
||||
|
||||
Dans `templates`, on aura les fichiers qui devront être templatisés par Jinja2.
|
||||
|
||||
Dans `default` et `vars`, on place des variables spécifiques au rôle. `vars` est prioritaire sur `host_vars` et `group_vars`, tandis que `defaults` ne l'est pas.
|
||||
Cf [la documentation](https://docs.ansible.com/ansible/latest/user_guide/playbooks_variables.html#variable-precedence-where-should-i-put-a-variable)
|
||||
pour avoir une idée de l'ordre de priorité.
|
||||
|
||||
|
||||
## Utiliser un rôle
|
||||
|
||||
Généralement, ça ressemble à ça :
|
||||
|
||||
```
|
||||
# Dummy try with --check
|
||||
|
@ -21,16 +66,18 @@ ansible-playbook -i inventory/main.yml role.yml -vv --diff --check --ask-become-
|
|||
ansible-playbook -i inventory/main.yml role.yml -v --ask-become-pass
|
||||
```
|
||||
|
||||
The file `inventory/main.yml` already contains an host: the main VPS, `aperture-labs`.
|
||||
See [Configuration](#Configuration) to add the host to your SSH config.
|
||||
On sélectionne un inventaire avec `-i`, on lui applique un (ou plusieurs) rôle.
|
||||
|
||||
Dans les options intéressantes, on a :
|
||||
|
||||
- `-v` : pour la verbosité, on peut monter à `-vvvvv`
|
||||
- `--diff` : affiche les différences entre l'étât actuel et celui qu'on cherche à atteindre
|
||||
- `--check` : fait un *dry-run* sans modifier l'existant
|
||||
- `--ask-become-pass` : demande le mot de passe sudo sur le serveur distant
|
||||
|
||||
|
||||
## Variables
|
||||
|
||||
Variables are defined in `inventory/host_vars/aperture-labs.yml`.
|
||||
They can be overriden, see [the documentation](https://docs.ansible.com/ansible/latest/user_guide/playbooks_variables.html#variable-precedence-where-should-i-put-a-variable).
|
||||
|
||||
They may be mandatory for execution of roles.
|
||||
|
||||
| Variable name | Comment |
|
||||
|------------------|----------------------------------------------|
|
||||
| sites_enabled | List of sites to enable from sites-available |
|
||||
|
|
Loading…
Reference in New Issue