Commit Graph

400 Commits

Author SHA1 Message Date
Mitchell Hashimoto
873f5a91bb terraform: EvalDeleteOutput and context test 2015-04-29 11:27:12 -07:00
Mitchell Hashimoto
2ca181d42d terraform: add output orphan transformer 2015-04-29 11:18:58 -07:00
Paul Hinze
5e67657325 core: fix targeting in destroy w/ provisioners
The `TargetTransform` was dropping provisioner nodes, which caused graph
validation to fail with messages about uninitialized provisioners when a
`terraform destroy` was attempted.

This was because `destroy` flops the dependency calculation to try and
address any nodes in the graph that "depend on" the target node. But we
still need to keep the provisioner node in the graph.

Here we switch the strategy for filtering nodes to only drop
addressable, non-targeted nodes. This should prevent us from having to
whitelist nodes to keep in the future.

closes #1541
2015-04-27 08:36:54 -05:00
Paul Hinze
d4b9362518 core: validate on verbose graph to detect some cycles earlier
Most CBD-related cycles include destroy nodes, and destroy nodes were
all being pruned from the graph before staring the Validate walk.

In practice this meant that we had scenarios that would error out with
graph cycles on Apply that _seemed_ fine during Plan.

This introduces a Verbose option to the GraphBuilder that tells it to
generate a "worst-case" graph. Validate sets this to true so that cycle
errors will always trigger at this step if they're going to happen.

(This Verbose option will be exposed as a CLI flag to `terraform graph`
in a second incoming PR.)

refs #1651
2015-04-23 11:07:13 -05:00
Mitchell Hashimoto
af4396aa0d Merge pull request #1621 from hashicorp/f-envs
Set variables from env vars
2015-04-22 15:50:56 +02:00
Mitchell Hashimoto
d2011438f7 Merge pull request #1587 from hashicorp/b-count-deps
terraform: inner-count dependencies work [GH-1540]
2015-04-22 08:10:24 +02:00
Mitchell Hashimoto
5ae9ee4d27 terraform: allow TF_VAR_name to be set to set variables 2015-04-22 06:31:53 +02:00
Mitchell Hashimoto
d3689cea29 terraform: test input with multiple providers 2015-04-20 14:59:03 -07:00
Mitchell Hashimoto
de004d7183 terraform: context test for when provider is missing from state 2015-04-20 14:54:25 -07:00
Matt Good
21b0a03d70 Support for multiple providers of the same type
Adds an "alias" field to the provider which allows creating multiple instances
of a provider under different names. This provides support for configurations
such as multiple AWS providers for different regions. In each resource, the
provider can be set with the "provider" field.

(thanks to Cisco Cloud for their support)
2015-04-20 14:14:34 -07:00
Mitchell Hashimoto
7a1592ff1e terraform: don't panic on input for bad default type [GH-1344] 2015-04-18 16:31:21 -07:00
Mitchell Hashimoto
2fffec9545 terraform: inner-count dependencies work [GH-1540] 2015-04-18 15:56:43 -07:00
Paul Hinze
afe4abb637 core: add prevent_destroy lifecycle flag
When the `prevent_destroy` flag is set on a resource, any plan that
would destroy that resource instead returns an error. This has the
effect of preventing the resource from being unexpectedly destroyed by
Terraform until the flag is removed from the config.
2015-04-17 10:40:04 -05:00
Mitchell Hashimoto
486cde44ec terraform: when pruning destroy, only match exact nodes, or exact counts 2015-04-14 13:17:08 -07:00
Mitchell Hashimoto
b64fd8401c terraform: prune tainted destroys if no tainted in state [GH-1475] 2015-04-14 10:48:45 -07:00
Paul Hinze
6761424309 Merge pull request #1487 from hashicorp/b-provider-vars-inherit
terraform: fix provider config inheritance during input
2015-04-10 16:35:17 -05:00
Paul Hinze
d1b40de242 terraform: fix provider config inheritance during input
The provider config was not being properly merged across module
boundaries during the Input walk over the graph, so when a provider was
configured at the top level, resources in modules could improperly
trigger a request for input for a provider attribute that's already
defined.
2015-04-10 16:28:47 -05:00
Mitchell Hashimoto
4c3923e32a terraform: return value for resource interpolation on refresh
Instead of returning UnknownVariableValue every time, attempt to return
the real value. If we don't find it, return unknown value. This fixes
removing outputs from state on refresh.
2015-04-10 13:51:22 -07:00
Mitchell Hashimoto
bcff7e070c terraform: don't prune, but disable, inherited configs [GH-1447] 2015-04-09 08:48:08 -07:00
Mitchell Hashimoto
8a90bd08a3 terraform: test negative case for disable provider transformer 2015-04-08 21:39:56 -07:00
Mitchell Hashimoto
218f147c0c terraform: test fixture modified to not prune provider 2015-04-08 21:25:03 -07:00
Mitchell Hashimoto
36520121b1 terraform: disable providers that are only used by modules 2015-04-08 21:14:19 -07:00
Paul Hinze
c6300d511c core: formalize resource addressing
Only used in targets for now. The plan is to use this for interpolation
as well.

