Variablengruppen
Der Bereich Variablengruppen in Semaphore dient zum Speichern zusätzlicher Variablen für ein Inventory und muss im JSON-Format gespeichert werden.
Alle Aufgabenvorlagen erfordern eine definierte Variablengruppe, auch wenn diese leer ist.
Eine Variablengruppe erstellen
- Klicken Sie auf den Tab Variablengruppe.
- Klicken Sie auf die Schaltfläche Neue Variablengruppe.
- Benennen Sie die Variablengruppe und geben Sie gültige JSON-Variablen ein oder fügen Sie sie ein. Wenn Sie nur eine leere Variablengruppe benötigen, geben Sie
{}ein.
Eine Variablengruppe aktualisieren
- Klicken Sie auf den Tab Variablengruppen.
- Klicken Sie auf das Stiftsymbol.
- Nehmen Sie Ihre Änderungen vor und klicken Sie auf Speichern.
Die Variablengruppe löschen
Bevor Sie eine Variablengruppe entfernen, müssen Sie alle damit verknüpften Ressourcen entfernen. Wenn Sie nicht sicher sind, welche Ressourcen eine Variablengruppe verwenden, folgen Sie den Schritten 1 und 2 unten. Es wird angezeigt, welche Ressourcen verwendet werden, mit Links zu diesen Ressourcen.
- Klicken Sie auf die Variablengruppe.
- Klicken Sie auf das Papierkorbsymbol neben der Variablengruppe.
- Klicken Sie auf Ja, wenn Sie die Variablengruppe wirklich entfernen möchten.
Verwendung von Variablengruppen - Terraform/OpenTofu
Wenn Sie eine gespeicherte Variable oder ein Secret aus einer Variablengruppe in Ihrer Terraform-Vorlage verwenden möchten, müssen Sie dem Namen das Präfix TF_VAR_ voranstellen, damit das Terraform-Skript sie verwenden kann.
Beispiel Übergabe eines Hetzner-Cloud-API-Schlüssels an ein OpenTofu/Terraform-Playbook.
- Klicken Sie auf Variablengruppe
- Klicken Sie auf
New Group - Klicken Sie auf den Tab
Secrets - Fügen Sie
TF_VAR_hcloud_tokenhinzu und tragen Sie Ihrsecretin das verborgene Feld ein - Klicken Sie auf Speichern
Wir referenzieren unser Secret TF_VAR_hcloud_token als 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
}
}