fr:rapports:2022:11-11
Différences
Ci-dessous, les différences entre deux révisions de la page.
| Prochaine révision | Révision précédente | ||
| fr:rapports:2022:11-11 [2023/03/18 00:12] – créée hgo | fr:rapports:2022:11-11 [2023/03/18 00:26] (Version actuelle) – hgo | ||
|---|---|---|---|
| Ligne 164: | Ligne 164: | ||
| On enlève la partie `tasks`, `vars`, et `handlers`, et on ajoute (attention à l' | On enlève la partie `tasks`, `vars`, et `handlers`, et on ajoute (attention à l' | ||
| - | ``` | + | ```yaml |
| roles: | roles: | ||
| - nginx | - nginx | ||
| Ligne 176: | Ligne 176: | ||
| Dans `roles/ | Dans `roles/ | ||
| - | ```yml | + | ```yaml |
| - name: Installation de nginx | - name: Installation de nginx | ||
| import_tasks: | import_tasks: | ||
| Ligne 185: | Ligne 185: | ||
| Dans `roles/ | Dans `roles/ | ||
| - | ```yml | + | ```yaml |
| - name: Installation de nginx | - name: Installation de nginx | ||
| package: | package: | ||
| Ligne 194: | Ligne 194: | ||
| Et dans `roles/ | Et dans `roles/ | ||
| - | ```yml | + | ```yaml |
| - name: Configuration de nginx | - name: Configuration de nginx | ||
| template: | template: | ||
| Ligne 212: | Ligne 212: | ||
| Dans le fichier `ansible.cfg`, | Dans le fichier `ansible.cfg`, | ||
| - | ```cfg | + | ```ini |
| roles_path=./ | roles_path=./ | ||
| ``` | ``` | ||
| Ligne 229: | Ligne 229: | ||
| Au final, on déplace ce bout de code qui était dans le fichier `config.yml` vers `main.yml` en dessous de l' | Au final, on déplace ce bout de code qui était dans le fichier `config.yml` vers `main.yml` en dessous de l' | ||
| - | ```yml | + | ```yaml |
| loop: "{{ nginx_domains }}" | loop: "{{ nginx_domains }}" | ||
| loop_control: | loop_control: | ||
| Ligne 246: | Ligne 246: | ||
| On va installer molecule: | On va installer molecule: | ||
| - | ``` | + | ```bash |
| pip install molecule | pip install molecule | ||
| ``` | ``` | ||
| On installe un plugin pour que molecule puisse gérer des VMs vagrant (c'est un provider): | On installe un plugin pour que molecule puisse gérer des VMs vagrant (c'est un provider): | ||
| - | ``` | + | ```bash |
| pip install molecule-vagrant | pip install molecule-vagrant | ||
| ``` | ``` | ||
| Ligne 285: | Ligne 285: | ||
| - verify.yml permet de tester le rôle. On l' | - verify.yml permet de tester le rôle. On l' | ||
| - | On va un peu modifier la configuration de molecule.yml : | + | On va un peu modifier la configuration de molecule.yml : |
| - | ```yml | + | ```yaml |
| - | --- | + | |
| dependency: | dependency: | ||
| name: galaxy | name: galaxy | ||
| Ligne 322: | Ligne 321: | ||
| Pour créer la VM, c'est très compliqué: | Pour créer la VM, c'est très compliqué: | ||
| - | ``` | + | ```bash |
| molecule create | molecule create | ||
| ``` | ``` | ||
| Ligne 331: | Ligne 330: | ||
| Molécule génère tout un tas de fichier dans le dossier suivant: | Molécule génère tout un tas de fichier dans le dossier suivant: | ||
| - | ``` | + | ```bash |
| ls -a ~/ | ls -a ~/ | ||
| ``` | ``` | ||
| Ligne 339: | Ligne 338: | ||
| On voit aussi qu'il y a un dossier `.vagrant` et si on creuse dedans, on retrouve la private key associée à la VM ! Ce sera utile si jamais on doit y accéder en ssh directement. Par exemple si on veut faire du port forwarding, cela peut être pratique. | On voit aussi qu'il y a un dossier `.vagrant` et si on creuse dedans, on retrouve la private key associée à la VM ! Ce sera utile si jamais on doit y accéder en ssh directement. Par exemple si on veut faire du port forwarding, cela peut être pratique. | ||
| - | ``` | + | ```bash |
| ls ~/ | ls ~/ | ||
| ``` | ``` | ||
| Ligne 346: | Ligne 345: | ||
| À partir du dossier du rôle nginx, on lance: | À partir du dossier du rôle nginx, on lance: | ||
| - | ``` | + | ```bash |
| molecule login | molecule login | ||
| ``` | ``` | ||
| Si on a plusieurs VMs, on devra utiliser: | Si on a plusieurs VMs, on devra utiliser: | ||
| - | ``` | + | ```bash |
| molecule login -h <nom de la machine> | molecule login -h <nom de la machine> | ||
| ``` | ``` | ||
| Ligne 361: | Ligne 360: | ||
| C'est encore plus pareil qu' | C'est encore plus pareil qu' | ||
| - | ``` | + | ```bash |
| molecule destroy | molecule destroy | ||
| ``` | ``` | ||
| Ligne 370: | Ligne 369: | ||
| ### Comment exécuter son rôle avec molecule ? | ### Comment exécuter son rôle avec molecule ? | ||
| - | Dans le dossier molécule, on a un fichier converge.yml. Il est correct tel quel mais on va le modifier pour que ce soit mieux : | + | Dans le dossier molécule, on a un fichier converge.yml. Il est correct tel quel mais on va le modifier pour que ce soit mieux : |
| - | ```yml | + | ```yaml |
| - | --- | + | |
| - name: Converge | - name: Converge | ||
| hosts: all | hosts: all | ||
| become: true | become: true | ||
| + | | ||
| roles: | roles: | ||
| - nginx | - nginx | ||
| Ligne 387: | Ligne 385: | ||
| Par exemple: | Par exemple: | ||
| - | ``` | + | ```bash |
| molecule converge -- -vvv | molecule converge -- -vvv | ||
| ``` | ``` | ||
| Ligne 403: | Ligne 401: | ||
| On utilise le module git: https:// | On utilise le module git: https:// | ||
| - | On ne garde que les dossiers `molecule` et `tasks`. | + | On ne garde que les dossiers `molecule` et `tasks`. |
| - | ``` | + | ```yaml |
| - name: Clonage du repo git | - name: Clonage du repo git | ||
| ansible.builtin.git: | ansible.builtin.git: | ||
| Ligne 425: | Ligne 423: | ||
| C'est l' | C'est l' | ||
| - | ``` | + | ```yaml |
| - | --- | + | |
| - name: Prepare | - name: Prepare | ||
| hosts: all | hosts: all | ||
| become: true | become: true | ||
| + | | ||
| tasks: | tasks: | ||
| - name: Installation de git | - name: Installation de git | ||
| Ligne 443: | Ligne 440: | ||
| Et là on force: | Et là on force: | ||
| - | ``` | + | ```bash |
| molecule prepare -f | molecule prepare -f | ||
| ``` | ``` | ||
| Maintenant que tout est prêt, on peut faire le converge: | Maintenant que tout est prêt, on peut faire le converge: | ||
| - | ``` | + | ```bash |
| molecule converge | molecule converge | ||
| ``` | ``` | ||
| Ligne 458: | Ligne 455: | ||
| Pour l' | Pour l' | ||
| - | ``` | + | ```bash |
| pip install -r requirements.txt | pip install -r requirements.txt | ||
| ``` | ``` | ||
fr/rapports/2022/11-11.1679094754.txt.gz · Dernière modification : de hgo