This allows us to target:

 * individual resources expanded by `count` using bracket / index notation.
 * deposed / tainted resources with an `InstanceType` field after name

Docs to follow.
2015-03-31 15:04:10 -05:00
Paul Hinze
40ebfb5ccc core: fill out context tests for targeted ops 2015-03-31 14:49:38 -05:00
Paul Hinze
97acccd3ed core: targeted operations
Add `-target=resource` flag to core operations, allowing users to
target specific resources in their infrastructure. When `-target` is
used, the operation will only apply to that resource and its
dependencies.

The calculated dependencies are different depending on whether we're
running a normal operation or a `terraform destroy`.

Generally, "dependencies" refers to ancestors: resources falling
_before_ the target in the graph, because their changes are required to
accurately act on the target.

For destroys, "dependencies" are descendents: those resources which fall
_after_ the target. These resources depend on our target, which is going
to be destroyed, so they should also be destroyed.
2015-03-31 14:49:38 -05:00
Mitchell Hashimoto
2dce764d75 terraform: add input mode to only ask for unset variables
This adds a new input mode for Context.Input() that will only ask for
variable values that are not set.
2015-03-24 13:30:21 -07:00
Paul Hinze
6c93fbb85d core: [refactor] store Deposed resource instances as a list
Deposed instances need to be stored as a list for certain pathological
cases where destroys fail for some reason (e.g. upstream API failure,
Terraform interrupted mid-run). Terraform needs to be able to remember
all Deposed nodes so that it can clean them up properly in subsequent
runs.

Deposed instances will now never touch the Tainted list - they're fully
managed from within their own list.

Added a "multiDepose" test case that walks through a scenario to
exercise this.
2015-03-04 12:25:59 -06:00
Mitchell Hashimoto
4894080d87 Merge pull request #1086 from hashicorp/b-pph
terraform: catch scenario where both "foo" and "foo.0" are in state
2015-03-02 08:34:05 -08:00
Mitchell Hashimoto
2389251c38 terraform: catch scenario where both "foo" and "foo.0" are in state 2015-03-01 21:28:41 -08:00
Mitchell Hashimoto
903e49162d terraform: add TransitiveReductionTransformer 2015-02-27 19:18:04 -08:00
Mitchell Hashimoto
341be226f4 terraform: test for various taint cases 2015-02-26 09:50:18 -08:00
Mitchell Hashimoto
dd7bc5db0c terraform: more self tests 2015-02-23 15:02:26 -08:00
Mitchell Hashimoto
0e59acc2c9 terraform: enable self vars 2015-02-23 14:56:02 -08:00
Mitchell Hashimoto
022967acdb terraform: module inputs/vars can be non-strings [GH-819] 2015-02-23 13:50:53 -08:00
Mitchell Hashimoto
40ee70d5c9 terraform: Input should only be called on providers once
/cc @sethvargo

Prior to this commit, we'd only persist the result of calling Input if
any input was given (len(result) > 0). The result was that every module
would also repeat asking for input even if there was no input to be
asked for.

