From e1a46904d607adf27426614cdf523b743f1c7537 Mon Sep 17 00:00:00 2001 From: Paul Hinze Date: Mon, 5 Oct 2015 15:06:08 -0500 Subject: [PATCH] command: pull parallelism default up to CLI layer /cc @knuckolls @josephholsten --- command/apply.go | 6 ++++-- command/command.go | 4 ++++ command/plan.go | 5 ++++- 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/command/apply.go b/command/apply.go index 232b44b82..3991dee54 100644 --- a/command/apply.go +++ b/command/apply.go @@ -39,7 +39,8 @@ func (c *ApplyCommand) Run(args []string) int { cmdFlags.BoolVar(&destroyForce, "force", false, "force") } cmdFlags.BoolVar(&refresh, "refresh", true, "refresh") - cmdFlags.IntVar(&c.Meta.parallelism, "parallelism", 0, "parallelism") + cmdFlags.IntVar( + &c.Meta.parallelism, "parallelism", DefaultParallelism, "parallelism") cmdFlags.StringVar(&c.Meta.statePath, "state", DefaultStateFilename, "path") cmdFlags.StringVar(&c.Meta.stateOutPath, "state-out", "", "path") cmdFlags.StringVar(&c.Meta.backupPath, "backup", "", "path") @@ -280,7 +281,8 @@ Options: -no-color If specified, output won't contain any color. - -parallelism=# Limit the number of concurrent operations. + -parallelism=n Limit the number of concurrent operations. + Defaults to 10. -refresh=true Update state prior to checking for differences. This has no effect if a plan file is given to apply. diff --git a/command/command.go b/command/command.go index c9a87230b..80e82e78c 100644 --- a/command/command.go +++ b/command/command.go @@ -26,6 +26,10 @@ const DefaultBackupExtension = ".backup" // by default. const DefaultDataDirectory = ".terraform" +// DefaultParallelism is the limit Terraform places on total parallel +// operations as it walks the dependency graph. +const DefaultParallelism = 10 + func validateContext(ctx *terraform.Context, ui cli.Ui) bool { if ws, es := ctx.Validate(); len(ws) > 0 || len(es) > 0 { ui.Output( diff --git a/command/plan.go b/command/plan.go index e1b43babe..232e42f80 100644 --- a/command/plan.go +++ b/command/plan.go @@ -27,7 +27,8 @@ func (c *PlanCommand) Run(args []string) int { cmdFlags.BoolVar(&refresh, "refresh", true, "refresh") c.addModuleDepthFlag(cmdFlags, &moduleDepth) cmdFlags.StringVar(&outPath, "out", "", "path") - cmdFlags.IntVar(&c.Meta.parallelism, "parallelism", 0, "parallelism") + cmdFlags.IntVar( + &c.Meta.parallelism, "parallelism", DefaultParallelism, "parallelism") cmdFlags.StringVar(&c.Meta.statePath, "state", DefaultStateFilename, "path") cmdFlags.StringVar(&c.Meta.backupPath, "backup", "", "path") cmdFlags.BoolVar(&detailed, "detailed-exitcode", false, "detailed-exitcode") @@ -185,6 +186,8 @@ Options: -out=path Write a plan file to the given path. This can be used as input to the "apply" command. + -parallelism=# Limit the number of concurrent operations. Defaults to 10. + -refresh=true Update state prior to checking for differences. -state=statefile Path to a Terraform state file to use to look