Groupes de variables
La section Groupes de variables de Semaphore permet de stocker des variables supplémentaires pour un inventaire ; elles doivent être stockées au format JSON.
Tous les modèles de tâches exigent qu'un groupe de variables soit défini, même s'il est vide.
Créer un groupe de variables
- Cliquez sur l'onglet Groupe 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 utilisent 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.
Utilisation des groupes de variables - Terraform/OpenTofu
Lorsque vous souhaitez utiliser une variable ou un secret d'un groupe de variables dans votre modèle Terraform, vous devez préfixer son nom par TF_VAR_ pour que le script Terraform puisse l'utiliser.
Exemple Transmission d'une clé API Hetzner Cloud à un playbook OpenTofu/Terraform.
- Cliquez sur Groupe 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 référencerons notre secret TF_VAR_hcloud_token sous le nom 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
}
}