Minimaler Stack, der zeigt wie man eine der sieben Modul-Varianten in einem realen Tofu-Projekt einsetzt.
- Wartet ueber das Modul
01-adminservice-pwsh-linux, bisPC123in ConfigMgr den Status "ausgerollt" hat (Task-Sequence Success + Client aktiv). - Triggert eine Folge-Resource (
null_resource.after_rollout), die implizit ueberdepends_onhaengt — Tofu fuehrt sie erst aus, wenn das Wait-Modul erfolgreich fertig ist. - Exportiert den Computer-Namen als Output.
cd examples/basic-wait
tofu init
tofu applyVoraussetzungen: siehe docs/auth-setup.md.
Ersetze den module-Block in main.tf durch eine andere Quelle und
passe die Variablen an.
module "wait_for_pc" {
source = "../../02-adminservice-pwsh-windows"
computer_name = "PC123"
sms_provider = "sccm.corp.local"
site_code = "P01"
}module "wait_for_pc" {
source = "../../03-adminservice-bash-linux"
computer_name = "PC123"
sms_provider = "sccm.corp.local"
site_code = "P01"
}module "wait_for_pc" {
source = "../../04-winrm-jumphost"
computer_name = "PC123"
jumphost = "cmjump01.corp.local"
site_code = "P01"
}module "wait_for_pc" {
source = "../../05-sql-direct-linux"
computer_name = "PC123"
sql_host = "sql.corp.local"
db_name = "CM_P01"
# Optional Username/Passwort-Auth statt Kerberos:
# sql_user = "tofu_reader"
# sql_password = var.sql_password # aus Secret-Backend
}module "wait_for_pc" {
source = "../../06-sql-direct-windows"
computer_name = "PC123"
sql_host = "sql.corp.local"
db_name = "CM_P01"
}module "wait_for_pc" {
source = "../../07-cmdlets-package"
computer_name = "PC123"
windows_host = "cmworker01.corp.local"
site_code = "P01"
site_server = "sccm.corp.local"
}Alle Module exportieren id und computer_name. Folge-Resources
haengen sich am sauberesten ueber depends_on = [module.wait_for_pc]
an — das laesst Tofu den Wait erst abschliessen, bevor die naechste
Resource startet.