Commit Graph

570 Commits

Author SHA1 Message Date
Mitchell Hashimoto
0f8c0eb981 terraform: config graph has providers 2015-02-19 12:07:51 -08:00
Mitchell Hashimoto
6b00633ed1 terraform: start Graph2 to make logical config graph 2015-02-19 12:07:51 -08:00
Mitchell Hashimoto
659a77c6ae helper/schema: validate subresources more effectively 2015-02-18 09:41:55 -08:00
Mitchell Hashimoto
c2f3f0594d terraform: sort dependencies of resource state [GH-928] 2015-02-17 11:47:53 -08:00
Emil Hessman
6d9c4ea78f terraform: fix ContextPlan test failure on Windows
The attributes in the diff are %#v-formatted. This means that all `\`
characters in the Windows paths are escaped with a `\`. We need to
escape the `\` characters in cwd, module, and root before doing any
comparison work.

Fixes the following test failure on Windows:

--- FAIL: TestContextPlan_pathVar (0.00s)
        context_test.go:3833: bad:
                DIFF:

                CREATE: aws_instance.foo
                  cwd:    "" => "C:\\Users\\ceh\\src\\github.com\\hashicorp\\terraform\\terraform/barpath"
                  module: "" => "C:\\Users\\ceh\\src\\github.com\\hashicorp\\terraform\\terraform\\test-fixtures\\plan-path-var/foopath"
                  root:   "" => "C:\\Users\\ceh\\src\\github.com\\hashicorp\\terraform\\terraform\\test-fixtures\\plan-path-var/barpath"
                  type:   "" => "aws_instance"

                STATE:

                <no state>

                expected:

                DIFF:

                CREATE: aws_instance.foo
                  cwd:    "" => "C:\Users\ceh\src\github.com\hashicorp\terraform\terraform/barpath"
                  module: "" => "C:\Users\ceh\src\github.com\hashicorp\terraform\terraform\test-fixtures\plan-path-var/foopath"
                  root:   "" => "C:\Users\ceh\src\github.com\hashicorp\terraform\terraform\test-fixtures\plan-path-var/barpath"
                  type:   "" => "aws_instance"

                STATE:

                <no state>
FAIL
exit status 1
FAIL    github.com/hashicorp/terraform/terraform        0.050s
2015-02-04 18:26:42 +01:00
Mitchell Hashimoto
dc036a0dd0 terraform: fix bug with crash with no providers [GH-786] 2015-01-16 09:56:51 -08:00
Mitchell Hashimoto
2abeb2d9ac config: use new API 2015-01-14 22:03:15 -08:00
Mitchell Hashimoto
d3c0543bf3 Merge pull request #797 from hashicorp/f-stronger-types
Force variables to be typed (internally)
2015-01-14 15:30:38 -08:00
Mitchell Hashimoto
8ae14f06b3 config: variables must be typed 2015-01-14 10:40:43 -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
1429ac6a7f terraform: return unknown variable value if nil 2014-12-16 18:43:18 -08:00
Mitchell Hashimoto
71918efd96 terraform: Add more tests for cases we felt weren't well covered 2014-12-16 15:59:26 -08:00
Sander van Harmelen
8347569396 Adding a test for the change in PR #681
Should have already done that together with that PR…
2014-12-16 19:15:07 +01:00
Mitchell Hashimoto
ef60ac5b8c terraform: update comment 2014-12-16 08:24:21 -08:00
Mitchell Hashimoto
e5f07567c6 terraform: module input to another module doesn't error [GH-659] 2014-12-16 08:23:19 -08:00
Sander van Harmelen
d24ab685d0 Adding a small fix to the Same() func
This is a little tricky, but when a diff contains a computed list or
set that can only be interpolated after the apply command has created
the dependant resources, it could turn out that the result is actually
the same as the existing state which would remove the key from the diff
2014-12-16 13:58:31 +01:00
Sander van Harmelen
40ca4c1c81 Merge pull request #676 from svanharmelen/f-fix-expand-bug
core: fix expand bug
2014-12-16 11:04:25 +01:00
Mitchell Hashimoto
d24082da1e config: validate that module variables can go to ints, convert [GH-624] 2014-12-15 22:10:16 -08:00
Sander van Harmelen
528167513b Looking at issue #639 this seems to be the root cause
After fixing this part, there also needs to be made a change to the
example given or the schema of aws_elb.
2014-12-15 23:38:46 +01:00
Sander van Harmelen
83c760fcb3 core: refactoring the way sets work internally v2
This is a refactored solution for PR #616. Functionally this is still
the same change, but it’s implemented a lot cleaner with less code and
less changes to existing parts of TF.
2014-12-12 23:21:20 +01:00
Armon Dadgar
d821f7aaa6 terraform: Make RemoteState more flexible 2014-12-10 13:27:09 -08:00
Armon Dadgar
85bb01acd7 terraform: Fixing unit test 2014-12-10 13:27:09 -08:00
Armon Dadgar
b83b4a923f terraform: expose the state version 2014-12-10 13:27:06 -08:00
Armon Dadgar
6ce957d4b1 terraform: State helpers 2014-12-10 13:27:06 -08:00
Armon Dadgar
1ec0602cab terraform: Add new remote storage fields to state 2014-12-10 13:27:06 -08:00
Armon Dadgar
f1cb297c59 terraform: Fixing issue with computed maps 2014-12-09 00:51:28 -08:00
Armon Dadgar
c43eb6f883 terraform: fixing test case 2014-12-09 00:28:03 -08:00
Armon Dadgar
0a3d7bd121 terraform: Check module config for resource instead of state 2014-12-09 00:25:06 -08:00
Mitchell Hashimoto
e82a28529d terraform: return errors for interpolations 2014-12-08 23:57:01 -08:00
Luke Amdor
ca48dcab4a no module state, we shouldn't fail multivars yet 2014-12-06 15:30:19 -06: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
Luke Amdor
4b3bf76406 looking up count of multivars in module config 2014-11-28 07:14:58 -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
d8ecb32a7c terraform: test module is marked for destroy 2014-11-24 15:50:15 -08:00
Armon Dadgar
56a34087ba terraform: test orphan dependency inversion 2014-11-24 15:42:58 -08:00
Armon Dadgar
5376e05add terraform: test encoding module dependencies 2014-11-24 15:25:37 -08:00
Armon Dadgar
6af820f78b terraform: test graph with orphan module dependencies 2014-11-24 15:22:37 -08:00
Armon Dadgar
3bdaccdf5d terraform: testing the destroy order of modules 2014-11-24 14:58:52 -08:00
Armon Dadgar
afef564108 terraform: Handle module depedency inversion 2014-11-24 14:38:06 -08:00
Armon Dadgar
d5fd4dabe8 terraform: Mark modules for destroy 2014-11-24 14:15:24 -08:00
Armon Dadgar
9c6280f64b terraform: encode module dependencies 2014-11-21 16:44:20 -08:00
Armon Dadgar
ec1c026b80 terraform: initialize and attach module state 2014-11-21 16:41:48 -08:00
Armon Dadgar
6e1ef1c634 terraform: restore dependencies for orphan modules 2014-11-21 16:14:57 -08:00
Armon Dadgar
9707eb3fc8 terraform: Add dependencies field to modules 2014-11-21 15:34:23 -08:00
Armon Dadgar
8446b036d7 Merge pull request #535 from ceh/vet-fixes
argument and verb formatting fixes reported by go vet
2014-11-19 15:46:01 -08:00
Armon Dadgar
e29e364c89 terraform: Testing duplicate delete issue 2014-11-18 15:38:54 -08:00
Armon Dadgar
01db1ff8bd terraform: diff handler in expansion avoids duplicate destroy 2014-11-18 15:38:40 -08:00
Armon Dadgar
507b75449f terraform: Move diff handling during dynamic expansion 2014-11-18 15:10:18 -08:00
Armon Dadgar
a2ba45edf5 terraform: Simplify sub-graph finalization 2014-11-17 15:50:26 -08:00
Emil Hessman
4bfe18b40d argument and verb formatting fixes reported by go vet
builtin/providers/aws/tags_test.go:56: unrecognized printf verb 'i'
builtin/providers/aws/tags_test.go:59: unrecognized printf verb 'i'

config/config_test.go:101: possible formatting directive in Fatal call
config/config_test.go:157: possible formatting directive in Fatal call

config/module/get_file_test.go:91: missing argument for Fatalf(%s): format reads arg 1, have only 0 args

helper/schema/schema.go:341: arg v.Type for printf verb %s of wrong type: schema.ValueType
helper/schema/schema.go:656: missing argument for Errorf(%s): format reads arg 2, have only 1 args
helper/schema/schema.go:912: arg schema.Type for printf verb %s of wrong type: schema.ValueType

terraform/context.go:178: arg v.Type() for printf verb %s of wrong type: github.com/hashicorp/terraform/config.VariableType
terraform/context.go:486: arg c.Operation for printf verb %s of wrong type: terraform.walkOperation

terraform/diff_test.go💯 arg actual for printf verb %s of wrong type: terraform.DiffChangeType
terraform/diff_test.go:235: arg actual for printf verb %s of wrong type: terraform.DiffChangeType
2014-11-02 13:56:44 +01: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
686871310d terraform: input properly sends on only set input 2014-10-18 14:54:42 -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
b2d674b431 terraform: don't add tainted resources to expanded graph [GH-412]
The tainted resources are separate elements in the graph.
2014-10-18 11:13:36 -07:00
Mitchell Hashimoto
990b814188 terraform: set count to 1 while validating [GH-442] 2014-10-17 18:18:28 -07:00
Mitchell Hashimoto
f626c5df96 terraform: validation works with count if default [GH-442] 2014-10-17 18:06:54 -07:00
Mitchell Hashimoto
bf7c40d115 terraform: test case for variable count 2014-10-17 18:03:30 -07:00
Mitchell Hashimoto
35352a2746 terraform: some more test cases for sanity 2014-10-16 23:20:46 -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
Armon Dadgar
422b82648c terraform: Switch to using semaphore 2014-10-16 10:04:36 -07:00
Armon Dadgar
ad31023252 terraform: Adding a semaphore implementation 2014-10-16 10:04:36 -07:00
Mitchell Hashimoto
5596ee7f53 terraform: don't panic if no state in Walk return [GH-403] 2014-10-15 20:32:19 -07:00
Mitchell Hashimoto
edf85de411 terraform: output state in human-readable format
/cc @armon - Didn't need to save the bits here, plus it makes it easier
for someone to go in and modify this stuff
2014-10-12 22:56:34 -07:00
Mitchell Hashimoto
ce61b5caec terraform: no outputs if we have no resources 2014-10-12 22:49:05 -07:00
Mitchell Hashimoto
06889b8fc7 terraform: make sure taint destroys happen first for counts 2014-10-12 09:50:36 -07:00
Mitchell Hashimoto
7af9179edd terraform: remove old test 2014-10-12 09:45:01 -07:00
Mitchell Hashimoto
f59e89ccb8 terraform: add count tainted apply test 2014-10-12 09:41:27 -07:00
Mitchell Hashimoto
ac7e494697 terraform: remove an inaccurate TODO 2014-10-12 09:19:38 -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
ecafcfa682 terraform: don't validate tainted resources 2014-10-11 16:02:07 -07:00
Mitchell Hashimoto
6e7d23d612 terraform: don't crash if validating orphan 2014-10-11 15:58:52 -07:00
Mitchell Hashimoto
129e4fc453 terraform: fix crash if depends_on used when state has orphans 2014-10-11 13:20:11 -07:00
Mitchell Hashimoto
d7786473df fmt 2014-10-11 12:57:06 -07:00
Mitchell Hashimoto
d2e836275b terraform: sort the modules in the state [GH-318] 2014-10-11 12:47:06 -07:00
Mitchell Hashimoto
36f225dea0 fmt 2014-10-10 14:50:35 -07:00
Mitchell Hashimoto
ab6741f6fc terraform: require the prefix match with a "." in Diff.Instances 2014-10-10 13:46:44 -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
975d564a22 terraform: remove debug stuff 2014-10-09 23:16:59 -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
75e79da9c3 terraform: modify Same to return true if list is computed 2014-10-09 20:52:38 -07:00
Mitchell Hashimoto
dcaf653d6f helper/schema: properly detect that a list is computed 2014-10-09 19:09:06 -07:00
Mitchell Hashimoto
865ec6a6bf terraform: use the InterpSplitDelim 2014-10-09 16:17:00 -07:00
Mitchell Hashimoto
9dd7618fce config: fix messaging for name symbols 2014-10-08 16:12:53 -07:00
Mitchell Hashimoto
9ed89dbabd terraform: make wording better 2014-10-08 16:01:13 -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
28acb7baa8 Merge pull request #361 from hashicorp/f-provisioner-ui
Foundational support for UI output from provisioners
2014-10-05 08:29:18 -07:00
Mitchell Hashimoto
b713f1ac8d terraform: no longer check for nil diff as error 2014-10-04 16:47:42 -07:00