Repository: gruntwork-io/terragrunt (language: go)

Issue:
Add TerraformPath in dependency block to get output from different tfstate version
When using the dependency on a resource that was created with a different terraform version, the error occurs when executing the `terraform output` command

```
Failed to load state: state snapshot was created by Terraform v1.0.6, which is newer than current v0.13.3; upgrade to Terraform v1.0.6 or greater to work with this state
```

The idea is to add an attribute to configure the terraform binary to be used for that dependency, like the example below

```
dependency "key_pair" {
  config_path       = "../test-keypair"
  terraform_path    = "/usr/local/bin/terraform/1.0.6/terraform"
  
  mock_outputs = {
    key_pair_name = "KEY"
  }
  mock_outputs_allowed_terraform_commands = ["validate", "plan"]
}
```

So when executing the `terraform output` command the terragrunt will use the binary configured in the dependency


Discussion / hints:

Fix patch:
diff --git a/config/dependency.go b/config/dependency.go
index 20f1c97bb8..cd072bc8ac 100644
--- a/config/dependency.go
+++ b/config/dependency.go
@@ -474,7 +474,7 @@ func cloneTerragruntOptionsForDependencyOutput(terragruntOptions *options.Terrag
 	if err != nil {
 		return nil, err
 	}
-	if terragruntOptions.TerraformPath == options.TERRAFORM_DEFAULT_PATH && partialTerragruntConfig.TerraformBinary != "" {
+	if partialTerragruntConfig.TerraformBinary != "" {
 		targetOptions.TerraformPath = partialTerragruntConfig.TerraformBinary
 	}
 


Test patch: