Commit Graph

485 Commits

Author SHA1 Message Date
Armon Dadgar
f398708be2 terraform: Adding flag for CreateBeforeDestroy 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
d927c6e1f6 terraform: support var descriptions 2014-09-29 14:05:10 -07:00
Mitchell Hashimoto
a7c321a028 helper/scheam: support UI defaults 2014-09-29 14:00:35 -07:00
Mitchell Hashimoto
b32470f070 command: accept defaults for UI 2014-09-29 13:51:16 -07:00
Mitchell Hashimoto
901c1448b4 command: make the UI a look nicer 2014-09-29 13:12:06 -07:00
Mitchell Hashimoto
9bb26f7695 terraform: Make output more machine-like 2014-09-29 12:52:48 -07:00
Mitchell Hashimoto
980fce1d6c terraform: make UX a bit better for input 2014-09-29 12:45:28 -07:00
Mitchell Hashimoto
99d0e52ead terraform: validate should use the full config 2014-09-29 12:04:14 -07:00
Mitchell Hashimoto
133a28e363 terraform: prefix the Id for configuring providers 2014-09-29 10:36:49 -07:00
Mitchell Hashimoto
2791badf01 terraform: ask for input for providers 2014-09-29 09:13:15 -07:00
Mitchell Hashimoto
5611b9b8a8 terraform: add Input API to ResourceProvider 2014-09-28 23:50:37 -07:00
Mitchell Hashimoto
fd70e5e7bf terraform: Input() asks for variable inputs 2014-09-28 23:37:36 -07:00
Mitchell Hashimoto
3941dbac5d fmt 2014-09-28 11:51:49 -07:00
Mitchell Hashimoto
4b3473e522 terraform: fix compilation from merge 2014-09-26 10:10:08 -07:00
Mitchell Hashimoto
0d1867c0b3 Merge branch 'f-module-apply'
Conflicts:
	terraform/context.go
