package cluster import ( "fmt" "strings" ) // normalizeShutdownMode runs one orchestration or CLI step. // Signature: normalizeShutdownMode(raw string) (string, error). // Why: keeps shutdown behavior explicit and safe by allowing only cluster-only // semantics while preserving compatibility with legacy "config" callers. func normalizeShutdownMode(raw string) (string, error) { switch strings.TrimSpace(raw) { case "", "config", "cluster-only": return "cluster-only", nil case "poweroff": return "", fmt.Errorf("shutdown mode %q has been removed; ananke no longer powers off hosts", raw) default: return "", fmt.Errorf("unsupported shutdown mode %q (expected config|cluster-only)", raw) } }