diff --git a/blog/cours/ansible/ansible-les-variables/index.html b/blog/cours/ansible/ansible-les-variables/index.html index 993b9ee8..d4bff1a3 100644 --- a/blog/cours/ansible/ansible-les-variables/index.html +++ b/blog/cours/ansible/ansible-les-variables/index.html @@ -450,42 +450,19 @@
Nous avons vu comment définir des variables, c'est bien beau mais comment les utiliser ?
-Reprenons par exemple nos fichiers d'hôtes ou nous définissons la clé hostname
, on peut constater que celle-ci dispose d'une partie qui reprend le contenu de la clé stage
définie au niveau du groupe.
-On peut donc modifier ces fichiers d'hôtes de la manière suivante pour exploiter cette définition:
Reprenons par exemple nos fichiers de variables d'hôtes ou nous définissons la clé hostname
, on peut constater que celle-ci dispose d'une partie qui reprend le contenu de la clé stage
définie au niveau du groupe.
+On peut donc les modifier de la manière suivante pour exploiter cette définition:
hostname: "web-{{ stage }}-01"
-Allons ensuite modifier notre playbook (webservers.yml
) pour utiliser ces variables de la manière suivante:
---
-- hosts: webservers
-
- pre_tasks:
- - name: Updating APT cache index
- ansible.builtin.apt:
- update_cache: yes
-
- tasks:
- # NGINX
- - name: Install Nginx web server
- ansible.builtin.apt:
- name: nginx
- state: present
-
- - name: Nginx status configuration file
- ansible.builtin.copy:
- src: nginx/status.conf
- dest: /etc/nginx/conf.d/status.conf
- notify:
- - restart_nginx
-
- # CONFIG
- - name: Set a hostname
- ansible.builtin.hostname:
- name: "{{ hostname }}"
-
- handlers:
- - name: restart_nginx
- ansible.builtin.service:
- name: nginx
- state: restarted
+Allons ensuite modifier notre fichier (common.yml
) pour utiliser ces variables de la manière suivante:
---
+- name: Updating APT cache index
+ ansible.builtin.apt:
+ update_cache: yes
+# Setting hostname
+- name: Set a hostname
+ ansible.builtin.hostname:
+ name: "{{ hostname }}"
+Notre tâche vient ici « consommer » la variable hostname
et l'utiliser comme paramètre du module Ansible.
Sujet étroitement lié à l'utilisation des variables, les templates au sens d'Ansible sont des fichiers un peu particuliers dont le contenu peut-être défini dynamiquement (par opposition notamment à l'utilisation de fichiers de configuration « statiques ») comme nous avons pu le voir dans la partie playbook.
Il faut également savoir qu'Ansible s'appuie sur le moteur de template Jinja2 issu du monde Python qui pourrait être comparé à Twig pour PHP, Pebble pour Java, Liquid pour RoR ou encore DotLiquid pour .Net.
diff --git a/blog/rss.xml b/blog/rss.xml index d1f6c56f..bbe2ea85 100644 --- a/blog/rss.xml +++ b/blog/rss.xml @@ -5,7 +5,7 @@