2014-09-26 10:08:35 -07:00
Mitchell Hashimoto
2ac6c127bc terraform: orphans should properly depend on modules 2014-09-26 10:03:10 -07:00
Mitchell Hashimoto
4782e31e9d terraform: properly encode module dependencies in state 2014-09-26 09:38:53 -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
e5e51d7b17 command: state output is well formatted for modules 2014-09-25 19:25:10 -07:00
Mitchell Hashimoto
30dcacf29f terraform: use the proper edge creation 2014-09-25 19:06:29 -07:00
Mitchell Hashimoto
1835a03842 terraform: hook parameter is an InstanceInfo 2014-09-25 10:40:44 -07:00
Mitchell Hashimoto
9bdc97386f terraform: expand/contract looks a lot better for modules 2014-09-24 23:46:22 -07:00
Mitchell Hashimoto
8c17062638 command: plan shows module-level, can control depth 2014-09-24 22:54:51 -07:00
Mitchell Hashimoto
bc71d6adca terraform: prefix errors/warnings with the module they came from 2014-09-24 22:35:11 -07:00
Mitchell Hashimoto
c88614c585 terraform: providers inherit properly for validation 2014-09-24 21:38:23 -07:00
Mitchell Hashimoto
6712ed15aa terraform: clarify comment 2014-09-24 19:40:54 -07:00
Mitchell Hashimoto
8420b58015 terraform: clean up some functions 2014-09-24 19:36:00 -07:00
Mitchell Hashimoto
2d07f79c5a terraform: validation validates the submodules 2014-09-24 19:31:30 -07:00
Mitchell Hashimoto
a12f785211 terraform: add some helpers to ModuleDiff and InstanceDiff for UX 2014-09-24 17:51:45 -07:00
Mitchell Hashimoto
72e6f97093 terraform: support graphing modules 2014-09-24 17:36:27 -07:00
Mitchell Hashimoto
6904c131a7 terraform: test that unused providers are pruned 2014-09-24 16:02:42 -07:00
Mitchell Hashimoto
a36b3e1ec5 command: tests pass 2014-09-24 15:48:46 -07:00
Mitchell Hashimoto
718fb42f4b terraform: Plan should use module.Tree 2014-09-24 14:56:48 -07:00
Mitchell Hashimoto
672bf58337 command: compiles, tests don't pass yet 2014-09-24 14:37:24 -07:00
Mitchell Hashimoto
7a636551be terraform: test for child module provider default 2014-09-24 14:04:54 -07:00
Mitchell Hashimoto
1f1563c95b terraform: provider inheritence is functional 2014-09-24 13:58:07 -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
bfa4e1d7d0 terraform: module output variables are functional 2014-09-23 16:07:41 -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
d443202b31 terraform: fix copying dependencies 2014-09-23 14:20:26 -07:00
Mitchell Hashimoto
b1a583e3de terraform: plan with modules work 2014-09-23 14:15:40 -07:00
Mitchell Hashimoto
8dcc4528fc terraform: basic sub-module walks work
Lots broken still, but its a start.
2014-09-23 13:47:20 -07:00
Mitchell Hashimoto
c164839ed1 terraform: walkContext 2014-09-23 13:21:45 -07:00
Mitchell Hashimoto
bc67e7c443 terraform: diff is split down into modules 2014-09-23 11:43:21 -07:00
Mitchell Hashimoto
29603f36d2 terraform: remove Read/WriteDiff, we don't use it 2014-09-23 11:15:05 -07:00
Mitchell Hashimoto
5565c27fdd terraform: error if subgraph fails to build 2014-09-22 16:51:35 -07:00
Mitchell Hashimoto
a6f792b3aa terraform: update graph to build subgraphs for modules 2014-09-22 16:48:18 -07:00
Mitchell Hashimoto
46c1209c92 terraform: State.String outputs multiple modules 2014-09-22 15:53:18 -07:00
Mitchell Hashimoto
a32833af2c terraform: Graph, Context, Plan all speak modules 2014-09-22 15:37:29 -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
ca875f5457 terraform: fix missing arg to Printf 2014-09-21 22:36:34 -07:00
Mitchell Hashimoto
7a97396583 terraform: remove unused function 2014-09-21 22:35:11 -07:00
Mitchell Hashimoto
73e2a43427 terraform: don't put the ResourceState in Resource 2014-09-21 22:08:21 -07:00
Mitchell Hashimoto
a3bb8435b7 terraform: remove unused 2014-09-21 09:42:37 -07:00
Mitchell Hashimoto
13a4818867 terraform: add flags field 2014-09-20 17:02:31 -07:00
Mitchell Hashimoto
53c23266ca terraform: add Info field to Resource, remove from Node 2014-09-19 23:01:51 -06:00
Mitchell Hashimoto
06c862a379 terraform: tainted things all work 2014-09-19 22:47:53 -06:00
Mitchell Hashimoto
10b5661bc3 terraform: planning tainted resources works 2014-09-19 22:35:29 -06:00
Mitchell Hashimoto
157843725d terraform: refreshing tainted resources works 2014-09-19 22:28:13 -06:00
Mitchell Hashimoto
f89c2c5ff0 terraform: graph tainted resources into the graph 2014-09-19 21:29:48 -06:00
Armon Dadgar
5e0765c24a terraform: Refresh handles tainted instances 2014-09-19 16:24:17 -07:00
Armon Dadgar
1d96373a54 terraform: deepcopy should not alloc when nil 2014-09-19 16:15:52 -07:00
Armon Dadgar
8e421caba1 terraform: show each tainted ID 2014-09-19 15:04:21 -07:00
Armon Dadgar
ff42a92636 terraform: State string includes how many resources are tainted 2014-09-19 14:55:59 -07:00
Armon Dadgar
9594ed6e1c terraform: minor cleanup 2014-09-19 14:54:21 -07:00
Armon Dadgar
a1c4a27715 terraform: Drop useless field 2014-09-19 14:45:12 -07:00
Armon Dadgar
5ef46b797b terraform: fixing dependency handling for orphans 2014-09-18 15:39:53 -07:00
Armon Dadgar
b2188d7fe8 terraform: properly handle diff generation with meta resources 2014-09-18 14:31:27 -07:00
Armon Dadgar
68614aeb79 terraform: Guard against future version changes 2014-09-18 13:43:26 -07:00
Armon Dadgar
ec4be66f63 terraform: ensure file version is set and serial incremented 2014-09-18 13:38:36 -07:00
Armon Dadgar
3b7c987889 terraform: EncodeDepedencies should override dep list 2014-09-18 13:33:05 -07:00
Armon Dadgar
a9c4b523db terraform: Encode dependencies of ResourceMeta ndoes 2014-09-18 11:22:40 -07:00
Armon Dadgar
d61f199d6f terraform: test dependency encoding 2014-09-18 11:12:39 -07:00
Armon Dadgar
364d210e59 terraform: fixing destroy dependency flipping twice 2014-09-18 11:02:14 -07:00
Armon Dadgar
5adc55415b terraform: testing new state file format 2014-09-18 10:51:47 -07:00
Mitchell Hashimoto
15564b04a5 command: tests pass 2014-09-18 10:40:35 -07:00
Armon Dadgar
1dcdd7a336 terraform: moving state v1 tests 2014-09-18 10:21:25 -07:00
Armon Dadgar
4db7282072 terraform: first pass at state file upgrades 2014-09-17 18:24:53 -07:00
Armon Dadgar
18a91a87c9 terraform: first stab at read/write of state 2014-09-17 18:13:38 -07:00
Armon Dadgar
ed26e3d169 terraform: fixing test case string 2014-09-17 18:03:19 -07:00
Armon Dadgar
9c5f2c3061 terraform: EncodeDependencies does not encode self dependence 2014-09-17 17:57:46 -07:00
Mitchell Hashimoto
7a2591190b terraform: fix graph test 2014-09-17 17:52:24 -07:00
Armon Dadgar
17821f2b00 terraform: fixing more test cases 2014-09-17 17:45:38 -07:00
Armon Dadgar
d4e2e66666 terraform: fixing provisioner tests 2014-09-17 17:42:43 -07:00
Armon Dadgar
9a0fe0171e terraform: fixing ContextApply_compute test 2014-09-17 17:40:59 -07:00
Armon Dadgar
dc01633f3c terraform: fixing outputs for destroy plan 2014-09-17 17:35:43 -07:00
Armon Dadgar
af3c55096c terraform: handle logical dependencies during a delete 2014-09-17 17:30:25 -07:00
Armon Dadgar
cb8e581731 terraform: test creates an actual logical dependence 2014-09-17 17:30:25 -07:00
Mitchell Hashimoto
9aa8bec660 terraform: update comments 2014-09-17 17:23:19 -07:00
Mitchell Hashimoto
1aff5e98e1 terraform: some deepcopying going on 2014-09-17 17:18:17 -07:00
Armon Dadgar
c14a17f39b terraform: save/restore dependency info for orphans 2014-09-17 17:01:55 -07:00
Armon Dadgar
31653fcbcb terraform: Adding utility methods 2014-09-17 17:01:55 -07:00
Armon Dadgar
bf072c5862 terraform: reorder list scan to reduce cost 2014-09-17 17:01:54 -07:00
Mitchell Hashimoto
f9ce7de468 terraform: Refresh tests passing 2014-09-17 16:51:07 -07:00
Mitchell Hashimoto
e2aa067996 terraform: fixing Refresh tests 2014-09-17 16:47:26 -07:00
Mitchell Hashimoto
9b2b3a963f ResourceDiff => InstanceDiff 2014-09-17 16:33:24 -07:00
Mitchell Hashimoto
0a6c675fba terraform: update hooks to use InstanceState 2014-09-17 15:00:19 -07:00
Armon Dadgar
71782c57b3 terraform: emit ID of tainted resource in string 2014-09-16 17:37:39 -07:00
Armon Dadgar
edccc2de3f terraform: fixing provisioner invocation 2014-09-16 17:37:39 -07:00
Armon Dadgar
4a736b0dac terraform: Fixing panics and TODOs 2014-09-16 17:19:37 -07:00
Armon Dadgar
55f4e35586 terraform: Fixing applyWalkFn 2014-09-16 17:10:41 -07:00
Armon Dadgar
81abdcafdc terraform: fixing all the panics 2014-09-16 16:55:19 -07:00
Armon Dadgar
25a3cc480c terraform: fixing tons of panics 2014-09-16 16:32:01 -07:00
Mitchell Hashimoto
95f3e626a5 terraform: modify the ResourceProvider API super hardcore 2014-09-16 16:20:11 -07:00
Armon Dadgar
4b0f970659 terraform: fixing test errors 2014-09-16 15:09:40 -07:00
Armon Dadgar
196991430b terraform: Resolving more errors 2014-09-16 14:26:27 -07:00
Armon Dadgar
3404277f31 terraform: porting to new state 2014-09-16 12:34:21 -07:00
Armon Dadgar
04a2b5288b terraform: fixing errors 2014-09-16 12:34:08 -07:00
Armon Dadgar
f4678c8fcd terraform: Fixing type references 2014-09-16 12:33:45 -07:00
Armon Dadgar
3963b42625 terraform: Fixing up context 2014-09-16 12:12:15 -07:00
Armon Dadgar
9cbd71b88d terraform: Changing how instances are represented 2014-09-15 17:49:31 -07:00
Armon Dadgar
f5fc4933e5 terraform: working through errors 2014-09-15 17:30:18 -07:00
Armon Dadgar
a85d6fa6c3 terraform: Adding module lookups for state 2014-09-15 17:11:36 -07:00
Armon Dadgar
ab7ae0516c terraform: handle state pruning 2014-09-15 17:06:32 -07:00
Armon Dadgar
bb26c79421 terraform: Adding deepcopy() to new state 2014-09-15 16:08:13 -07:00
Armon Dadgar
6373b2b90b Renaming to suffix V1 to old state structs 2014-09-15 16:08:01 -07:00
Armon Dadgar
5dc37bafe6 Adding the new state structures 2014-09-15 15:31:17 -07:00
Mitchell Hashimoto
281b59533d fmt 2014-09-09 21:44:40 -07:00
Mitchell Hashimoto
9573d1bfec terraform: test to make sure nil in RawConfig is okay 2014-09-09 17:41:05 -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
da2e221628 terraform: Interpolate if there are any interpolations [GH-159] 2014-08-21 15:05:56 -07:00
Mitchell Hashimoto
9ecfdc350e terraform: ResourceConfig.Get doesn't panic if exceed list bounds
[GH-210]
2014-08-21 11:37:14 -07:00
Mitchell Hashimoto
6d6cd793e0 terraform: GoString for *ResourceState 2014-08-20 10:38:51 -07:00
Mitchell Hashimoto
839f9d84c8 Merge pull request #201 from hashicorp/f-resource
High-Level Framework for Writing Providers and Resources
2014-08-19 09:40:59 -07:00
Mitchell Hashimoto
808463a2d5 Merge pull request #200 from hashicorp/f-hcl
Replace C dep with HCL
2014-08-19 09:27:48 -07:00
Mitchell Hashimoto
776b5ace2e terraform: better comments 2014-08-19 09:05:50 -07:00
Mitchell Hashimoto
d8a999e5af terraform: ResourceConfig.Get gets interpolated if possible 2014-08-19 09:05:19 -07:00
Mitchell Hashimoto
22e286ffd5 helper/schema: diff-ing lists at a basic level 2014-08-14 23:17:53 -07:00
Mitchell Hashimoto
2e777d87a2 terraform: fix potential case where cycle is made 2014-08-12 17:08:12 -07:00
Mitchell Hashimoto
258a7311ce terraform: register a type 2014-08-11 09:58:53 -07:00
Mitchell Hashimoto
038cca291e config: HCL loader 2014-08-11 09:58:53 -07:00
Alex Gaynor
46154ca1d3 Fixed a ton of typos in docs and comments 2014-08-07 00:19:56 -07:00
Mitchell Hashimoto
c671e79904 fmt 2014-08-05 10:12:50 -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
78c32ac196 terraform: hooks around provisioners 2014-07-27 09:00:34 -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