This commit makes it so that if no input was received, we still set a
sentinel so that modules don't re-ask.
2015-02-20 15:35:57 -08:00
Mitchell Hashimoto
ab414de0ab terraform: test case for destroying with a count [GH-527] 2015-02-20 10:02:52 -08:00
Mitchell Hashimoto
4b6f258f1f terraform: only depose state if we're doing the destroy side 2015-02-19 12:08:34 -08:00
Mitchell Hashimoto
10e96ad72d terraform: provisioner config is properly interpolated 2015-02-19 12:08:33 -08:00
Mitchell Hashimoto
459ad04d71 terraform: provider cache should append the provider name to it 2015-02-19 12:08:33 -08:00
Mitchell Hashimoto
ad595cf254 terraform: test case for cycle of CBD depending on non-CBD 2015-02-19 12:08:33 -08:00
Mitchell Hashimoto
8d2ed22e97 terraform: prune destroy nodes for resources not in diff 2015-02-19 12:08:32 -08:00
Mitchell Hashimoto
8db6f722d2 terraform: CBD edge transpositions must happen atomically 2015-02-19 12:08:32 -08:00
Mitchell Hashimoto
f7f1f17b49 terraform: create before destroy 2015-02-19 12:08:07 -08:00
Mitchell Hashimoto
d7dc0291f5 terraform: put destroy nodes into the graph 2015-02-19 12:08:03 -08:00
Mitchell Hashimoto
84cf7f1179 terraform: outputs show up in the graph 2015-02-19 12:08:02 -08:00
Mitchell Hashimoto
ea42deb66c terraform: provisioner transforms 2015-02-19 12:07:58 -08:00
Mitchell Hashimoto
28a23a45f4 terraform: dynamic subgraph expansion for count 2015-02-19 12:07:57 -08:00
Mitchell Hashimoto
e2a3f78c08 terraform: expand modules in our builder 2015-02-19 12:07:57 -08:00
Mitchell Hashimoto
4692f9809f terraform: module nodes expand 2015-02-19 12:07:57 -08:00
Mitchell Hashimoto
3908b6319a terraform: pulling out everything into Interpolater 2015-02-19 12:07:56 -08:00
Mitchell Hashimoto
c308405b53 terraform: validation in progress 2015-02-19 12:07:55 -08:00
Mitchell Hashimoto
a73f939ee9 terraform: initial GraphBuilder impl 2015-02-19 12:07:54 -08:00
Mitchell Hashimoto
96a2d3e116 terraform: PruneProviderTransfomer 2015-02-19 12:07:54 -08:00
Mitchell Hashimoto
01ec680019 terraform: ProviderTransform to map resources to providers by dep 2015-02-19 12:07:53 -08:00
Mitchell Hashimoto
8dc4c56b2e terraform: tainted transformer 2015-02-19 12:07:53 -08:00
Mitchell Hashimoto
922bdc92db terraform: module orphans 2015-02-19 12:07:52 -08:00
Mitchell Hashimoto
e08dc05f54 terraform: State.ModuleOrphans 2015-02-19 12:07:52 -08:00
Mitchell Hashimoto
6eb379fa75 terraform: start the transforms, adding orphans 2015-02-19 12:07:52 -08:00
Mitchell Hashimoto
9f70cddadf terraform: error if config graph is missing dependencies 2015-02-19 12:07:51 -08:00
Mitchell Hashimoto
dc036a0dd0 terraform: fix bug with crash with no providers [GH-786] 2015-01-16 09:56:51 -08:00
Emil Hessman
071d872dc2 terraform: acceptance test for validation error
Add an acceptance test where terraform plan should error due
to validation errors.
2015-01-13 06:59:12 +01:00
Mitchell Hashimoto
71918efd96 terraform: Add more tests for cases we felt weren't well covered 2014-12-16 15:59:26 -08:00
Mitchell Hashimoto
ef60ac5b8c terraform: update comment 2014-12-16 08:24:21 -08:00
Armon Dadgar
c43eb6f883 terraform: fixing test case 2014-12-09 00:28:03 -08:00
Luke Amdor
6dcb7166d1 fix destroy so incoming module vars get set 2014-12-05 17:18:45 -06:00
Luke Amdor
fead5872e5 Fix for multivars when modulestate not created yet 2014-12-02 13:53:09 -06:00
Luke Amdor
60022978a6 adding context test for module multi-vars 2014-11-28 13:16:33 -06:00
Armon Dadgar
a5d444b8e3 terraform: fix module output handling. Fixes #474 2014-11-24 19:18:52 -08:00
Armon Dadgar
f26b8df92f Merge pull request #598 from hashicorp/f-mod-deps
Fix dependency handling of modules
2014-11-24 18:53:22 -08:00
Armon Dadgar
5b025c89f9 terraform: guard output types. Fixes #593 2014-11-24 16:49:38 -08:00
Armon Dadgar
3bdaccdf5d terraform: testing the destroy order of modules 2014-11-24 14:58:52 -08:00
Mitchell Hashimoto
22f09b487b terraform: refresh ignores variables with no values [GH-478] 2014-10-20 23:08:17 -07:00
Mitchell Hashimoto
0908e8f42c terraform: don't fail refresh if output doesn't exist [GH-483] 2014-10-20 18:45:52 -07:00
Mitchell Hashimoto
dc3178e06a terraform: failling test case for a bug 2014-10-18 14:36:34 -07:00
Mitchell Hashimoto
914cb1d44c terraform: test for variables in provider configs 2014-10-18 14:13:14 -07:00
Mitchell Hashimoto
0a5e06d62c terraform: merge interpolated inherited provider configurations [GH-418] 2014-10-18 13:58:01 -07:00
Mitchell Hashimoto
f03ab178bf terraform: don't execute provisioners on destroy 2014-10-18 11:37:26 -07:00
Mitchell Hashimoto
990b814188 terraform: set count to 1 while validating [GH-442] 2014-10-17 18:18:28 -07:00
Mitchell Hashimoto
bf7c40d115 terraform: test case for variable count 2014-10-17 18:03:30 -07:00
Mitchell Hashimoto
82bf4f485b terraform: taint resources who error on create with provisioners
[GH-434]
2014-10-16 23:19:07 -07:00
Mitchell Hashimoto
de4c922c9c terraform: validation with unknown variables works [GH-432] 2014-10-16 15:54:56 -07:00
Mitchell Hashimoto
f59e89ccb8 terraform: add count tainted apply test 2014-10-12 09:41:27 -07:00
Mitchell Hashimoto
f74a27d75f terraform: provisioner dependencies are reflected in graph 2014-10-12 09:15:26 -07:00
Mitchell Hashimoto
d4d58ae44b terraform: turn resource expand into graph 2014-10-12 08:57:08 -07:00
Mitchell Hashimoto
e5ce6a97a3 Merge pull request #385 from hashicorp/f-splat-wtf
Fix variable "splatting"
2014-10-09 23:18:10 -07:00
Mitchell Hashimoto
6c96e0f6ac terraform: nil out the Diff on a resource when expanding
This fixes a bug where the Destroy diff was being kept around for
nodes that shouldn't be destroyed. We added a test to verify this
doesn't happen.
2014-10-09 23:15:42 -07:00
Mitchell Hashimoto
1ebcedb22b config: make the interp split pretty insane 2014-10-09 22:45:22 -07:00
Mitchell Hashimoto
36f4a644b6 terraform: warn if the name has special characters 2014-10-08 15:59:50 -07:00
Mitchell Hashimoto
8b5c120ecf terraform: add InputMode to determine what is asked for 2014-10-08 10:18:45 -07:00
Mitchell Hashimoto
d714c6f2f1 terraform: test path variables 2014-10-07 20:09:30 -07:00
Mitchell Hashimoto
94f43ff145 terraform: fix crash if outputs with no state [GH-358] 2014-10-03 15:57:43 -07:00
Mitchell Hashimoto
88ac1b030a terraform: another test for count index 2014-10-02 22:07:23 -07:00
Mitchell Hashimoto
ea18b62e8f terraform: count.index 2014-10-02 22:02:59 -07:00
Mitchell Hashimoto
66c58788fe terraform: test count = 1 variable access 2014-10-02 17:24:22 -07:00
Mitchell Hashimoto
221e40a3a9 terraform: test count == zero 2014-10-02 17:18:40 -07:00
Mitchell Hashimoto
e4ba737392 terraform: validate count is non-negative 2014-10-02 17:14:25 -07:00
Mitchell Hashimoto
53d05cb81f terraform: counts can't be computed 2014-10-02 16:21:17 -07:00
Mitchell Hashimoto
ced4125037 teraform: test that count can be a variable 2014-10-02 15:47:00 -07:00
Mitchell Hashimoto
039531e9ca terraform: dependencies in the graph from count properly show up 2014-10-02 13:54:04 -07:00
Armon Dadgar
5207e1d268 terraform: test ordering when using create before with depedencies 2014-09-29 17:00:45 -07:00
Armon Dadgar
bce9b664d8 terraform: test happy path create-before-destroy 2014-09-29 15:20:04 -07:00
Armon Dadgar
59b7cb171a terraform: Testing failed apply with create_before_destroy 2014-09-29 15:20:03 -07:00
Armon Dadgar
f248ae3aee terraform: test provising fail create-before-destroy 2014-09-29 15:20:03 -07:00
Armon Dadgar
1aaddafba0 terraform: Adding lifecycle config block 2014-09-29 15:20:02 -07:00
Armon Dadgar
aef7718778 terraform: support create-before-destroy 2014-09-29 15:20:02 -07:00
Mitchell Hashimoto
2791badf01 terraform: ask for input for providers 2014-09-29 09:13:15 -07:00
Mitchell Hashimoto
fd70e5e7bf terraform: Input() asks for variable inputs 2014-09-28 23:37:36 -07:00
Mitchell Hashimoto
0d1867c0b3 Merge branch 'f-module-apply'
Conflicts:
	terraform/context.go
