Grupos de variables
La sección Grupos de variables de Semaphore es un lugar para almacenar variables adicionales para un inventario y deben guardarse en formato JSON.
Todas las plantillas de tareas requieren que se defina un grupo de variables, aunque esté vacío.
Crear un grupo de variables
- Haga clic en la pestaña Grupo de variables.
- Haga clic en el botón Nuevo grupo de variables.
- Asigne un nombre al grupo de variables y escriba o pegue variables JSON válidas. Si solo necesita un grupo de variables vacío, escriba
{}.
Actualizar un grupo de variables
- Haga clic en la pestaña Grupos de variables.
- Haga clic en el icono del lápiz.
- Realice los cambios y haga clic en guardar.
Eliminar el grupo de variables
Antes de eliminar un grupo de variables, debe eliminar todos los recursos vinculados a él. Si no está seguro de qué recursos usan un grupo de variables, siga los pasos 1 y 2 a continuación. Se le mostrará qué recursos lo están usando, con enlaces a dichos recursos.
- Haga clic en el grupo de variables.
- Haga clic en el icono de la papelera junto al grupo de variables.
- Haga clic en Sí si está seguro de que desea eliminar el grupo de variables.
Uso de grupos de variables - Terraform/OpenTofu
Cuando desee utilizar una variable o un secreto almacenados en un grupo de variables en su plantilla de Terraform, debe añadir el prefijo TF_VAR_ al nombre para que el script de Terraform pueda usarlo.
Ejemplo Pasar la clave de API de Hetzner Cloud a un playbook de OpenTofu/Terraform.
- Haga clic en Grupo de variables
- Haga clic en
New Group - Haga clic en la pestaña
Secrets - Añada
TF_VAR_hcloud_tokene introduzca susecreten el campo oculto - Haga clic en Guardar
Llamaremos a nuestro secreto TF_VAR_hcloud_token como var.hcloud_token en
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
}
}