Commit Graph

18460 Commits

Author SHA1 Message Date
James Bardin 82b1a2abc2 Add graph transformation recording
The external api provided here is simply
dag.Graph.SetDebugWriter(io.Writer). When a writer is provided to a
Graph, it will immediately encode itself to the stream, and subsequently
encode any additional transformations to the graph. This will allow
easier logging of graph transformations without writing complete graphs
to the logs at every step. Since the marshalGraph can also be dot
encoded, this will allow translation from the JSON logs to dot graphs.
2016-11-14 08:50:34 -05:00
James Bardin 6f347ebb3a Remove dot package
Unify all dot functionality in the dag package
2016-11-14 08:50:34 -05:00
James Bardin 8a5d71b0ac Implement dag.GraphNodeDotter (temporarily)
To maintain the same output, the Graph.Dot implementation needs to be
aware of GraphNodeDotter. Copy the interface into the dag package, and
make the Dot marshaler aware of which nodes implemented the interface.
This way we can remove most of the remaining dot code from terraform.
2016-11-14 08:50:34 -05:00
James Bardin 7b774f771b implement dag.Subgrapher interface
This allows the dag package to detect subgraphs, even when impelemnted
by types from other packages
2016-11-14 08:50:34 -05:00
James Bardin 28d406c040 Provider a marshaler for dag.Graph
The dot format generation was done with a mix of code from the terraform
package and the dot package. Unify the dot generation code, and it into
the dag package.

