You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/books/learning_ansible/09-working-with-jinja-template.fr.md
+13-15Lines changed: 13 additions & 15 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,21 +1,19 @@
1
1
---
2
-
title: Utilisation de Modèle Jinja
2
+
title: Utilisation de Modèle Jinja avec Ansible
3
3
author: Srinivas Nishant Viswanadha
4
4
contributors: Steven Spencer, Antoine Le Morvan, Ganna Zhyrnova
5
5
---
6
6
7
-
# Chapitre : Les Templates Jinja pour Ansible
8
-
9
7
## Introduction
10
8
11
-
Ansible fournit un moyen puissant et simple de gérer les configurations à l'aide de modèles Jinja via le module `template` intégré. Ce chapitre explore deux façons essentielles d'utiliser les modèles Jinja dans Ansible :
9
+
Ansible fournit un moyen puissant et simple de gérer les configurations à l'aide de modèles Jinja via le module `template` intégré. Ce document explore deux manières essentielles d'utiliser les modèles Jinja dans Ansible :
12
10
13
11
- ajouter des variables à un fichier de configuration
14
-
- créer des fichiers complexes avec des boucles et des structures de données complexes.
12
+
- créer des fichiers complexes avec des boucles et des structures de données élaborées.
15
13
16
14
## Ajouter des variables à un fichier de configuration
17
15
18
-
### Étape 1 : créer un modèle Jinja
16
+
### Étape n°1 : créer un modèle Jinja
19
17
20
18
Créez un fichier modèle Jinja, par exemple `sshd_config.j2`, avec des espaces réservés pour les variables :
Cette étape garantit que les modifications de configuration sont appliquées de manière cohérente sur l’ensemble de votre infrastructure.
58
56
59
-
## Création d'un fichier complet avec des boucles et des structures de données complexes
57
+
## Création d'un fichier complet avec des boucles et des structures de données élaborées
60
58
61
-
### Étape 1 : améliorer le modèle Jinja
59
+
### Étape n°1 : Améliorer le modèle Jinja
62
60
63
-
Étendez votre modèle Jinja pour gérer les boucles et les structures de données complexes. Voici un exemple de configuration d'une application hypothétique avec plusieurs composants :
61
+
Étendez votre modèle Jinja pour gérer les boucles et les structures de données complexes. Voici un exemple de configuration d’une application hypothétique avec plusieurs composants :
64
62
65
63
```jinja
66
64
# /path/to/app_config.j2
@@ -73,7 +71,7 @@ Cette étape garantit que les modifications de configuration sont appliquées de
73
71
{% endfor %}
74
72
```
75
73
76
-
### Étape 2 : intégrer le module template Ansible
74
+
### Étape n°2 : intégrer le module template Ansible
77
75
78
76
Dans votre playbook Ansible, intégrez le module `template` pour générer un fichier de configuration complet :
Cette étape garantit que les modifications de configuration sont appliquées de manière cohérente sur l’ensemble de votre infrastructure.
107
105
108
-
Le module Ansible `template`fournit un moyen d'utiliser les modèles Jinja pour générer dynamiquement des fichiers de configuration pendant l'exécution du playbook. Ce module vous permet de séparer la logique de configuration et les données, rendant vos playbooks Ansible plus flexibles et maintenables.
106
+
Le module Ansible `template`vous permet d'utiliser des modèles Jinja pour générer des fichiers de configuration de manière dynamique pendant l'exécution du playbook. Ce module vous permet de séparer la logique de configuration et les données, rendant vos playbooks Ansible plus flexibles et plus faciles à maintenir.
109
107
110
108
### Principales caractéristiques
111
109
@@ -119,11 +117,11 @@ Le module Ansible `template` fournit un moyen d'utiliser les modèles Jinja pour
119
117
3.**Chemins Source et de Destination :**
120
118
- Spécifie le fichier modèle Jinja source et le chemin de destination pour le fichier de configuration généré.
121
119
122
-
4.\*\* Passage variable : \*\*
120
+
4.\*\* Passage de variable : \*\*
123
121
- Les variables peuvent être transmises directement dans la tâche playbook ou chargées à partir de fichiers externes, permettant une génération de configuration flexible et dynamique.
124
122
125
123
5.**Exécution Idempotente :**
126
-
- Le module `template` prend en charge l'exécution idempotente, garantissant que le modèle n'est appliqué que si des modifications sont détectées.
124
+
- Le module `template`d'Ansible prend en charge l'exécution idempotente des modèles, garantissant que le modèle n'est appliqué que si des modifications sont détectées.
Ce script a été utilisé par l'auteur à plusieurs reprises. Peu importe la fréquence d'utilisation de la structure de commande `openssl`, vous devez parfois vous référer à la procédure. Ce script vous permet d'automatiser la génération de clés pour un site web en utilisant RSA. Notez que ce script est codé en dur avec une longueur de clé de 2048 bits. Pour ceux d'entre vous qui estiment que la longueur minimale de la clé doit être de 4096 bits, il suffit de changer la partie du script concernée. Sachez simplement que vous devez peser la mémoire et la vitesse qu'un site a besoin de charger sur un appareil, contre la sécurité de la longueur de clé plus longue.
10
+
11
+
## Script
12
+
13
+
Nommez ce script comme bon vous semble, par exemple : `keygen. h`, rendre le script exécutable (`chmod +x scriptname`) et le placer dans un répertoire qui se trouve dans votre chemin, exemple: /usr/local/sbin
14
+
15
+
```bash
16
+
#!/bin/bash
17
+
if [ $1 ]
18
+
then
19
+
echo"generating 2048 bit key - you'll need to enter a pass phrase and verify it"
20
+
openssl genrsa -des3 -out $1.key.pass 2048
21
+
echo"now we will create a pass-phrase less key for actual use, but you will need to enter your pass phrase a third time"
22
+
openssl rsa -in $1.key.pass -out $1.key
23
+
echo"next, we will generate the csr"
24
+
openssl req -new -key $1.key -out $1.csr
25
+
#cleanup
26
+
rm -f $1.key.pass
27
+
else
28
+
echo"requires keyname parameter"
29
+
exit
30
+
fi
31
+
```
32
+
33
+
!!! note "Remarque"
34
+
35
+
Vous entrerez la phrase de passe par trois fois.
36
+
37
+
## Brève Description
38
+
39
+
* Ce script bash nécessite la saisie d'un paramètre ($1) qui est le nom du site sans aucun www, etc. Par exemple, "mywidget".
40
+
* Le script crée la clé par défaut avec un mot de passe et une longueur de 2048 bits (cela peut être modifié, comme indiqué ci-dessus pour une longueur de 4096 bits plus longue)
41
+
* Le mot de passe est alors immédiatement supprimé de la clé, la raison est que le redémarrage du serveur web nécessiterait que le mot de passe de la clé soit entré à chaque fois ainsi qu'au redémarrage, ce qui peut être problématique dans la pratique.
42
+
* Ensuite, le script crée la CSR (Certificate Signing Request), qui peut ensuite être utilisée pour acheter un certificat SSL auprès d'un fournisseur.
43
+
* Enfin, l'étape de nettoyage supprime la clé précédemment créée avec le mot de passe correspondant.
44
+
* La saisie du nom du script sans le paramètre génère l'erreur: "Requiert le paramètre keyname".
45
+
* La variable de paramètre positionnel, c'est-à-dire $n, est utilisée ici. I.e., $0 représente la commande elle-même et $1 à $9 représente le premier jusqu'au neuvième paramètres. Lorsque le nombre est supérieur à 9, vous devez utiliser des accolades, par exemple ${10}.
Copy file name to clipboardExpand all lines: docs/release_notes/9_5.fr.md
+4-2Lines changed: 4 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -102,6 +102,8 @@ Ensembles d'outils de compilation mis à jour :
102
102
Implémentation Java par défaut mise à jour vers `java-17-openjdk` :
103
103
Après cette mise à jour, les packages `java`, `java-devel` et `jre` installeront Java 17 au lieu de Java 11.
104
104
105
+
- Après cette mise à jour, les packages `java`, `java-devel` et `jre` installeront Java 17 au lieu de Java 11.
106
+
105
107
### Console Web
106
108
107
109
Le package `cockpit-files` a été ajouté pour faciliter la gestion des fichiers dans la console Web.
@@ -123,14 +125,14 @@ Comme pour toute version, il existe de nombreux problèmes connus. Consultez la
123
125
124
126
### Aide intégrée dans Anaconda
125
127
126
-
Actuellement, les boutons d'aide cliqués dans Anaconda n'affichent que des pages blanches.
128
+
Actuellement, les boutons d'aide dans Anaconda n'affichent que des pages blanches.
127
129
128
130
!!! info "Logiciels Obsolètes"
129
131
130
132
```
131
133
Certains flux d'applications, qui font partie des dépôts Rocky Linux 9.5, ne recevront plus de mises à jour. Il s'agit actuellement de gcc-toolset 12 (retrait en novembre 2024), .NET 6 (retrait en novembre 2024), Ruby 3.1 (retrait en mars 2025) et Node.js 18 (retrait en avril 2025). De plus, OpenJDK 11 atteindra sa fin de vie pour Rocky Linux 9 en octobre 2024. Veuillez vous assurer d'utiliser les versions prises en charge (packages gcc-toolset 13 ou 14, packages .NET 8 ou 9, le module Ruby 3.3, les modules Node.js 20 ou 22, les packages OpenJDK 1.8.0, 17 ou 21) si d'autres correctifs sont souhaités.
132
134
```
133
135
134
-
## Signaler des problèmes
136
+
## Signalement de Bugs
135
137
136
138
Merci de signaler tous les problèmes que vous rencontrez sur le [Rocky Linux Bug Tracker](https://bugs.rockylinux.org/). Nous vous invitons également à rejoindre notre communauté de quelque manière que ce soit, que ce soit sur nos [Forums](https://forums.rockylinux.org), [Mattermost](https://chat.rockylinux.org), [IRC on Libera.Chat](irc://irc.liberachat/rockylinux), [Reddit](https://reddit.com/r/rockylinux), [Mailing Lists](https://lists.resf.org), ou de toute autre manière que vous souhaiteriez utiliser !
0 commit comments