2014-09-26 10:08:35 -07:00
Mitchell Hashimoto
1fa3840a00 terraform: handle module dependencies with a diff 2014-09-26 09:20:01 -07:00
Mitchell Hashimoto
77b1c7daa0 terraform: destroy plans work with modules 2014-09-25 20:44:34 -07:00
Mitchell Hashimoto
c88614c585 terraform: providers inherit properly for validation 2014-09-24 21:38:23 -07:00
Mitchell Hashimoto
2d07f79c5a terraform: validation validates the submodules 2014-09-24 19:31:30 -07:00
Mitchell Hashimoto
6904c131a7 terraform: test that unused providers are pruned 2014-09-24 16:02:42 -07:00
Mitchell Hashimoto
7a636551be terraform: test for child module provider default 2014-09-24 14:04:54 -07:00
Mitchell Hashimoto
8dbc7e0ccb terraform: change the graph a bit to better support providers with
modules

This doesn't cause inheritence to work yet. That is coming
2014-09-24 13:31:35 -07:00
Mitchell Hashimoto
86a4a6c7c8 terraform: test apply with modules 2014-09-23 17:13:50 -07:00
Mitchell Hashimoto
e8dfcdbe7b terraform: computed input variables work to modules 2014-09-23 17:05:44 -07:00
Mitchell Hashimoto
68b38b4904 terraform: test case for cascading input variables (variable to
variable)
2014-09-23 16:55:19 -07:00
Mitchell Hashimoto
9e871d5617 terraform: variables to modules work 2014-09-23 16:49:38 -07:00
Mitchell Hashimoto
a3b668bf7d terraform: module w/ computed output works 2014-09-23 16:27:38 -07:00
Mitchell Hashimoto
1b5d0ed0bb terraform: outputs should be properly calculated for modules now 2014-09-23 15:46:20 -07:00
Mitchell Hashimoto
6b2781d77c terraform: module orphans 2014-09-23 14:57:17 -07:00
Mitchell Hashimoto
b1a583e3de terraform: plan with modules work 2014-09-23 14:15:40 -07:00
Mitchell Hashimoto
a6f792b3aa terraform: update graph to build subgraphs for modules 2014-09-22 16:48:18 -07:00
Mitchell Hashimoto
1d106d3fa4 terraform: modules are put into the graph 2014-09-22 15:11:57 -07:00
Armon Dadgar
cdce8208f3 terraform: ensure provisioner runs only on instance create 2014-09-22 11:15:22 -07:00
Mitchell Hashimoto
f89c2c5ff0 terraform: graph tainted resources into the graph 2014-09-19 21:29:48 -06:00
Armon Dadgar
cb8e581731 terraform: test creates an actual logical dependence 2014-09-17 17:30:25 -07:00
Mitchell Hashimoto
a53faa2fff terraform: validate providers even without config block [GH-284] 2014-09-09 17:38:30 -07:00
Mitchell Hashimoto
52bc9a1055 core: check sets for computed [GH-247] 2014-08-30 17:26:10 -07:00
Mitchell Hashimoto
28a2e7b979 terraform: depends_on with count creates proper graph [GH-244] 2014-08-30 16:08:50 -07:00
Mitchell Hashimoto
038cca291e config: HCL loader 2014-08-11 09:58:53 -07:00
Mitchell Hashimoto
87f4b49f85 terraform: multi-variables work with count = 1 [GH-115] 2014-08-05 10:12:35 -07:00
Mitchell Hashimoto
d28e5a1638 dos2unix 2014-07-28 10:43:00 -07:00
Mitchell Hashimoto
7564a0a21c terraform: set state properly when tainted 2014-07-26 21:03:07 -07:00
Mitchell Hashimoto
37c4edd5e7 terraform: test cases around self-referencing variables
This includes cases of multi-counts.

