Gruppi di variabili
La sezione Gruppi di variabili di Semaphore è il luogo in cui archiviare variabili aggiuntive per un inventory; devono essere memorizzate in formato JSON.
Tutti i modelli di task richiedono che sia definito un gruppo di variabili, anche se vuoto.
Creare un gruppo di variabili
- Fare clic sulla scheda Gruppi di variabili.
- Fare clic sul pulsante Nuovo gruppo di variabili.
- Assegnare un nome al gruppo di variabili e digitare o incollare variabili JSON valide. Se serve solo un gruppo di variabili vuoto, digitare
{}.
Aggiornare un gruppo di variabili
- Fare clic sulla scheda Gruppi di variabili.
- Fare clic sull'icona a forma di matita.
- Apportare le modifiche e fare clic su Salva.
Eliminare un gruppo di variabili
Prima di rimuovere un gruppo di variabili, è necessario rimuovere tutte le risorse ad esso collegate. Se non si è sicuri di quali risorse utilizzino un gruppo di variabili, seguire i passaggi 1 e 2 riportati di seguito. Verranno mostrate le risorse in uso, con i collegamenti a tali risorse.
- Fare clic sul gruppo di variabili.
- Fare clic sull'icona del cestino accanto al gruppo di variabili.
- Fare clic su Sì se si è sicuri di voler rimuovere il gruppo di variabili.
Utilizzo dei gruppi di variabili - Terraform/OpenTofu
Quando si desidera utilizzare una variabile o un segreto di un gruppo di variabili nel modello Terraform, è necessario aggiungere al nome il prefisso TF_VAR_ affinché lo script Terraform possa utilizzarlo.
Esempio Passaggio della chiave API di Hetzner Cloud a un playbook OpenTofu/Terraform.
- Fare clic su Gruppi di variabili
- Fare clic su
New Group - Fare clic sulla scheda
Secrets - Aggiungere
TF_VAR_hcloud_tokene inserire il propriosecretnel campo nascosto - Fare clic su Salva
Il segreto TF_VAR_hcloud_token verrà richiamato come var.hcloud_token in
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
}
}