Passa al contenuto principale

Terraform/OpenTofu

Con Semaphore UI è possibile eseguire codice Terraform. Per farlo, è necessario creare un Modello di codice Terraform.

  1. Andare nella sezione Modelli di task e fare clic sul pulsante Nuovo modello.
  2. Selezionare Terraform come tipo di app.
  3. Configurare il modello e fare clic sul pulsante Crea.
  4. Fare clic su Esegui per eseguire il modello.

Passaggio delle variabili

Le variabili dei Gruppi di variabili selezionati vengono iniettate come variabili d'ambiente. Aggiungere il prefisso TF_VAR_ ai nomi affinché Terraform le riconosca come variabili di input:

Chiave del gruppo di variabiliVariabile Terraform
TF_VAR_regionvar.region
TF_VAR_instance_typevar.instance_type

Per i valori sensibili, utilizzare la scheda Segreti dei Gruppi di variabili: vengono cifrati a riposo.

Workspace

Semaphore supporta nativamente i workspace di Terraform/OpenTofu. Consultare Workspace per creare e cambiare workspace e per utilizzare chiavi SSH con i moduli privati.

Override del backend e backend HTTP (Pro)

È possibile sovrascrivere il backend in un modello per utilizzare il backend HTTP integrato senza modificare il codice Terraform. Consultare Backend HTTP (Pro) per i dettagli.

Flag destroy e migrazione dello stato

La finestra di avvio del task include gli interruttori -destroy e -migrate-state. Utilizzarli per smantellare l'infrastruttura o per migrare lo stato di Terraform.

Note

  • Semaphore esegue automaticamente terraform init prima di ogni esecuzione.
  • Lo stato è gestito dal backend configurato nel codice Terraform (locale, S3, GCS, ecc.), a meno che non si utilizzi il backend HTTP integrato (Pro).