/cc @armon - Looks like this was a non-issue. Terraform already errors
on this.
2014-07-26 15:02:23 -07:00
Mitchell Hashimoto
79a9dfce4a terraform: add test for diff var changing 2014-07-24 20:24:59 -07:00
Mitchell Hashimoto
1ee69761d4 terraform: self-referencing variables in provisoiners work 2014-07-24 07:58:45 -07:00
Mitchell Hashimoto
f47956d62f terraform: dependsOn builds into the graph 2014-07-22 18:20:03 -07:00
Mitchell Hashimoto
14f7067b0c terraform: taint plan requires destroy/create 2014-07-22 10:30:42 -07:00
Mitchell Hashimoto
808036bf60 terraform: ResourceProvisioner can't return a state anymore 2014-07-22 09:56:39 -07:00
Mitchell Hashimoto
e59ff6e92c terraform: fix tests 2014-07-22 08:29:49 -07:00
Mitchell Hashimoto
c6474b3e5c terraform: more test cases 2014-07-22 08:27:16 -07:00
Mitchell Hashimoto
83ba038423 terraform: mapping overrides work 2014-07-22 08:18:53 -07:00
Mitchell Hashimoto
5795db9232 terraform: test regular variable default 2014-07-22 08:14:20 -07:00
Mitchell Hashimoto
c9a20c3c58 terraform: test that mapping lookups work 2014-07-22 08:06:09 -07:00
Armon Dadgar
0110640946 terraform: Test ConnInfo materialization during Apply 2014-07-15 12:34:07 -07:00
Armon Dadgar
eaf2c46dc5 terraform: Testing passthrough of ConnInfo 2014-07-15 12:34:06 -07:00
Mitchell Hashimoto
3af16c8faf terraform: don't process outputs when all we did was destroy 2014-07-13 11:07:31 -07:00
Mitchell Hashimoto
8d065ce5c4 terraform: don't validate orphans 2014-07-11 11:09:19 -07:00
Armon Dadgar
cfc7b69bb1 terraform: Test provisioner apply 2014-07-10 11:38:56 -07:00
Armon Dadgar
03a20f072e terraform: Test Validation of provisioners 2014-07-10 11:38:56 -07:00
Armon Dadgar
e8245f1a67 terraform: Testing graph construction with provisioners 2014-07-10 11:38:56 -07:00
Mitchell Hashimoto
eda3cb009c terraform: make sure the "id" attribute is in the state 2014-07-08 17:15:41 -07:00
Mitchell Hashimoto
251790f05a terraform: add ID to diff implicitly 2014-07-08 16:58:31 -07:00
Armon Dadgar
8f4cd641df terraform: minimal apply test case 2014-07-08 16:12:30 -07:00
Mitchell Hashimoto
b0a83adea4 terraform: manually interpolate variables in walker functions
This avoids issues where we were interpolating when we didn't need to
2014-07-07 16:56:23 -07:00
Mitchell Hashimoto
9f56fc8ddc terraform: copy the proper dependencies over on destroy plan 2014-07-07 15:43:32 -07:00
Mitchell Hashimoto
55eb06929e terraform: fix cycle that could happen during destroy 2014-07-07 15:38:27 -07:00
Mitchell Hashimoto
177f8c094d helper/diff: add ID to diff 2014-07-07 14:57:41 -07:00
Mitchell Hashimoto
cc0c32d5ca terraform: test for single index access of counts 2014-07-06 14:09:44 -07:00
Mitchell Hashimoto
a01d979c1b terraform: outputs work with multi-variables 2014-07-05 10:48:47 -07:00
Mitchell Hashimoto
4b5f5aec65 terraform: outputs are computed for the state 2014-07-04 15:36:28 -07:00
Mitchell Hashimoto
3b3c9e140a terraform: tests for increasing count from 1 to > 1 2014-07-03 21:47:07 -07:00
Mitchell Hashimoto
c5a0b9cb40 terraform: test case for decreasing the count 2014-07-03 21:42:18 -07:00
Mitchell Hashimoto
a616218d13 terraform: planning and applying multi-count resources tests 2014-07-03 21:24:17 -07:00
Mitchell Hashimoto
e7b7644cbf terraform: turn multi-counts into multiple nodes 2014-07-03 20:42:29 -07:00
Mitchell Hashimoto
ed57fe7083 terraform: ValidateResource is called 2014-07-03 12:30:51 -07:00
Mitchell Hashimoto
6508edaba9 terraform: Context.Validate checks ProviderConfig Validate 2014-07-03 12:17:56 -07:00
Mitchell Hashimoto
947fa4e669 terraform: Context introduction 2014-07-03 10:14:17 -07:00
Mitchell Hashimoto
c8c7d6baa3 terraform: add some semantic check functions 2014-07-02 20:47:10 -07:00
Mitchell Hashimoto
8625e8c2ac terraform: tests for Apply in areas of errors 2014-07-02 17:26:39 -07:00
Mitchell Hashimoto
733752122a terraform: stopHook and tests 2014-07-02 16:16:38 -07:00
Mitchell Hashimoto
d026d4207e terraform: apply diff before apply 2014-06-30 19:29:07 -07:00
Mitchell Hashimoto
2d72164c6a terraform: graph can add "destroy" nodes 2014-06-30 19:10:44 -07:00
Mitchell Hashimoto
6f274eb7a9 terraform: GraphAddDiff works on a basic level 2014-06-30 18:18:56 -07:00
Mitchell Hashimoto
521b432728 terraform: add Dependencies to ResourceState 2014-06-30 17:40:56 -07:00
Mitchell Hashimoto
b3de33cc69 terraform: failing test but fixes another bug 2014-06-30 11:14:03 -07:00
Mitchell Hashimoto
1d9d33c8a0 terraform: destroy orphans 2014-06-25 21:58:33 -07:00
Mitchell Hashimoto
0f2d7f430c terraform: all tests passing 2014-06-25 18:12:03 -07:00
Mitchell Hashimoto
8a44ca984e terraform: Refresh tests 2014-06-25 15:39:44 -07:00
Mitchell Hashimoto
9d4f7b71c4 terraform: fill in the graph with the providers 2014-06-25 14:47:38 -07:00
Mitchell Hashimoto
cdab89d7c1 terraform: getting closer to mapping resource providers properly 2014-06-25 12:58:27 -07:00
Mitchell Hashimoto
1918f199d8 terraform: Graph, config: don't build graph 2014-06-24 14:58:57 -07:00
Mitchell Hashimoto
c5a621a47a terraform: error if unknown variable retruned 2014-06-23 13:08:25 -07:00
Mitchell Hashimoto
9e8f578c8b terraform: test that varaibles from the plan are interpolated in 2014-06-23 12:28:02 -07:00
Mitchell Hashimoto
92ffbf2880 terraform: re-diff on apply 2014-06-23 12:19:41 -07:00
Mitchell Hashimoto
f7a6cbf247 terraform: rename Diff to Plan on Terraform API 2014-06-20 10:44:49 -07:00
Mitchell Hashimoto
830ddf0c8e terraform: basic apply tests 2014-06-18 16:38:08 -07:00
Mitchell Hashimoto
b3e20a3e85 terraform: basic apply, more tests needed 2014-06-18 15:35:03 -07:00
Mitchell Hashimoto
8a2eb95a42 terraform: Validate called on provider 2014-06-12 22:30:09 -07:00
Mitchell Hashimoto
061d96a08b terraform: test case for if diff returns nil 2014-06-10 10:50:23 -07:00
Mitchell Hashimoto
ce0867fa09 terraform: call Configure on the provider 2014-06-06 00:20:23 -07:00
Mitchell Hashimoto
967d4a61c1 terraform: tests that computed placeholders get inserted proprely 2014-06-05 20:17:03 -07:00
Mitchell Hashimoto
d58feeeafe terraform: find configs for providers 2014-06-05 19:56:35 -07:00
Mitchell Hashimoto
7c6920bba1 terraform: diff/state work better together, merge 2014-06-05 06:57:06 -07:00
Mitchell Hashimoto
e904fca3da terraform: Diff! 2014-06-05 02:32:10 -07:00
Mitchell Hashimoto
d731d033f1 terraform: build resource graph, validate 2014-06-03 17:14:19 -07:00
Mitchell Hashimoto
d2088463d3 terraform: validate required variables are all set 2014-06-03 15:56:43 -07:00
Mitchell Hashimoto
c9d8413431 terraform: New happy path works decently well 2014-06-03 15:08:00 -07:00