Use an intermediate structure to allow a dag.Graph to marshal itself
directly. This structure will be ablt to marshal directly to JSON, or be
translated to dot format. This was we can record more information about
the graph in the debug logs, and provide a way to translate those logged
structures to dot, which is convenient for viewing the graphs.
2016-11-14 08:50:33 -05:00
James Bardin bda84e03f7 Merge pull request #10032 from hashicorp/jbardin/vet
Fix future vet errors in providers
2016-11-14 08:49:16 -05:00
stack72 1b6db228d8
Merge branch 'samirageb-patch-1' 2016-11-14 13:26:36 +00:00
stack72 24348bad89
docs/remote_azure: Adding a note to the remote state docs about ENV VARs 2016-11-14 13:26:19 +00:00
Sami Rageb 861fd22cdd
Update Azure RM remote config documentation
Current documentation on azure backend examples leaves out a critical parameter required for remote config to work.
2016-11-14 13:26:19 +00:00
Paul Stack e7411891f4 Update CHANGELOG.md 2016-11-14 12:12:34 +00:00
Paul Stack ecb2b74c37 Merge pull request #9534 from Ninir/aws_apigw_deployment_date
provider/aws: 	Exposed aws_api_gateway_deployment.created_date attribute
2016-11-14 12:11:59 +00:00
Paul Stack 325a0bc0ee Update CHANGELOG.md 2016-11-14 12:10:01 +00:00
Paul Stack 24231333d3 Exposed AWS API GW REST Api created_date attribute (#9532) 2016-11-14 12:09:28 +00:00
Ninir a88b25cfcf Exposed AWS API GW REST Api created_date attribute 2016-11-14 11:56:41 +01:00
Ninir 6fb63f2854 Exposed aws_api_gateway_deployment.created_date attribute 2016-11-14 11:21:36 +01:00
Paul Stack 13512d3738 Update CHANGELOG.md 2016-11-14 10:04:22 +00:00
Ninir 932c92e4c6 Exposed aws_api_gateway_api_key created_date & last_updated_date (#9530) 2016-11-14 12:03:56 +02:00
Paul Stack ab03a50d92 Update CHANGELOG.md 2016-11-14 09:34:38 +00:00
Ninir d8e846c895 Fixed ##10079 exposing aws_iam_role create_date attribute (#10091) 2016-11-14 11:33:53 +02:00
Mitchell Hashimoto 1a6056b287
command: split out and tag code so compilation works on Solaris
The readline library doesn't support Solaris. For now, we'll just not
support console there.
2016-11-14 00:32:01 -08:00
Mitchell Hashimoto 0232b39db6
website: document console command 2016-11-13 23:17:04 -08:00
Mitchell Hashimoto a867457d75
command/console 2016-11-13 23:17:04 -08:00
Mitchell Hashimoto a633cdf95d
terraform: improve error messages to assist REPL 2016-11-13 23:17:04 -08:00
Mitchell Hashimoto d9c522173d
repl: package for TF REPL 2016-11-13 23:17:03 -08:00
Mitchell Hashimoto 1a8fbdc428
terraform: update interpolation to be more flexible w/o config 2016-11-13 23:17:03 -08:00
Mitchell Hashimoto 73a1564dac
helper/wrappedreadline: helper for dealing with wrapped standard streams 2016-11-13 23:17:03 -08:00
Mitchell Hashimoto 6272b969d4
vendor: add readline 2016-11-13 23:17:02 -08:00
Mitchell Hashimoto a2f6bc628a
vendor: update panicwrap 2016-11-13 23:05:25 -08:00
Evan Brown 5423349b68 providers/google: Create and delete Service Accounts 2016-11-13 20:47:20 -08:00
Mitchell Hashimoto 0bb8ab9afb Merge pull request #10090 from hashicorp/b-update-hil
vendor: update HIL
2016-11-13 10:31:21 -08:00
Mitchell Hashimoto 15979435d6
config: update error string for new HIL merge 2016-11-13 10:28:31 -08:00
Mitchell Hashimoto 3c2e21701d
vendor: update HIL 2016-11-13 10:28:26 -08:00
Mitchell Hashimoto 15f07e0e50
website: correct description for Terraform section 2016-11-12 22:52:27 -08:00
Mitchell Hashimoto 0e2e19c784
website: document required_version 2016-11-12 22:50:28 -08:00
Aditya Anchuri 49c7d272a3 Added create timeout for compute images and instances
- Prevents the corresponding terraform resource from timing out when the
  images or instances take longer than the default of 4 minutes to be
  created
2016-11-12 18:30:02 -08:00
Mitchell Hashimoto 2c467e0f74
terraform: verify version requirements from configuration 2016-11-12 16:50:26 -08:00
Mitchell Hashimoto 85d3439fa0
config: parse and validate terraform.required_version 2016-11-12 16:22:35 -08:00
Mitchell Hashimoto 538302f143
terraform: resources nested within a module must also be depended on
For example: A => B => C (modules). If A depends on module B, then it
also must depend on everything in module C.
2016-11-12 15:38:28 -08:00
Mitchell Hashimoto bcfec4e24e
terraform: test that dependencies in the state are enough to maintain
order
2016-11-12 15:22:48 -08:00
Mitchell Hashimoto cfd3be4856
website: update website for "module.X" depends_on 2016-11-12 08:41:18 -08:00
Mitchell Hashimoto 22dd4303bc
terraform: tests for ReferenceMap for module paths 2016-11-12 08:24:09 -08:00
Mitchell Hashimoto 576b61a21d
config: validate depends_on with module values 2016-11-12 08:21:27 -08:00
Mitchell Hashimoto 0b87ef82c3
terraform: depends_on can reference entire modules 2016-11-12 08:07:45 -08:00
Mitchell Hashimoto 4f0ccd7794
website: update website to doc output depends_on 2016-11-11 18:17:46 -08:00
Mitchell Hashimoto 70a41c5e15
terraform: output nodes reference `depends_on` values 2016-11-11 18:16:04 -08:00
Mitchell Hashimoto 10426ba619
config: parse depends_on for outputs 2016-11-11 17:46:34 -08:00
Mitchell Hashimoto f6161a7dc9
terraform: destroy edge must include resources through outputs
This fixes: `TestContext2Apply_moduleDestroyOrder`

The new destroy graph wasn't properly creating edges that happened
_through_ an output, it was only created the edges for _direct_
dependents.

To fix this, the DestroyEdgeTransformer now creates the full transitive
list of destroy edges by walking all ancestors. This will create more
edges than are necessary but also will no longer miss resources through
an output.
2016-11-11 14:29:19 -08:00
Mitchell Hashimoto 8d993d9edd release: clean up after v0.8.0-beta1 2016-11-11 22:08:27 +00:00
Mitchell Hashimoto 1889aee292 v0.8.0-beta1 2016-11-11 22:03:16 +00:00
Mitchell Hashimoto 008b8b4c23
vendor: add golang.org/x/sys/windows for cross compile 2016-11-11 14:02:55 -08:00