Commit Graph

710 Commits

Author SHA1 Message Date
Clint Shryock 346ff12bc5 provider/aws: Fix issue with Route53 and TXT records 2015-03-16 15:36:18 -05:00
Clint Shryock f4808b1ea7 provider/aws: Add test for TXT route53 record 2015-03-16 15:28:45 -05:00
Clint dc4abb48fa Merge pull request #1195 from hashicorp/f-retire-goamz
provider/aws: Retire goamz
2015-03-16 08:42:40 -05:00
Clint Shryock 670d22e18f update acceptance test with the correct depends_on declarations 2015-03-13 14:58:05 -05:00
Clint Shryock 14a4ea65ea Merge branch 'master' into b-aws-instance-sec-groups
* master:
  provider/aws: Fix encoding bug with AWS Instance
  minor style cleanups
  Tags Schema
  Added Tagging
  Added vpc refactor in aws sdk go
  Removed additional variable for print, added for debugging
  Using hashicorp/aws-sdk-go
  Changed things around as suggested by @catsby
  Refactor with Acceptance Tests
  VPC Refactor
  First refactor
  Added Connection to config
2015-03-13 14:39:29 -05:00
Clint Shryock d5f23aec0a provider/aws: Fix encoding bug with AWS Instance 2015-03-13 10:54:00 -05:00
Clint Shryock 28fbd971fc Retire goamz 2015-03-13 09:42:50 -05:00
Clint Shryock 580b696e7f Strike 'goamz' from the repo' 2015-03-12 16:49:38 -05:00
Clint Shryock 57556bba75 Replace tags files with tags_sdk, rename, and update 2015-03-12 16:43:08 -05:00
Clint Shryock 0fbd701ccb minor style cleanups 2015-03-12 15:13:45 -05:00
Clint Shryock ddc2d8de2e Merge branch 'master' into rmenn-aws-go-vpc
* master: (69 commits)
  upgrade tests and remove ICMPTypeCode for now
  helper/ssh: update import location
  clean  up
  provider/aws: Convert AWS Network ACL to aws-sdk-go
  Update website docs on AWS RDS encryption field
  more test updates
  provider/aws update Network ACL tests
  code cleanup on subnet check
  restore IOPS positioning
  Code cleanup
  Update CHANGELOG.md
  Bugfix: Add tags on AWS IG creation, not just on update
  fix nit-pick from go vet
  remove duplicated function
  provider/aws: Convert AWS Route Table Association to aws-sdk-go
  Cleansup: Restore expandIPPerms, remove flattenIPPerms
  clean up debug output to make go vet happy
  providers/aws: Convert AWS VPC Peering to aws-sdk-go
  provider/aws: Add env default for AWS_ACCOUNT_ID in VPC Peering connection
  convert route table tests to aws-sdk-go
  ...
