Das Terraform Workpaces-Modul, das Konfiguration und Lebenszyklus aller Ihre Terraform-Cloud-Arbeitsbereiche verwaltet. Es wurde so konzipiert, dass es aus einem dedizierten Terraform -Cloud -Arbeitsbereich verwendet werden soll, in dem Sie den Rest Ihrer Arbeitsbereiche mithilfe von Terraform Code (IAC) zur Verfügung stellen und verwalten würden.
terraform-tfe-workspaces
ist ein Open-Source-Projekt, das von der Skala Factory veröffentlicht wurde.
Wir betrachten dieses Projekt derzeit als aktiv gewartet und werden neue Funktionen hinzufügen, die IT -Sicherheit gepatcht und für die Verwendung in Produktionsumgebungen bereit sein.
Wir werden uns alle Probleme oder PRs ansehen, die Sie öffnen und sich so schnell wie möglich bei Ihnen melden. Wir bieten keine formelle SLA an, aber wir werden dieses Projekt regelmäßig überprüfen.
Von diesem Modul konfigurierte Arbeitsbereiche erfordern wahrscheinlich Anmeldeinformationen, um die verschiedenen Dienste zu authentifizieren, die Sie verwenden möchten.
Wenn wir beispielsweise einen Arbeitsbereich konfigurieren, der AWS -Anmeldeinformationen erfordert, konfigurieren Sie den folgenden Code:
Main.tf :
terraform {
required_version = " ~> 1.0 "
backend "remote" {
organization = " scalefactory "
workspaces {
name = " terraform-cloud "
}
}
}
module "workspaces" {
source = " ../modules/terraform-tfe-workspaces "
organization = " scalefactory "
oauth_token_id = var . oauth_token_id
vcs_org = " scalefactory "
vcs_repo = " terraform-infra "
# tf_version = "1.x.y"
workspaces = var . workspaces
slacks = var . slacks
triggers = var . triggers
TFC_WORKSPACE_NAME = var . TFC_WORKSPACE_NAME
var_sets = var . var_sets
vars = {
AWS_ACCESS_KEY_ID = var.aws_access_key_id
}
sec_vars = {
AWS_SECRET_ACCESS_KEY = var.aws_secret_access_key
}
}
Terraform.auto.tfvars :
workspaces = {
shared = " terraform/shared "
}
var_sets = {
test = {
desc = " Testing "
global = false
vars = {
a = {
val = 1
sensitive = false
desc = " woohoo "
category = " env "
}
b = {
val = 2
sensitive = true
}
}
workspaces = [
" workspace1 " ,
" workspace2 " ,
]
}
}
Melden Sie Probleme/Fragen/Feature -Anfragen im Abschnitt "Ausgaben".
Hier finden Sie volle Richtlinien.
Apache 2 lizenziert. Weitere Informationen finden Sie in Lizenz.
Name | Version |
---|---|
Terraform | ~> 1.0 |
tfe | ~> 0,50.0 |
Name | Version |
---|---|
tfe | ~> 0,50.0 |
Name | Typ |
---|---|
tfe_notification_configuration.slack | Ressource |
tfe_run_trigger.trigger | Ressource |
tfe_variable.sec_vars | Ressource |
tfe_variable.var_sets | Ressource |
tfe_variable.vars | Ressource |
tfe_variable_set.var_sets | Ressource |
tfe_workspace.Workspace | Ressource |
tfe_workspace_variable_set.map | Ressource |
tfe_workspace.current | Datenquelle |
tfe_workspace_ids.var_sets | Datenquelle |
Name | Beschreibung | Typ | Standard | Erforderlich |
---|---|---|---|---|
Tfc_workspace_name | TFC -Arbeitsbereich Name aus der Env | string | null | NEIN |
degly_destroy_plan | Ob Zerstörerpläne im Arbeitsbereich in der Warteschlange gestellt werden können | bool | true | NEIN |
Assessments_Enabled | Führen Sie regelmäßig Gesundheitsbewertungen wie Drifterkennung am Arbeitsbereich durch | bool | false | NEIN |
auto_apply | Ob automatisch Änderungen anwenden, wenn ein Terraformplan erfolgreich ist | bool | false | NEIN |
Execution_Mode | Terraform Worskapce Execution mehr: Remote, lokaler oder Agent | string | "remote" | NEIN |
OAuth_Token_id | ID des OAuth -Tokens für die VCS -Verbindung | string | n / A | Ja |
Organisation | TF -Organisation zum Erstellen von Arbeitsbereichen unter | string | n / A | Ja |
Sec_vars | Karte definieren sensible Variablen für Arbeitsbereiche | map(any) | {} | NEIN |
Hose | Karten -Defining -Slack -Benachrichtigungsoptionen | map(any) | {} | NEIN |
Speculative_Enabled | Wetter laufende Pläne für Zuganfragen | bool | true | NEIN |
structured_run_output_enabled | Ob dieser Arbeitsbereich die Ausgabe von Terraform -Läufen mit der erweiterten Benutzeroberfläche mit der erweiterten Benutzeroberfläche zeigen sollte, sofern verfügbar | bool | false | NEIN |
tag_names | Liste der Arbeitsbereichs -Tag -Namen | list(any) | [] | NEIN |
tf_version | Version von Terraform, die im Arbeitsbereich verwendet werden sollen | string | null | NEIN |
Auslöser | Karte für TFE Trigger Relations Workspace-> Workspace2 | map(any) | {} | NEIN |
var_sets | Karte definieren variable Sätze | any | {} | NEIN |
vars | Karte Definieren von Arbeitsbereichsvariablen | map(any) | {} | NEIN |
vcs_org | Die Github -Organisation, unter der Repositories leben | string | n / A | Ja |
vcs_repo | Der GitHub -Repository -Name, der diesen Arbeitsbereich unterstützt | string | n / A | Ja |
Arbeitsbereiche | Arbeitsbereiche Karte, in der wir den Arbeitsbereich und ihren Weg definieren | map(any) | {} | NEIN |
Name | Beschreibung |
---|---|
Work_vars | n / A |