INNER CODE UNIT · Go
runParallelFiles
mkubaczyk/helmsman · internal/app/main.go:82
func runParallelFiles(f *cli) int {
exe, err := os.Executable()
if err != nil {
log.Fatal("could not determine helmsman executable path: " + err.Error())
}
// Create a short-lived temp dir for kubeconfig copies. Each subprocess gets
// its own copy so concurrent `kubectl config use-context` calls don't race.
orchTmpDir, err := os.MkdirTemp("", "helmsman-parallel-*")
if err != nil {
log.Fatal("could not create orchestrator temp dir: " + err.Error())
}
defer os.RemoveAll(orchTmpDir)
srcKubeconfig := resolveKubeconfigPath(f)
// Reconstruct args from the parsed flag set, skipping flags handled per-subprocess.
// flag.Visit only iterates flags explicitly set by the user (not defaults).