Groupes de variables

La section Groupes de variables de Semaphore est l'endroit où stocker des variables supplémentaires pour un inventaire ; elles doivent être stockées au format JSON.
Tous les modèles de tâches nécessitent un groupe de variables, même s'il est vide.
Ansible reçoit les variables d'un groupe comme variables supplémentaires depuis un fichier temporaire dans lequel chaque valeur contenant un délimiteur Jinja2 ({{ … }}, {% … %} ou {# … #}) est marquée !unsafe : une expression Jinja2 stockée dans un groupe de variables parvient au playbook telle quelle et n'est pas évaluée. Les valeurs conservent leur type JSON : la chaîne "2026.08" parvient au playbook comme une chaîne, le nombre 3 comme un nombre. Les secrets du groupe transmis comme variables voyagent dans un fichier distinct chiffré avec Ansible Vault.
Créer un groupe de variables
- Cliquez sur l'onglet Groupes de variables.
- Cliquez sur le bouton Nouveau groupe de variables.
- Nommez le groupe de variables et saisissez ou collez des variables JSON valides. Si vous avez simplement besoin d'un groupe de variables vide, saisissez
{}.
Mettre à jour un groupe de variables
- Cliquez sur l'onglet Groupes de variables.
- Cliquez sur l'icône en forme de crayon.
- Effectuez vos modifications et cliquez sur Enregistrer.
Supprimer un groupe de variables
Avant de supprimer un groupe de variables, vous devez supprimer toutes les ressources qui lui sont liées. Si vous ne savez pas quelles ressources sont utilisées dans un groupe de variables, suivez les étapes 1 et 2 ci-dessous. Elles vous indiqueront les ressources utilisées, avec des liens vers celles-ci.
- Cliquez sur le groupe de variables.
- Cliquez sur l'icône de corbeille à côté du groupe de variables.
- Cliquez sur Oui si vous êtes sûr de vouloir supprimer le groupe de variables.
Utiliser les groupes de variables - Terraform/OpenTofu
Lorsque vous souhaitez utiliser une variable ou un secret stocké dans un groupe de variables au sein de votre modèle terraform, vous devez préfixer son nom par TF_VAR_ pour que le script terraform puisse l'utiliser.
Exemple Transmettre une clé d'API Hetzner Cloud à un playbook OpenTofu/Terraform.
- Cliquez sur Groupes de variables
- Cliquez sur
New Group - Cliquez sur l'onglet
Secrets - Ajoutez
TF_VAR_hcloud_tokenet saisissez votresecretdans le champ masqué - Cliquez sur Enregistrer
Nous appellerons notre secret TF_VAR_hcloud_token sous la forme var.hcloud_token dans
hetzner.tf
terraform {
required_providers {
hcloud = {
source = "hetznercloud/hcloud"
version = "~> 1.45"
}
}
}
# Declare the variable
variable "hcloud_token" {
type = string
description = "Hetzner Cloud API token"
sensitive = true # This prevents the token from being displayed in logs
}
provider "hcloud" {
token = var.hcloud_token
}
# Create a new server running debian
resource "hcloud_server" "webserver" {
name = "webserver"
image = "ubuntu-24.04"
server_type = "cpx11"
location = "ash"
ssh_keys = [ "mysshkey" ]
public_net {
ipv4_enabled = true
ipv6_enabled = true
}
}