2015-03-12 15:07:28 -05:00
Clint Shryock 33fdc0c63f update the new test config 2015-03-12 15:01:24 -05:00
Clint Shryock 3a5918d013 Add acceptance test for Network / Instance security group fix 2015-03-12 14:26:10 -05:00
Clint Shryock 749db242f4 Fix issue with Network interfaces and an instance-level security groups (#1188) 2015-03-12 11:08:53 -05:00
Dan Everton cfd8d913bd Make vpnGatewayStateRefreshFunc private 2015-03-12 08:13:39 +10:00
Dan Everton 9f50b048e1 Merge branch 'master' into aws-go-vpn 2015-03-12 08:09:27 +10:00
Clint 9654f2ff3a Merge pull request #1147 from hashicorp/aws-go-instance
provider/aws: Convert AWS Instance to aws-sdk-go
2015-03-11 17:07:58 -05:00
Clint Shryock 670d53b1a1 upgrade tests and remove ICMPTypeCode for now 2015-03-11 16:21:22 -05:00
Clint Shryock 8a5eadedd1 clean up 2015-03-11 15:18:42 -05:00
Clint Shryock bd591877fe provider/aws: Convert AWS Network ACL to aws-sdk-go 2015-03-11 15:01:07 -05:00
Clint Shryock 70a989a23e more test updates 2015-03-11 11:19:08 -05:00
Clint Shryock 8a5c3b8525 provider/aws update Network ACL tests 2015-03-11 10:40:32 -05:00
Clint 9b974b0248 Merge pull request #1176 from TimeIncOSS/tags-updating
Bugfix: Add tags on AWS IG creation, not just on update
2015-03-11 10:31:33 -05:00
Clint Shryock 751140351b code cleanup on subnet check 2015-03-11 09:55:32 -05:00
Clint Shryock 9d6f05e529 restore IOPS positioning 2015-03-11 09:24:59 -05:00
Clint Shryock f8c22c1e2d Merge branch 'master' into aws-go-instance
* master:
  Code cleanup
  Update CHANGELOG.md
  fix nit-pick from go vet
  remove duplicated function
  provider/aws: Convert AWS Route Table Association to aws-sdk-go
  Cleansup: Restore expandIPPerms, remove flattenIPPerms
  clean up debug output to make go vet happy
  providers/aws: Convert AWS VPC Peering to aws-sdk-go
  provider/aws: Add env default for AWS_ACCOUNT_ID in VPC Peering connection
  convert route table tests to aws-sdk-go
  provider/aws: Convert AWS Route Table to aws-sdk-go
  providers/aws: iops in root device skipped when output state
  Give route table assoc it's own copy of this method for now
  provider/aws: Convert Main Route Table assoc. to aws-sdk-go
  aws/Route53 record creation timeout 10->30 mins
  provider/aws: Convert AWS Security Group to aws-sdk-go
  Fixing up the tests to make them pass correctly
  Fixing a corner case while retrieving a template UUID
  Adding tests and docs for the new VPN resources
  Adding a few new resources
2015-03-11 09:21:46 -05:00
Clint 344382df2e Merge pull request #1162 from hashicorp/aws-go-security-groups
provider/aws: Convert AWS Security Groups to aws-sdk-go
2015-03-11 08:33:01 -05:00
Clint Shryock 902ca25f36 Code cleanup 2015-03-11 08:30:43 -05:00
Mitchell Hashimoto ac92766d2c Merge pull request #1164 from TimeIncOSS/route53-increase-timeout
Increase aws/Route53 record creation timeout
2015-03-11 08:31:14 +01:00
Radek Simko c7ccf4f74d Bugfix: Add tags on AWS IG creation, not just on update 2015-03-10 23:01:05 +00:00
Clint 263395a9f0 Merge pull request #1171 from hashicorp/aws-go-route-table-assoc
provider/aws: Convert AWS Route Table Association to aws-sdk-go
2015-03-10 17:01:21 -05:00
Clint Shryock 314453abe5 fix nit-pick from go vet 2015-03-10 16:57:43 -05:00
Clint e4a298fdfb Merge pull request #1174 from hashicorp/aws-go-vpc-peering
providers/aws: Convert AWS VPC Peering to aws-sdk-go
2015-03-10 16:53:31 -05:00
Clint Shryock 3c3b7d51a2 remove duplicated function 2015-03-10 16:52:09 -05:00
Clint Shryock b038e5f720 provider/aws: Convert AWS Route Table Association to aws-sdk-go 2015-03-10 16:43:42 -05:00
Clint 357ef9f313 Merge pull request #1170 from hashicorp/aws-go-route-table
provider/aws: Convert AWS Route Table to aws-sdk-go
2015-03-10 16:42:56 -05:00
Clint 2d2072f8a8 Merge pull request #1165 from hashicorp/aws-go-main-route-table
provider/aws: Convert Main Route Table assoc. to aws-sdk-go
2015-03-10 16:40:15 -05:00
Clint Shryock 3977256c17 Cleansup: Restore expandIPPerms, remove flattenIPPerms 2015-03-10 16:35:49 -05:00
Clint Shryock a22c23ad42 clean up debug output to make go vet happy 2015-03-10 15:55:49 -05:00
Paul Hinze f3a786b084 Merge pull request #1166 from suguru/f-aws-block-device-root-iops
providers/aws: iops in root device skipped when output state
2015-03-10 14:29:23 -06:00
Clint Shryock 30125e3a5f providers/aws: Convert AWS VPC Peering to aws-sdk-go 2015-03-10 15:21:31 -05:00
Clint Shryock fe293f909e provider/aws: Add env default for AWS_ACCOUNT_ID in VPC Peering connection 2015-03-10 14:44:07 -05:00
Clint Shryock e7b3f3cf17 convert route table tests to aws-sdk-go 2015-03-10 10:30:01 -05:00
Clint Shryock 30f401eab7 provider/aws: Convert AWS Route Table to aws-sdk-go 2015-03-10 10:23:14 -05:00
Suguru Namura 30941dfdc4 providers/aws: iops in root device skipped when output state 2015-03-10 19:50:05 +09:00
Dan Everton d6a731040c Format the resource_vpn_gateway*.go files. 2015-03-10 10:30:42 +10:00
Dan Everton c172fd3736 Fix error handling.
AWS returns IncorrectState not DependencyViolation when a VPN gateway is
still attached to a VPC.
2015-03-10 10:28:44 +10:00
Dan Everton d253fff4e5 Hardcode type parameter value.
Current AWS documentation says there's only one type of VPN gateway for
now.
2015-03-10 09:49:46 +10:00
Clint Shryock 795970d5a2 Give route table assoc it's own copy of this method for now 2015-03-09 17:12:15 -05:00
Clint Shryock 5a13ac9bc9 provider/aws: Convert Main Route Table assoc. to aws-sdk-go 2015-03-09 16:15:25 -05:00
Radek Simko bc44fdc1a7 aws/Route53 record creation timeout 10->30 mins 2015-03-09 20:12:15 +00:00
Clint Shryock 20b02cacd4 provider/aws: Convert AWS Security Group to aws-sdk-go
Convert security group test too
2015-03-09 11:45:58 -05:00
Rahul Menon a34800dff2 Tags Schema 2015-03-09 14:39:06 +05:30
Dan Everton 7565e69ba3 Merge branch 'master' into aws-go-vpn 2015-03-07 09:46:23 +10:00
Clint Shryock 94d30aa70a provider/aws: Convert aws instance test to aws-sdk
convert AWS Instance and Test file to use aws-sdk-go
2015-03-06 14:53:05 -06:00
Peter Beams 810860ec37 fixing indentation 2015-03-06 16:39:00 +00:00
Peter Beams 79eb50e06b removing commented imports 2015-03-06 16:37:18 +00:00
Peter Beams 3052edee6b removing unrequired changes 2015-03-06 16:12:09 +00:00
Peter Beams efcba8df2e tweaks after merge from master 2015-03-06 16:08:51 +00:00
Peter Beams e59d4fc976 merging from hashicorp master 2015-03-06 15:53:31 +00:00
Peter Beams c3ba0a7f6d adding acceptance tests for network interface 2015-03-06 15:49:56 +00:00
Peter Beams 39346e6f16 tweaks in new aws network interface 2015-03-06 09:29:25 +00:00
Dan Everton 7240af439c Minor test fixes. 2015-03-06 15:48:30 +10:00
Paul Hinze bc1baa8712 providers/aws: final_snapshot_id isn't ForceNew
Removing `ForceNew` from `final_snapshot_identifier` - it's a parameter
that's _only_ passed during the DeleteDBInstance API call, so it's perfectly
valid to change the attribute for an existing DB Instance.

fixes #1138
2015-03-05 19:07:41 -06:00
Dan Everton 98d827b6f5 Match the internet gateway code better. 2015-03-06 08:47:29 +10:00
Dan Everton 4706ee7ffc Add acceptance test for aws_vpn_gateway resource. 2015-03-06 08:41:22 +10:00
Dan Everton e5a2504acf First pass at aws_vpn_gateway resource
Uses the aws-sdk-go module and is based on the way the existing
aws_internet_gateway resource works.
2015-03-06 08:41:21 +10:00
Paul Hinze 170341d38e providers/aws: go vet fixes in aws_subnet 2015-03-05 14:53:07 -06:00
Radek Simko c616c83a21 Let aws_db_instance.*.address to be actually address 2015-03-05 18:15:30 +00:00
Clint cebe8b9cbe Merge pull request #1117 from hashicorp/aws-go-key-pair
provider/aws: Convert AWS Key Pair to aws-sdk-go
2015-03-05 09:17:22 -06:00
Clint 23ece16d15 Merge pull request #1113 from hashicorp/aws-go-internet-gateway
providers/aws: Convert AWS Internet Gateway to aws-sdk-go
2015-03-05 09:17:06 -06:00
Clint Shryock 641c7c613a provider/aws: Convert AWS Key Pair to aws-sdk-go 2015-03-04 15:17:23 -06:00
Paul Hinze 72d4ac73d3 Merge pull request #1103 from suguru/aws-block-device-iops
providers/aws: add iops to block devices
2015-03-04 12:02:10 -06:00
Clint Shryock 7643406735 provider/aws: Convert AWS Internet Gateway (test) to aws-sdk-go 2015-03-04 10:55:17 -06:00
Rahul Menon bbc9331d0c Fixed Merge conflicts 2015-03-04 18:42:10 +05:30
Rahul Menon 840e6f4826 Added Tagging 2015-03-04 18:37:30 +05:30
Rahul Menon 1cecb37ab9 Added vpc refactor in aws sdk go 2015-03-04 17:50:00 +05:30
Clint Shryock 89d6cdb0a6 providers/aws: Convert AWS Internet Gateway to aws-sdk-go 2015-03-03 16:08:52 -06:00
Clint Shryock 612a570a6d provider/aws: Convert AWS EIP to use aws-sdk-go 2015-03-03 11:45:27 -06:00
Peter Beams 42aaee3e92 dealing with attach / detach 2015-03-03 15:30:10 +00:00
rmenn d56c683602 Removed additional variable for print, added for debugging 2015-03-03 20:57:30 +05:30
Peter Beams 533b7238b1 can create, update & delete eni 2015-03-03 12:57:11 +00:00
Suguru Namura 68efa3fc21 providers/aws: add iops to block devices 2015-03-03 15:57:08 +09:00
Rahul Menon c5efe1e5ce Using hashicorp/aws-sdk-go 2015-03-03 10:49:21 +05:30
Rahul Menon d77df312a3 Changed things around as suggested by @catsby 2015-03-03 10:45:15 +05:30
Peter Beams 590a912cc9 first steps to add network interface 2015-03-03 01:33:42 +00:00
Clint Shryock 10a32b9819 providers/aws: Convert AWS Subnet to aws-sdk-go 2015-03-02 16:32:48 -06:00
Clint 23d90c0c02 Merge pull request #1092 from hashicorp/aws-go-s3-fix-region-bug
provider/aws: Special case us-east-1 for S3 bucket creation
2015-03-02 14:38:48 -06:00
Clint 475a748ff8 Merge pull request #1090 from hashicorp/aws-go-elb
provider/aws: Convert AWS ELB to aws-sdk-go
2015-03-02 14:38:07 -06:00
Clint Shryock 6eea5dcec8 rename structure tests to be more idiomatic 2015-03-02 11:47:06 -06:00
Paul Hinze 2450b03bc6 Merge pull request #1041 from aianchici/master
adding storage_encrypted as an optional parameter
2015-03-02 11:33:52 -06:00
Clint Shryock af57b3db69 provider/aws: Special case us-east-1 for S3 bucket creation. 2015-03-02 11:13:19 -06:00
Clint Shryock 2b3bcd5c27 add simple test for expandInstanceString 2015-03-02 10:00:45 -06:00
Clint Shryock da55f9bf85 provider/aws: Convert AWS ELB to aws-sdk-go 2015-03-02 09:44:06 -06:00
Radek Simko 503ffbd3be Save token that came from goamz + use it in go-sdk-aws 2015-03-02 11:16:06 +00:00
Rahul Menon 89d01b49ab Refactor with Acceptance Tests 2015-03-02 14:21:13 +05:30
Alex Ianchici 916c64b166 adding storage_encrypted as an optional boolean parameter to support encryption at rest in AWS 2015-02-27 14:29:24 -08:00
Tomas Doran 09f5935993 Allow launch configuration names to be computed
This allows you to set lifecycle create_before_destroy = true
and fixes #532 as then we'll make a new launch config, change
the launch config on the ASG, and *then* delete the old launch
config.

Also tried adding tests which unfortunately don't seem to fail...
2015-02-27 10:51:33 -08:00
Jack Pearkes 6f27f90ae1 providers/aws: increase db instance wait times 2015-02-27 09:38:07 -08:00
Jack Pearkes 053a7c0a8b Merge pull request #1052 from TimeInc/hct-bugfix
Bug: Prevent empty string to be used as default health_check_type
2015-02-27 09:33:46 -08:00
Clint 0adb052c11 provider/aws: Remove goamz/rds
consolidates the conversion of AWS RDS to aws-sdk-go
2015-02-27 10:54:37 -06:00
Clint Shryock b5590c6247 provider/aws: convert aws rds subnet to aws-sdk-go 2015-02-27 09:56:38 -06:00
Clint c44d0e6301 Merge pull request #1064 from hashicorp/aws-go-db-security-group
provider/aws: Convert AWS DB Security Group to aws-sdk-go
2015-02-27 08:49:48 -06:00
Clint Shryock 659ddd6fa1 provider/aws: convert db param group test to use aws-sdk-go 2015-02-26 15:54:03 -06:00
Clint Shryock f453d1863a remove helper functions, flatten status in the function 2015-02-26 15:47:30 -06:00
Clint Shryock 561e92e65d provider/aws: Convert db security group test 2015-02-26 15:36:38 -06:00
Clint Shryock ac8da7a988 provider/aws: Convert AWS DB Security Group to aws-sdk-go
Part 1: converting the test next
2015-02-26 15:08:39 -06:00
Clint Shryock bd2791824f Update ingress signature 2015-02-26 11:03:56 -06:00
Clint Shryock 242cdc7a29 provider/aws: Convert RDS DB Parameter group to aws-sdk-go 2015-02-26 09:33:33 -06:00
Radek Simko e378ea42b8 Prevent empty string to be used as default health_check_type 2015-02-25 21:46:56 +00:00
Clint Shryock f3ba181861 Swap awslabs/aws-sdk-go for hashicorp fork
A temporary change to prevent upstream break while awslabs continues to
refactor.
2015-02-25 15:29:11 -06:00
Clint Shryock 31236b8f9e Fix zero case 2015-02-25 11:05:14 -06:00
Clint Shryock 5252623656 provider/aws: Remove sentinel value default for RDS instance; default 1 to match API 2015-02-25 10:44:10 -06:00
Clint Shryock bb94eaa50d provider/aws: Fix issue with AWS RDS DB instance which prevented disabling backups 2015-02-25 09:41:05 -06:00
Rahul Menon 06b2d0bbf6 VPC Refactor 2015-02-25 17:34:27 +05:30
Rahul Menon 1472f976d7 First refactor 2015-02-25 16:17:55 +05:30
Rahul Menon 38a8232e9a Added Connection to config 2015-02-25 15:04:17 +05:30
Clint Shryock 4064d29050 Merge branch 'master' into aws-go-rds-instance
* master:
  providers/aws: Convert Launch Configurations to awslabs/aws-sdk-go
  update CHANGELOG
  terraform: test post state update is called
  command: StateHook for continous state updates
  terraform: more state tests, fix a bug
  state: deep copies are required
  terraform: make DeepCopy public
  state/remote: increment serial properly
  state: only change serial if changed
  terraform: call the EvalUpdateStateHook strategically
  terraform: PostStateUpdate hook and EvalUpdateStateHook
2015-02-24 21:43:03 -06:00
Clint Shryock 92bf85925b providers/aws: Convert Launch Configurations to awslabs/aws-sdk-go 2015-02-24 21:02:01 -06:00
Clint Shryock d79b0d7fd1 provider/aws: Convert AWS DB Instance over to awslabs/aws-sdk-go
- Remove check on password for AWS RDS Instance
- Update documentation on AWS RDS Instance regarding DB Security Groups
- Change error handling to check error code from AWS API [ci skip]
2015-02-24 16:51:47 -06:00
Mitchell Hashimoto 84b1db4505 Merge pull request #1021 from hashicorp/b-aws-instance-source-dest-check-on-create
providers/aws: fix source_dest_check on instance creation
2015-02-23 13:45:17 -08:00
Clint f6249ff6db Merge pull request #1018 from hashicorp/aws-go-autoscaling
Convert AWS AutoScalingGroup to awslabs/aws-sdk-go
2015-02-23 10:22:22 -06:00
Paul Hinze 473b03ccae providers/aws: fix source_dest_check on instance creation
The `SourceDestCheck` attribute can only be changed via
`ModifyInstance`, so the AWS instance resource's `Create` function calls
out to `Update` before it returns to take care of applying
`source_dest_check` properly.

The `Update` function originally guarded against unnecessary API calls
with `GetOk`, which worked fine until #993 when we changed the `GetOk`
semantics to no longer distinguish between "configured and zero-value"
and "not configured".

I attempted in #1003 to fix this by switching to `HasChange` for the
guard, but this does not work in the `Create` case.

I played around with a few different ideas, none of which worked:

(a) Setting `Default: true` on `source_dest_check' has no effect

(b) Setting `Computed: true` on `source_dest_check' and adding a `d.Set`
    call in the `Read` function (which will initially set the value to `true`
    after instance creation). I really thought I could get this to work,
    but it results in the following:

```go
d.Get('source_dest_check')       // true
d.HasChange('source_dest_check') // false
d.GetChange('source_dest_check') // old: false, new: false
```

I couldn't figure out a way of coherently dealing with that result, so I
ended up throwing up my hands and giving up on the guard altogether.
We'll call `ModifyInstance` more than we have to, but this at least
yields expected behavior for both Creates and Updates.

Fixes #1020
2015-02-21 14:26:46 -06:00
Clint Shryock 5b35b85527 remove the rand, it's not helping like I thought 2015-02-20 15:49:51 -06:00
Clint Shryock 4326b6b8b5 cleanups after feedback 2015-02-20 14:28:14 -06:00
Mitchell Hashimoto 523639b5cd fmt 2015-02-20 10:22:26 -08:00
Mitchell Hashimoto cf5697ff32 providers/aws: if a VPC doesn't exist, then remove from state 2015-02-20 10:20:20 -08:00
Clint Shryock d79ac17757 randomize ASG name in test, to get around slow AWS delete time 2015-02-20 11:40:47 -06:00
Clint Shryock b38a3767eb provider/aws: Convert AWS AutoScalingGroup to awslabs/aws-sdk-go 2015-02-20 11:28:20 -06:00
Clint Shryock 08949866c5 Merge config 2015-02-20 09:08:41 -06:00
Clint Shryock 57300d32c6 merge master 2015-02-20 08:55:54 -06:00
Clint Shryock 116e6cac33 provider/aws: Convert AWS S3 Bucket to awslabs/aws-sdk-go 2015-02-19 15:38:56 -06:00
Clint Shryock 94e7723370 provider/aws: Convert Route 53 Zone resource to use new awslabs/aws-sdk-go
library.

This commit updates the Route 53 Zone resource to use AWS Labs aws-sdk-go
library instead of mitchellh/goamz.

- hard code us-east-1 for Route53 region, since it's a global endpoint
- add some units test for CleanZoneID
2015-02-19 15:05:46 -06:00
Mitchell Hashimoto e3b64f5bb5 providers/aws: style 2015-02-19 10:52:09 -08:00
Mitchell Hashimoto cd1e70faab providers/aws: acceptance test was too strict 2015-02-19 09:54:16 -08:00
Mitchell Hashimoto 448ebd1372 Merge pull request #1005 from hashicorp/f-fix-elb-subnet-test
Revert "Merge pull request #804 from PeoplePerHour/f-aws-elb-subnet"
2015-02-19 09:46:05 -08:00
Mitchell Hashimoto 39d28a9612 Merge pull request #1003 from hashicorp/b-aws-instance-source-dest-check
providers/aws: fix aws_instance source_dest_check
2015-02-19 09:37:13 -08:00
Paul Hinze 86a2449569 Revert "Merge pull request #804 from PeoplePerHour/f-aws-elb-subnet"
Unfortunately, the acceptance tests here were improperly passing, and
allowing Subnet updates on ELBs is not as straightfoward as simply
removing `ForceNew`.

Subnets on ELBs need to be managed by two explicit API calls:

 * `AttachLoadBalancerToSubnets` - http://bit.ly/elbattachsubnet
 * `DetachLoadBalanceFromSubnets` - http://bit.ly/elbdetachsubnet

We'll need to circle back and use these APIs to explicitly add support.

This fixes the failure of `TestAccAWSELB_AddSubnet` by removing the
test.

This reverts commit 61e91017be, reversing
changes made to 49b3afe452.
2015-02-18 18:15:04 -06:00
Paul Hinze 3c4d1791e5 providers/aws: fix aws_instance source_dest_check
Was relying on old behavior of GetOk and therefore never properly seeing
a change from true -> false.

This fixes the acceptance test failure of
`TestAccAWSInstance_sourceDestCheck`.
2015-02-18 17:46:50 -06:00
Paul Hinze 434a9759a0 providers/aws: enhance root_block_device acceptance test
So that we have a test that will fail in case the flubbery of #1000
returns.
2015-02-18 17:28:28 -06:00
Mitchell Hashimoto eca5fe3ff3 providers/aws: fix ELB acceptance test 2015-02-18 15:18:51 -08:00
Mitchell Hashimoto 05a34d7d77 providers/aws: root block device not being set properly
The value to set must not contain invalid fields.
2015-02-18 14:45:13 -08:00
Mitchell Hashimoto c7e536680d Merge pull request #999 from TimeInc/clean-code
Clean code (get rid of go vet errors)
2015-02-18 12:28:12 -08:00
Paul Hinze 73d20b4c58 providers/aws: add root_block_device to aws_instance
AWS provides a single `BlockDeviceMapping` to manage three different
kinds of block devices:

 (a) The root volume
 (b) Ephemeral storage
 (c) Additional EBS volumes

Each of these types has slightly different semantics [1].

(a) The root volume is defined by the AMI; it can only be customized
with `volume_size`, `volume_type`, and `delete_on_termination`.

(b) Ephemeral storage is made available based on instance type [2]. It's
attached automatically if _no_ block device mappings are specified, and
must otherwise be defined with block device mapping entries that contain
only DeviceName set to a device like "/dev/sdX" and VirtualName set to
"ephemeralN".

(c) Additional EBS volumes are controlled by mappings that omit
`virtual_name` and can specify `volume_size`, `volume_type`,
`delete_on_termination`, `snapshot_id`, and `encryption`.

After deciding to ignore root block devices to fix #859, we had users
with configurations that were attempting to manage the root block device chime
in on #913.

Terraform does not have the primitives to be able to properly handle a
single collection of resources that is partially managed and partially
computed, so our strategy here is to break out logical sub-resources for
Terraform and hide the BlockDeviceMapping inside the provider
implementation.

Now (a) is supported by the `root_block_device` sub-resource, and (b)
and (c) are still both merged together under `block_device`, though I
have yet to see ephemeral block devices working properly.

Looking into possibly separating out `ephemeral_block_device` and
`ebs_block_device` sub-resources as well, which seem like the logical
next step. We'll wait until the next big release for this, though, since
it will break backcompat.

[1] http://bit.ly/ec2bdmap
[2] http://bit.ly/instancestorebytype

Fixes #913
Refs #858
2015-02-18 13:15:11 -06:00
Radek Simko e149a97658 Make composite literals to use keyed fields
This will prevent following error:
 - * composite literal uses unkeyed fields
2015-02-18 18:26:59 +00:00
Mitchell Hashimoto fc7c859c8a providers/aws: egress should be computed 2015-02-18 09:27:55 -08:00
Mitchell Hashimoto 5e8c3113b4 providers/aws: style change 2015-02-18 09:07:46 -08:00
Mitchell Hashimoto 44c45994c8 Merge pull request #963 from julienba/master
providers/aws: vpc_peering_connection
2015-02-18 06:56:28 -08:00
jba 372035368f allow update 2015-02-18 10:45:12 +01:00
Mitchell Hashimoto c40238041c providers/aws: fix bad arg giving wrong type [GH-992] 2015-02-17 16:39:51 -08:00