Commit Graph

2806 Commits

Author SHA1 Message Date
Raphael Randschau 90889632e0 Add aws_ecs_container_definition data source
this datasource allows terraform to work with externally modified state, e.g.
when you're using an ECS service which is continously updated by your CI via the
AWS CLI.

right now you'd have to wrap terraform into a shell script which looks up the
current image digest, so running terraform won't change the updated service.

using the aws_ecs_container_definition data source you can now leverage
terraform, removing the wrapper entirely.
2016-06-19 21:50:37 +02:00
David Tolnay 0b9fb1d8f8
Stop swallowing errors from DescribeAlarms
This caused alarms to be created repeatedly if Terraform is running without
DescribeAlarms permission.
2016-06-18 15:57:52 -07:00
James Bardin 2a2f7cbc52 Merge pull request #7205 from hashicorp/jbardin/GH-2027
core: don't check any parts of a computed set in InstanceDiff.Same
2016-06-17 11:00:29 -04:00
Radek Simko 2cdb5a367e aws/route53_zone: Make delegation_set_id conflict w/ vpc_id (#7213)
- as per the API reference it is not possible to use delegation sets w/ private hosted zones
   - http://docs.aws.amazon.com/Route53/latest/APIReference/API-create-hosted-zone-private.html
   - http://docs.aws.amazon.com/Route53/latest/APIReference/API_CreateHostedZone.html
 - if you specify both AWS returns confusing error "InvalidInput" with no further details so this should reduce potential confusions & improve UX
2016-06-17 12:35:49 +01:00
James Bardin a3e2c99219 Add a failing acceptance test from GH-2027 2016-06-16 18:43:15 -04:00
James Bardin f65a898a51 Merge pull request #7188 from hashicorp/jbardin/GH-7017
provider/aws: Check for unassigned AWS Cookie Stickiness Policy
2016-06-16 11:35:05 -04:00
Clint 24bcac42be provider/aws: Retry EIP association (#7186) 2016-06-16 10:03:16 -05:00
James Bardin cfd8254db8 Check for existing but unassigned LB policies
If an AWS Cookie Stickiness Policy is removed from the listener in
the AWS console the policy isn't deleted. Cross reference the policy
name with those assigned to the listener to determine if the policy
is actually being used.
2016-06-16 10:10:52 -04:00
Martin Atkins ce447e8e2a aws_availability_zones output as "names" rather than "instance" (#7162)
Since this resource produces a list it feels more intuitive to give its
attribute a plural name, and since the noun "instance" already means
something specific in the AWS provider that doesn't apply here we use
"names" to indicate that these are availability zone names.

Also includes updating the docs to not show a dynamic count example for
now, since we don't support that yet.
2016-06-15 15:17:12 +02:00
James Bardin e2d257372a Merge pull request #7166 from hashicorp/jbardin/GH-7065
provider/aws: Check for LoadBalancerNotFound when reading AppCookieStickinessPolicy
2016-06-15 08:59:58 -04:00
James Bardin d4d8a99ba4 Check for LoadBalancerNotFound
When reading an AppCookieStickinessPolicy check for LoadBalancerNotFound
as well as PolicyNotFound. This prevents errors when when destroying a
policy on an ELB that no longer exists.
2016-06-14 17:58:48 -04:00
Clint 627efa21f4 provider/aws: Retry RouteTable Route/Assocation creation (#7156)
* provider/aws: Retry RouteTable Assocation creation

* provider/aws: retry route creation

* remove extra string check
2016-06-14 15:39:52 -05:00
clint shryock 4796e27d1a provider/aws: Randomize Cluser Param group name to avoid collision 2016-06-14 10:42:36 -05:00
clint shryock 8f216563aa provider/aws: Fix db instance snapshot tests 2016-06-13 10:05:01 -05:00
Paul Stack 5e23e87c30 provider/aws: `aws_db_instance` change to the default for (#7118)
`publicly_accessible` to be false
2016-06-11 00:13:53 +02:00
Paul Hinze bba5a38c95 Merge pull request #7116 from hashicorp/b-aws-map-list-test-merrymaking
provider/aws: Clean up some map/set test checks
2016-06-10 16:57:24 -05:00
Paul Stack 5ecc8e3169 provider/aws: `aws_db_instance` now defaults `publicly_accessible` to (#7117)
false

Fixes #7035

A known issue in Terraform means that d.GetOk() on a bool which is false
will mean it doesn't get evaulated. Therefore, when people set
publicly_accessible to false, it will never get evaluated on the Create

We are going to make it default to false now
2016-06-10 23:55:36 +02:00
clint shryock 88ed387bd6 fix up cloudformation test checks 2016-06-10 12:52:10 -05:00
clint shryock 0530cf963d provider/aws: revert # -> % for tests 2016-06-10 12:45:24 -05:00
clint shryock fad26ec59e provider tests: Update to match new tags map in state 2016-06-10 10:07:02 -05:00
Clint 19eb0079db provider/aws: update asg placement group test name, to fix import test (#7095) 2016-06-10 09:01:30 -05:00
Clint 6318b8fd4c provider/aws: Rename parameter_group_name to db_cluster_parameter_group_name (supersedes #7068) (#7083)
* modify parameter_group_name to db_cluster_parameter_group_name #7046

* provider/aws: Deprecate parameter_group_name in RDS Cluster

Use db_cluster_parameter_group_name instead
2016-06-09 16:45:29 -05:00
Clint 5e26cb9960 provider/aws: Update Lambda functions on name change (#7081)
Allows the updating of Lambda functions on name change alone
2016-06-09 16:44:10 -05:00
clint shryock 253a46b573 provider/aws: Randomize names in code deploy test to reduce chances of name collision on tests 2016-06-09 15:39:35 -05:00
Paul Forman 391a7f85b0 provider/aws: Fix issue with Root Block Devices and encrypted flag in Launch Configurations [GH-6512]
Fixed the problem where the root_block_device could cause an apply error
by reading back an "encrypted" parameter that was meant for an
ebs_block_device.  "encrypted" is not part of the root_block_device
schema, since it can't be set explicitly.

Added a check in Create to fail when the root device is incorrectly
specified as an ebs_block_device, as this causes continual refreshing
due to mismatched state between root_block_device and ebs_block_device.

"encrypted" and "snapshot_id" should be guarded with ConflictsWith, but
that doesn't appear to work on nested resources despite #1926.
2016-06-08 15:56:27 -05:00
clint shryock c667b2d8cd Merge branch 'pr-7075'
* pr-7075:
  provider/aws: Log ElasticCache subnet removal
  provider/aws: Update state on `aws_elasticache_subnet_group` not found exception
2016-06-08 13:42:08 -05:00
clint shryock 1624c7e27f provider/aws: Log ElasticCache subnet removal 2016-06-08 13:35:49 -05:00
stack72 2a09941f76 provider/aws: Update state on `aws_elasticache_subnet_group` not found exception
Fixes #7062

make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSElasticacheSubnetGroup'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /vendor/)
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSElasticacheSubnetGroup -timeout 120m
=== RUN   TestAccAWSElasticacheSubnetGroup_basic
--- PASS: TestAccAWSElasticacheSubnetGroup_basic (44.62s)
=== RUN   TestAccAWSElasticacheSubnetGroup_update
--- PASS: TestAccAWSElasticacheSubnetGroup_update (73.74s)
PASS
ok  	github.com/hashicorp/terraform/builtin/providers/aws	118.379s
2016-06-08 16:00:13 +02:00
Sam Ottenhoff bd36bc60aa BGP AS 60000 is assigned to EQUINIX-CLOUD-EXCHANGE-AMSTERDAM-ASN.
AS65000 is reserved for private use. https://en.wikipedia.org/wiki/Autonomous_system_\(Internet\)
2016-06-08 13:46:56 +00:00
James Bardin cd160d3f3f Merge pull request #6965 from hashicorp/jbardin/GH-3968
Add support for Amazon Elastic Transcoder
2016-06-07 17:28:55 -04:00
James Bardin 5b5641208e remove extra "=" from test config 2016-06-07 17:06:25 -04:00
James Bardin 5c1b625c84 Add support for Amazon Elastic Transcoder
- Add resources for elastic transcoder pipelines and presets
2016-06-07 16:07:08 -04:00
James Bardin 4c7a31d72a Merge pull request #6879 from hashicorp/jbardin/GH-3999
Add top-level ELB Attachment resource
2016-06-07 10:19:07 -04:00
James Bardin e4d8c6929f Add top-level ELB Attachment resource
Add an aws_elb_attachment resource so that the attment of instances to
an ELB can be managed separately from an aws_elb and prevent dependency
cycles.
2016-06-07 09:46:39 -04:00
Clint d8ab30ca02 Merge pull request #6987 from modax/bug/vpngw-vpc-reattach
provider/aws: Fix reattachment of VPC to VPN gateway.
2016-06-06 11:30:44 -05:00
clint shryock b9f512e0cf provider/aws: Bump ElasticSearch domain delete time to match create time. Should help test pass 2016-06-06 11:13:48 -05:00
clint shryock 3044cc5c38 provider/aws: randomiz names in TestAccAWSCloudwatchLogSubscriptionFilter_basic 2016-06-06 10:25:02 -05:00
Joshua Spence d3030e1e0f Add `name_prefix` to `aws_iam_instance_profile` and `aws_iam_role` (#6939) 2016-06-05 00:46:27 +01:00
clint shryock b24228021f Merge branch 'pr-6865'
* pr-6865:
  provider/aws: Add db_param group to RDS Cluster Instance test
  remove status attribute
  support aurora instance's parameter group and modifyinstance
2016-06-03 13:46:14 -05:00
clint shryock 412d88e768 provider/aws: Add db_param group to RDS Cluster Instance test 2016-06-03 13:46:01 -05:00
clint shryock badbe6d738 provider/aws: Fix panics in datasource AMI 2016-06-03 09:19:51 -05:00
Linda Xu 5ca5b1e3a1 remove status attribute 2016-06-02 20:37:36 -07:00
clint shryock 3f0650b585 provider/aws: randomize role name for test 2016-06-02 15:22:16 -05:00
clint shryock 2703c4eab9 provider/aws: fix go fmt 2016-06-02 14:40:43 -05:00
clint shryock e427880684 provider/aws: Fix TestAccAWSElasticacheSecurityGroup_basic test 2016-06-02 14:36:30 -05:00
clint shryock a258e492cd provider/aws: randomize ASG Notification test names 2016-06-02 14:36:30 -05:00
Modestas Vainius e655cbd0fc provider/aws: Fix reattachment of VPC to VPN gateway.
When VPC is detached from VPN gateway, its VpcAttachment stays in place
just with state changed to "detached". Since terraform was not checking
attachment state, it used to think VPC gateway was still attached.
2016-06-02 20:35:33 +03:00
stack72 b3d680eee0 Merge branch 'master' of https://github.com/statoilfuelretail/terraform into statoilfuelretail-master 2016-06-02 18:06:37 +01:00
Radek Simko 2a9f47aa70 provider/aws: aws_s3_object -> aws_s3_bucket_object (docs + filename) (#6979)
* aws/docs: Fix s3_bucket_object DS documentation

* provider/aws: aws_s3_object -> aws_s3_bucket_object
2016-06-02 12:13:39 +01:00
Anshul Sharma 1f28bf0a74 set cross_zone_load_balancing default to true (#6897)
https://github.com/hashicorp/terraform/issues/6891
2016-06-02 12:08:46 +01:00
Radek Simko 1ea5cff9b3 Merge pull request #6946 from TimeIncOSS/f-aws-s3-object-data-source
provider/aws: Add aws_s3_bucket_object data source
2016-06-02 07:04:46 +01:00
Radek Simko bf8931b1ab provider/aws: Mark Lambda function as gone when it's gone (#6924)
* helper/error: Introduce TimeoutError & UnexpectedStateError

* provider/aws: Mark Lambda function as gone when it's gone
2016-06-02 00:50:43 +01:00
Clint d723e1c185 Merge pull request #6955 from paybyphone/paybyphone_cloudfront_origin_access_identity_arn
provider/aws: Add iam_arn to aws_cloudfront_origin_access_identity
2016-06-01 15:25:23 -05:00
Radek Simko d4fe1b9145 provider/aws: Add s3_bucket_object data source 2016-06-01 19:14:17 +01:00
clint shryock 5add35d654 provider/aws: Add Tags to Test AMIs to help debug leaks 2016-06-01 09:09:41 -05:00
clint shryock d89a240885 - minor wording update and link to docs
- fix error checking
- update debug log on migration
- remove regression test because the attribute is renamed
2016-05-31 16:32:37 -05:00
Chris Marchesi 65824c7725 provider/aws: Add iam_arn to aws_cloudfront_origin_access_identity
Add the iam_arn attribute to aws_cloudfront_origin_access_identity,
which computes the IAM ARN for a certain CloudFront origin access
identity.

This is necessary because S3 modifies the bucket policy if CanonicalUser
is sent, causing spurious diffs with aws_s3_bucket resources.
2016-05-31 13:55:49 -07:00
Adam Mielke 97fbeaf59f add support for geolocation and latency records to aws route53 provider 2016-05-31 15:11:02 -05:00
James Nugent 50a32b5ea4 Merge pull request #6881 from hashicorp/iam-policy-datasource
provider/aws: aws_iam_policy_document data source
2016-05-31 10:51:14 -07:00
Paul Hinze 5964f4a85d Merge pull request #6923 from paybyphone/paybyphone_sensitive_schema
core: Adding Sensitive attribute to resource schema
2016-05-31 11:57:54 -05:00
James Nugent c91d62fda0 provider/aws: aws_iam_policy_document data source
This brings over the work done by @apparentlymart and @radeksimko in
PR #3124, and converts it into a data source for the AWS provider:

This commit adds a helper to construct IAM policy documents using
familiar Terraform concepts. It makes Terraform-style interpolations
easier and resolves the syntax conflict between Terraform interpolations
and IAM policy variables by changing the latter to use &{...} for its
interpolations.

Its use is completely optional and users are free to go on using literal
heredocs, file interpolations or whatever else; this just adds another
option that fits more naturally into a Terraform config.
2016-05-31 11:08:02 -05:00
Chris Marchesi 9d7fb89114 core: Adding Sensitive attribute to resource schema
This an effort to address hashicorp/terraform#516.

Adding the Sensitive attribute to the resource schema, opening up the
ability for resource maintainers to mark some fields as sensitive.
Sensitive fields are hidden in the output, and, possibly in the future,
could be encrypted.
2016-05-29 22:18:44 -07:00
Chris Marchesi 2d65e9dbd2 provider/aws: Add tests for aws_availability_zones data source
Closing off my other AWS availability zone branch, I'm adding tests for
the existing aws_availability_zones data source.

This closes hashicorp/terraform#4848.
2016-05-29 18:23:42 -07:00
djuke c1eee521f3 reading the aws instance it was assumed that eth0 was the first in the list of network interfaces (#6761) 2016-05-29 23:01:58 +01:00
James Nugent 46f81401b9 Merge pull request #6829 from hashicorp/aws-dynamodb-forcenew
provider/aws: Change to `aws_dynamodb_table` hash_key forces a new resource
2016-05-29 12:14:58 -07:00
Chris Marchesi 9ac7fb0276 provider/aws: New data source: aws_ami
This data source allows one to look up the most recent AMI for a specific
set of parameters, much like aws ec2 describe-images in the AWS CLI.

Basically a refresh of hashicorp/terraform#4396, in data source form.
2016-05-29 09:55:12 -07:00
Clint 3355c1528d provider/aws: Fix typo in ELB import test (#6886) 2016-05-26 03:38:39 -05:00
clint shryock 6f04c36a1a provider/aws: Ranomize LB names so tests can run at the same time 2016-05-26 03:37:54 -05:00
Clint 983b6710a5 provider/aws: Add per user, role and group policy attachment (supersedes #5816) (#6858)
* Add per user, role and group policy attachment

* Add docs for new IAM policy attachment resources.

* Make policy attachment resources manage only 1 entity<->policy attachment

* provider/aws: Tidy up IAM Group/User/Role attachments
2016-05-25 11:03:43 -05:00
David Glasser b3425447e5 provider/aws: fix aws_security_group_rule refresh (#6730)
When two rules differ only in source security group, EC2 APIs return
them as a single rule, but Terraform requires separate
aws_security_group_rule resources.

6bdab07174 changed Read to set source_security_group_id (and
cidr_blocks) from the rule returned from EC2 and chose the first
source_security_group_id arbitrarily, which is wrong.

Makes TestAccAWSSecurityGroupRule_PartialMatching_Source pass again.

Also adds a comment noting that there is a bug in the new resource
importing feature.

Fixes #6728.
2016-05-25 10:59:41 -05:00
Linda Xu 38ac748b88 support aurora instance's parameter group and modifyinstance 2016-05-24 21:46:00 -07:00
Paul Stack ce4841e6a6 provider/aws: Add support to `aws_redshift_cluster` for ``iam_roles`` (#6647) 2016-05-24 22:44:46 +01:00
James Nugent 1ea727eb13 provider/aws: Add aws_availability_zones source
This commit adds a data source with a single list, `instance` for the
schema which gets populated with the availability zones to which an
account has access.
2016-05-24 15:42:45 -05:00
Paul Stack 1df8290134 provider/aws: Support tags for AWS redshift cluster (#5356) 2016-05-24 18:43:12 +01:00
Clint 171c1e39d2 provider/aws: SQS use raw policy string if compact fails (#6724) 2016-05-24 10:38:32 -05:00
Thibault Vigouroux efdee645bf Handled case when instanceId is absent in network interfaces 2016-05-24 15:52:38 +02:00
stack72 68d035bc50 provider/aws: Change to `aws_dynamodb_table` hash_key forces a new
resource

We had a line on the Update func that said:

```
Hash key can only be specified at creation, you cannot modify it.
```

The resource has now been changed to ForceNew on the hashkey

```
aws_dynamodb_table.demo-user-table: Refreshing state... (ID: Users)
aws_dynamodb_table.demo-user-table: Destroying...
aws_dynamodb_table.demo-user-table: Destruction complete
aws_dynamodb_table.demo-user-table: Creating...
aws_dynamodb_table.demo-user-table: Creation complete
```
2016-05-24 11:39:55 +01:00
clint shryock 5fcc089266 provider/aws: Randomize an ASG/LC test 2016-05-23 10:20:14 -05:00
stack72 fd8ab99ffe provider/aws: Remove the description test from the Attributes tests as this now has a default value 2016-05-23 13:48:23 +01:00
Joshua Spence c193cbdc03 Add default description
Closes #6100. Set the default value for the `description` field to be "Managed by Terraform".
2016-05-23 06:46:45 +10:00
Paul Stack ec8c242ebf provider/aws: Add support for Skipping Final Snapshot in RDS Cluster (#6795)
* provider/aws: Add support for Skipping Final Snapshot in RDS Cluster
2016-05-20 12:52:26 -05:00
James Rasell e3352e855c provider/aws: Make 'stage_name' required in api_gateway_deployment (#6797)
When stage_name is not passed to the resource
aws_api_gateway_deployment a terraform apply will fail. This is
because the stage_name is required and not optional.
2016-05-20 15:55:08 +01:00
Mitchell Hashimoto 55583baa7e
Merge branch 'f-aws-import' 2016-05-18 15:28:12 -06:00
Mitchell Hashimoto 24c0adb2d4
providers/aws: revert LC change 2016-05-18 15:28:01 -06:00
Mitchell Hashimoto 4967f3ff08
providers/aws: route53 delegation set import 2016-05-18 13:26:52 -06:00
Mitchell Hashimoto 801d342496
providers/aws: route53 health check import 2016-05-18 13:15:59 -06:00
Mitchell Hashimoto 1c0a6bc6d3
providers/aws: basic route 53 zone import 2016-05-18 13:09:56 -06:00
Paul Stack 811667023b provider/aws: Add support for S3 Bucket Acceleration (#6628) 2016-05-18 11:33:03 -05:00
stack72 27f05b8e3b Merge branch 'wowgroup-aws-rds-cluster-param-group' 2016-05-18 14:11:47 +01:00
stack72 21a65fd085 provider/aws: Refreshing the state when `DBParameterGroupNotFound`
happens
2016-05-18 14:10:32 +01:00
Mark Severson 0315d51125 provider/aws: Query all pages of group membership
By default, group membership queries return pages of 100 users at a
time. Because of this, if there are more than 100 users in an
aws_iam_group_membership resource, the resource always reports as
needing to be changed (because it only sees 100 of the users as
existing in the group).

The group membership now queries all pages.

Fixes #6722
2016-05-17 16:27:02 -06:00
James Nugent 55002086e5 Merge pull request #6592 from hashicorp/b-aws-r53-name-state
provider/aws: Update Route53 Record to schema v1, normalizing name
2016-05-17 12:56:13 -05:00
James Nugent b08d741eb0 Merge pull request #6687 from hashicorp/b-aws-elasticache-param-crash
provider/aws: Fix crash in ElastiCache param group
2016-05-17 12:38:34 -05:00
Robert Conrad faa6ddb2ee provider/aws: Support for Redshift Cluster encryption using a KMS key (#6712) 2016-05-17 11:12:39 -05:00
clint shryock 91a1097041 provider/aws: Randomize key names in KMS alias test 2016-05-17 10:40:42 -05:00
Mitchell Hashimoto f64f470807
providers/aws: fix placement group import 2016-05-16 10:38:53 -07:00
Mitchell Hashimoto dc3163c464
providers/aws: placement group import 2016-05-16 10:35:44 -07:00
Mitchell Hashimoto 519f0ae4d6
providers/aws: launch configuration import 2016-05-16 10:26:49 -07:00
clint shryock 23340d3c84 provider/aws: Fix crash in ElastiCache param group 2016-05-16 12:20:06 -05:00
Mitchell Hashimoto a992860b8d
providers/aws: key_pair import 2016-05-16 10:13:20 -07:00
Mitchell Hashimoto 4e3488afb8
providers/aws: customer gateway import 2016-05-16 10:03:57 -07:00
Mitchell Hashimoto 2a30178413
providers/aws: flow log import 2016-05-16 10:03:57 -07:00
Mitchell Hashimoto f6b77a6c02
providers/aws: import network ACLs 2016-05-16 10:03:57 -07:00
Mitchell Hashimoto 2d5745328b
providers/aws: import main route table association 2016-05-16 10:03:57 -07:00
Mitchell Hashimoto ab7b5dab2d
providers/aws: route tables import assocations 2016-05-16 10:03:57 -07:00
Mitchell Hashimoto a1035804d4
providers/aws: route table import should ignore default rule 2016-05-16 10:03:57 -07:00
Mitchell Hashimoto 08b7f67227
providers/aws: route table import 2016-05-16 10:03:57 -07:00
Mitchell Hashimoto a4e48b19c0
providers/aws ENI import 2016-05-16 10:03:57 -07:00
Mitchell Hashimoto 9cdbed11ff
providers/aws: ebs volume and autoscaling group 2016-05-16 10:03:57 -07:00
Mitchell Hashimoto 884980da1a
providers/aws: instance, nat, internet gateway 2016-05-16 10:03:57 -07:00
Mitchell Hashimoto 830708a882
providers/aws: elb 2016-05-16 10:03:57 -07:00
Mitchell Hashimoto 91938cf55f
providers/aws: resource aws_subnet import 2016-05-16 10:03:57 -07:00
Mitchell Hashimoto b75d5bb46d
providers/aws: vpc dhcp options 2016-05-16 10:03:57 -07:00
Mitchell Hashimoto da353c3637
aws/aws_vpc: import 2016-05-16 10:03:57 -07:00
Mitchell Hashimoto 420e13d2f2
providers/aws: eip uses passthrough importstate 2016-05-16 10:03:57 -07:00
clint shryock b9d0e14d2a provider/aws: Update Lambda tests for more random names 2016-05-16 10:31:46 -05:00
Paul Stack cf37c3adaa provider/aws: Add support for `kms_key_id` to `aws_db_instance` (#6651)
As requested in #4822, add support for a KMS Key ID (ARN) for Db
Instance

```
make testacc TEST=./builtin/providers/aws
TESTARGS='-run=TestAccAWSDBInstance_kmsKey' 2>~/tf.log
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /vendor/)
TF_ACC=1 go test ./builtin/providers/aws -v
-run=TestAccAWSDBInstance_kmsKey -timeout 120m
=== RUN   TestAccAWSDBInstance_basic
--- PASS: TestAccAWSDBInstance_basic (587.37s)
=== RUN   TestAccAWSDBInstance_kmsKey
--- PASS: TestAccAWSDBInstance_kmsKey (625.31s)
PASS
ok      github.com/hashicorp/terraform/builtin/providers/aws    1212.684s
```
2016-05-13 11:20:29 -05:00
clint shryock 2047da21d5 provider/aws: Update hash in Redshift Security Group test 2016-05-13 10:52:21 -05:00
David Harris 0cb7496b3a provider/aws: fix Elastic Beanstalk `cname_prefix` (#6653)
Fixes an issue where the `cname_prefix` attribute isn't correctly read
in some regions.
2016-05-13 11:27:56 +01:00
Anton Koldaev 266e98eb30 Make the OpsWorks app_source SSH key write only
Similarly to https://github.com/hashicorp/terraform/pull/4241 prevent ssh_key in OpsWorks application app_source key from re-applying every time.
2016-05-12 16:35:25 -07:00
stack72 fdf1962905 Merge branch 'aws-rds-cluster-param-group' of https://github.com/wowgroup/terraform into wowgroup-aws-rds-cluster-param-group 2016-05-12 23:27:20 +01:00
clint shryock f70f778a5a provider/aws: Randomize DB Option Group Name to avoid name conflicts in Travis CI 2016-05-12 11:15:36 -05:00
clint shryock baed5dda36 provider/aws: Remove empty config in test 2016-05-12 09:34:16 -05:00
Paul Stack 61b5176fbe provider/aws: Updating state when `aws_sns_topic_subscription` is (#6629)
missing

Fixes #6625

When an SNS topic subscription was created with TF and then removed via
the AWS Console, Terraform threw an error:

```
* aws_sns_topic_subscription.testme: NotFound: Subscription does not
* exist
    status code: 404, request id: a22e7ed7-3630-5a8a-b767-317ac1440e24
```

This PR will remove the topic subscription from state on a NotFound and
will then readd the subscripton
2016-05-12 13:46:22 +01:00
stack72 cb4c8e6864 Merge branch 'Ticketmaster-db_option_group_settings' 2016-05-11 22:44:27 +01:00
stack72 420b24fa90 provider/aws: Fix `aws_db_option_group` `option_settings` test for
correct hash value
2016-05-11 22:43:17 +01:00
Mitchell Hashimoto 1c81aa3471
providers/aws: aws_security_group import test 2016-05-11 13:02:37 -07:00
Mitchell Hashimoto 6bdab07174
providers/aws: security group import imports rules 2016-05-11 13:02:36 -07:00
Mitchell Hashimoto 84fa3e5c9e
providers/aws: security group import 2016-05-11 13:02:36 -07:00
Mitchell Hashimoto eb9cb46256
providers/aws: enable aws_eip importing 2016-05-11 13:02:34 -07:00
Paul Stack 06b5cf737c provider/aws: `aws_codedeploy_deployment_group` Panics when setting (#6617)
`on_premises_instance_tag_filter`

When setting `on_premises_instance_tag_filter`, Terraform was not
pushing the changes on the cReate (due to a spelling mistake). A second
apply would push the tags and then cause a panic. Terraform was building
a ec2.Tagfilter struct without checking for optional values. When the
TagFilter was being dereferenced, it caused a panic
2016-05-11 18:38:03 +01:00
clint shryock e33847c8a8 Merge branch 'master' of github.com:hashicorp/terraform
* 'master' of github.com:hashicorp/terraform:
  Update CHANGELOG.md
  provider/vsphere: read gateway and ipv6_gateway
  provider/aws: Fix cloudtrail_tags config formatting in test (#6615)
  build: "make fmt" to ignore vendor packages
2016-05-11 10:39:21 -05:00
clint shryock 8344b4fb4b provider/aws: Format and correct IAM region for Cloudwatch test 2016-05-11 10:39:14 -05:00
Clint 250ee8d089 provider/aws: Fix cloudtrail_tags config formatting in test (#6615) 2016-05-11 10:18:45 -05:00
clint shryock 42ee519a31 provider/aws: Update Route53 Record to schema v1, normalizing name
The `name` attribute will always be normalized to a FQDN, with a trailing "dot"
at the end when returned from the API.

We store the name as it's provided in the configuration, so "www" stays as "www"
and "www.terraformtesting.io." stays as "www.terraformtesting.io.".

The problem here is that if we use a full name as above, and the configuraiton
does *not* include the trailing dot, the API will return a version that does,
and we'll have a conflict.

This is particularly bad when we have a lifecycle block with
`create_before_destroy`; the record will get an update posted (which ends up
being a no-op on AWS's side), but then we'll delete the same record immediately
after, resulting in no record at all.

This PR addresses that by trimming the trailing dot from the `name` when saving
to state. We migrate existing state to match, to avoid false-positive diffs.
2016-05-10 11:17:02 -05:00
Kraig Amador dc4dd764e6 Adding option_settings to aws_db_option_group 2016-05-09 12:40:38 -07:00
Paul Stack af29a61748 provider/aws: Change `aws_elastic_ip_association` to have computed parameters (#6552)
* New top level AWS resource aws_eip_association

* Add documentation for aws_eip_association

* Add tests for aws_eip_association

* provider/aws: Change `aws_elastic_ip_association` to have computed
parameters

The AWS API was send ing more parameters than we had set. Therefore,
Terraform was showing constant changes when plans were being formed
2016-05-09 18:40:45 +01:00
clint shryock f8d59b9e97 provider/aws: Update paramter for DB Option Group 2016-05-09 12:16:26 -05:00
Clint 4d66f1ca94 provider/aws: Opsworks Agent has a default, needs to be computed (#6555) 2016-05-09 11:26:16 -05:00
James Nugent affd2b3f3b Merge pull request #6505 from hashicorp/b-cloudfront-cookies
provider/aws: Require cookies for Cloudfront Distributions
2016-05-08 19:45:37 -04:00
Chris Marchesi 84cd31cece provider/aws: Add CloudFront hosted_zone_id attribute (#6530)
Added the hosted_zone_id attribute, which aliases to the Route 53
zone ID that can be used to route Alias Resource Record Sets to.

This fixes hashicorp/terraform#6489.
2016-05-09 00:40:30 +01:00
James Nugent a4f30133df Merge pull request #6539 from hashicorp/aws-cloudtrail-test-updates
provider/aws: CloudTrail tests were failing as the names were not unique per test run
2016-05-08 19:35:59 -04:00
James Nugent 5366fabad1 Merge pull request #4401 from stack72/aws-rds-option-groups
provider/aws: aws_db_option_group
2016-05-08 19:34:15 -04:00
Paul Stack 526aadd0ea Update resource_aws_db_option_group.go 2016-05-09 00:33:48 +01:00
stack72 8dc123fd94 Scaffold the AWS DB Option Group resource
Change the AWS DB Instance to now include the DB Option Group param. Adds a test to prove that it works

Add acceptance tests for the AWS DB Option Group work. This ensures that Options can be added and updated

Documentation for the AWS DB Option resource
2016-05-08 20:18:53 +01:00
Paul Stack dc30bd29fc provider/aws: Redshift Cluster not allowing 0 for (#6537)
automated_snapshot_retention_period

The default value for `automated_snapshot_retention_period` is 1.
Therefore, it can be included in the `CreateClusterInput` without
needing to check that it is set.

This was actually stopping people from setting the value to 0 (disabling
the snapshots) as there is an issue in `d.GetOk()` evaluating 0 for int
2016-05-08 19:29:36 +01:00
stack72 1937d0fb6a provider/aws: CloudTrail tests were failing as the names were not unique
per test run
2016-05-08 19:08:58 +01:00
Clint 99e0aec769 provider/aws: Fix issue changing EIP Association (#6521)
provider/aws: Update EIP to use new associate_with_private_ip instead of private_ip
2016-05-06 15:38:39 -05:00
KOJIMA Kazunori 2476dcbcae provider/aws: Fix typo in error message (#6518) 2016-05-06 09:57:04 -05:00
Justin Clark 380ada1019 provider/aws: Add agent_version argument to AWS_OPSWORKS_STACK 2016-05-05 22:56:44 +01:00
clint shryock 8129c0589c provider/aws: Require cookies for Cloudfront Distributions 2016-05-05 15:44:35 -05:00
Greg Thole ebfc701265 provider/aws: AWS API Gateway request parameters json (#6501)
* Update docs with new parameters

* Add request parameters as JSON

* Update function name and error statements
2016-05-05 21:14:51 +01:00
Radek Simko e32a8c1c5b Merge pull request #6385 from Ticketmaster/use-sts-GetCallerIdentity
provider/aws: Added sts:GetCallerIdentity to GetAccountId for federated logins
2016-05-05 17:35:32 +01:00
Clint c58892485b provider/aws: Allow empty S3 config in Cloudfront Origin (#6487)
* provider/aws: Allow empty S3 config in Cloudfront Origin
2016-05-05 10:49:09 -05:00
Clint 068f6f606d provider/aws: Fix issue in upgrading AutoScaling Policy (#6440)
* provider/aws: Fix issue in upgrading AutoScaling Policy min_adjustment_steps

- Update depreciation message on min_adjustment_step
2016-05-05 10:17:54 -05:00
Kraig Amador a23bcf2ec9 Added accountid to AWSClient and set it early in the initialization phase. We use iam.GetUser(nil) scattered around to get the account id, but this isn't the most reliable method. GetAccountId now uses one more method (sts:GetCallerIdentity) to get the account id, this works with federated users. 2016-05-05 07:02:12 -07:00
Blake Smith 8821aea945 provider/aws: Add AWS EMR dependency (#2098) (#6492) 2016-05-05 11:34:18 +01:00
Kraig Amador 1f80ec48d0 Added RDS event subscriptions (#6367) 2016-05-05 11:14:25 +01:00
Justin Nauman 1c691dcc68 provider/aws: Updating CloudFront distribution to set LoggingConfig if disabled (#6407)
- Addresses the issue when local state file has logging_config populated and the user
  disables the configuration via the UI (or in this case an
  application of the TF config).  This will now properly set the
  logging_config during the read operation and identify the state as
  diverging

Fixes #6390
2016-05-04 14:06:45 -05:00
Josh Taylor 983da213af provider/aws: add response parameters support to api gateway (#6344)
* provider/aws: Add support for response parameters aws_api_gateway_integration_response and aws_api_gateway_method response.

* fix spacing

* fix spacing

* gofmt

* add update test; add docs; add reimplement TODO; add field read

* resolve conflict

* fix expandAPIGatewayMethodResponse error handling
2016-05-04 11:56:18 +01:00
Justin Nauman 7f738bebd3 provider/aws: Support eventually consistent aws_security_group_rule (#6325)
* TF-6256 - SG Rule Retry

- Preferring slower but consistent runs when AWS API calls do not properly return the SG Rule in the list of ingress/egress rules.
- Testing has shown that several times that we had to exceed 20 attempts
before the SG was actually returned

* TF-6256 - Refactor of rule lookup

- Adjusting to use resource.Retry
- Extract lookup method for matching ipPermissions set
2016-05-03 17:21:04 -05:00
Sargurunathan Mohan a5825f907b Fix launch_configuration error when using ebs which is encrypted 2016-05-03 16:19:54 -05:00
Clint d5f0fc22fd provider/aws: Improve error handling in IAM Server Certificates (#6442)
* provider/aws: Improve error handling in IAM Server Certificates

* rename test, add additional empty check
2016-05-02 15:36:50 -05:00
Clint c2f7a0cc60 provider/aws: Fix issue replacing Network ACL Relationship if Subnet has already (#6421) 2016-05-02 09:45:11 -05:00
James Nugent aba5049bcd Merge pull request #6403 from Ticketmaster/BROKEN_MASTER
Fixing the broken Test with Master branch
2016-04-29 17:36:07 -05:00
James Nugent 0f3237a91b Merge pull request #6383 from Ticketmaster/aws-tests-with-token
Allow running tests when AWS_PROFILE is set, needed for STS users
2016-04-29 13:26:07 -05:00
Andy Chan cd69404fbc Fixing the broken test 2016-04-29 10:11:42 -07:00
Paul Stack a9b738f00c provider/aws: Removal of duplicate error handling code in cloudwatch_log_group
cloudwatch_log_group
2016-04-28 13:12:47 +01:00
Paul Stack c12a31e1b0 provider/aws: Fix Read of AWS CloudWatch Log when Update was called (#6384)
Fixes #6169

The Update func was hitting a return err and when the err was empty, it
was skipping over the subsequent read func
2016-04-28 00:02:33 +01:00
Justin Nauman 495c4b3dbc provider/aws - CloudFront custom_error_response fixes for missing (#6382)
* provider/aws - CloudFront custom_error_response fixes for missing

- Omit custom_error_response response_* fields when not explicitly set via config for
SDK call
- Adding a test case to ensure that the response_error gets converted
to an empty string properly, versus "0". (Thanks @vancluever)

Fixes #6342

* - Fixing ACC test case resource names
2016-04-28 00:00:21 +01:00
Kraig Amador dd77bf68da Fixed up some confusion between AWS_TOKEN and AWS_PROFILE. Also allowing testing when AWS_PROFILE is set without AWS_SECRET_ACCESS_KEY and AWS_ACCESS_KEY_ID. 2016-04-27 14:18:20 -07:00
Paul Stack ee3d89a4cd provider/aws: refresh state on SQS Queue not found (#6381)
When an SQS queue was deleted from the AWS Console, an error was thrown
to say that the Queue could not be found. This is now fixed to remove
the queue from the state on a specific not found exception
2016-04-27 20:07:34 +01:00
Radek Simko 0a8ea049ef Merge pull request #5030 from TimeIncOSS/account_check
provider/aws: Allow account ID checks on EC2 instances & w/ federated accounts
2016-04-27 21:07:15 +02:00
Radek Simko 7642fa05a8 Merge pull request #5893 from TimeIncOSS/b-aws-api-gateway-fields
provider/aws: Respect 'selection_pattern' in api_gateway_integration_response
2016-04-27 20:46:29 +02:00
Paul Hinze de13281ee6 provider/aws: fix potential aws_route crash (#6338)
The "find route in table" helper code was not properly handling routes
with no destination CIDR block - like vpc_endpoint routes - so if one of
those routes would come up before the target route in the loop, we'd get
a crash.

Fixes #6337
2016-04-27 13:10:40 +01:00
Mike Ball 02bbe18635 comment grammar/spelling fix (#6373) 2016-04-27 13:10:05 +01:00
Radek Simko e3ade6a784 provider/aws: Add support for api_gateway_account (#6321) 2016-04-27 13:08:59 +01:00
Colin Hebert f1f602cdf6 aws: Enable account ID check for assumed roles + EC2 instances 2016-04-27 12:56:03 +02:00
Radek Simko d9f327c282 provider/aws: Read aws_api_gateway_integration_response fields back 2016-04-27 11:45:52 +02:00
Radek Simko 70242c2e6d provider/aws: Respect 'selection_pattern' in api_gateway_integration_response
- Fixes https://github.com/hashicorp/terraform/issues/5891
2016-04-27 11:45:52 +02:00
Radek Simko 5210e1127e provider/aws: Add regression test for #5891 2016-04-27 11:35:01 +02:00
David Harris 635fced8b4 provider/aws: Fixes issue where an update for an `aws_elastic_beanstalk_environment ` resource would ignore the `wait_for_ready_timeout` option. 2016-04-26 22:05:20 +01:00
David Harris 9ab2447b0b provider/aws: Elastic Beanstalk Environment update configuration template name changes (#6342)
* Updated `aws_elastic_beanstalk_environment` to update environment when the `template_name` attribute has a change. Consildated update functions to use a single update call and added state change conf to wait until environment is in a "Ready" state.

* Adding tests for `aws_elastic_beanstalk_configuration_template` use with the `aws_elastic_beanstalk_environment` resource.

* Verifies option settings from an `aws_elastic_beanstalk_configuration_template` resource are applied to the associated `aws_elastic_beanstalk_environment` resource
* Verifies updated name of an `aws_elastic_beanstalk_configuration_template` resource triggers an update for the associated `aws_elastic_beanstalk_environment` resource
* Verifies that option settings set in the `aws_elastic_beanstalk_environment` resource override settings in the `aws_elastic_beanstalk_configuration_template` resource
2016-04-26 11:15:46 +01:00
Paul Stack 2d2c0b2068 provider/aws: Fix `aws_redshift_cluster` number_of_nodes update (#6333)
Currently, the number of nodes was broken due to not passing the
node_type with the update. This PR adds the correct parameters and a
test to prove this works as expected
2016-04-25 23:00:57 +01:00
Paul Stack 5f874c9487 provider/aws: Extends the `aws_elasticache_cluster` validation (#6332)
The validation as part of #6330 was only for length. This PR adds the
rules for alphanumeric, not having -- within, not ending with a - and
that the id must start with a letter.

The PR also adds tests for these rules
2016-04-25 21:44:55 +01:00
lian a443144c89 provider-aws: validate cluster_id length for aws_elasticache_cluster (#6330) 2016-04-25 20:53:31 +01:00
clint shryock e138a0756b provider/aws: Use ID in lookup for AWS KMS Aliases 2016-04-25 10:54:26 -05:00
Radek Simko d31a6ac47f provider/aws: Add support for api_gateway_authorizer (#6320) 2016-04-25 12:22:37 +01:00
clint shryock 6cfb6c11b1 provider/aws: Use KMS ARN in S3 Bucket test 2016-04-22 15:10:34 -05:00
Clint 8f90078cd5 Merge pull request #6307 from hashicorp/b-aws-beanstalk-options-set-fix
provider/aws: Fix issue updating ElasticBeanstalk Configuraiton Templates
2016-04-22 12:07:06 -05:00
clint shryock 53988df7d1 provider/aws: Fix issue updating ElasticBeanstalk Configuraiton Templates 2016-04-22 12:06:40 -05:00
Mitchell Hashimoto d85df63526
providers/aws: aws_instance id-only 2016-04-22 09:37:41 -07:00
Cameron Stokes a7c24835d7 provider/aws: increase timeout for aws_redshift_cluster (#6305)
* provider/aws: increase timeout for aws_redshift_cluster

* provider/aws: increase timeout for redshift updates too
2016-04-22 10:42:22 -05:00
Mitchell Hashimoto dd402a3ba1
providers/aws: elb id-only 2016-04-21 22:26:52 -07:00
Mitchell Hashimoto c1509b0220
providers/aws: eip id-only 2016-04-21 22:17:14 -07:00
Mitchell Hashimoto f394ce1ef3
provider/aws: ebs_volume id-only tests 2016-04-21 21:49:17 -07:00
Mitchell Hashimoto f0511631bf
provider/aws: id-only refresh for autoscaling groups 2016-04-21 21:36:52 -07:00
Paul Stack 6ac312e682 provider/aws: Set the state of `cross_zone_load_balancing` during the read func (#6295)
Changes made manually to the ELB property were not being set and
Terraform was reporting now changes to infra was to be made on refresh
2016-04-22 01:47:19 +01:00
Paul Stack fb1a82dbd7 provider/aws: Refresh state on Directory Service not found (#6294)
When a directory service was not found, Terraform was panicking due to
`dir := out.DirectoryDescriptions[0]`. The AWS API doesn't throw an
Error in this case. IT just return s0 results. Therefore, we should
check for 0 results in the return and remove the directory from the
state
2016-04-22 01:13:04 +01:00
Mitchell Hashimoto 0083431077
provider/aws: fix name on id-only check 2016-04-21 13:58:56 -07:00
Mitchell Hashimoto f2d91f0c2b
providers/aws: route53_health_check id-only 2016-04-21 13:50:03 -07:00
Mitchell Hashimoto 2274bb8c4a
provider/aws: route53 record import 2016-04-21 13:50:03 -07:00
Mitchell Hashimoto 6f091efd9b
providers/aws: route53_zone fix importing id-only private zone 2016-04-21 13:50:03 -07:00
Justin Clark f430fe280a Fix issue with with Opsworks and empty Custom Cook Book sources (#6078)
* Remove computed value on opsworks update

* Adjust PR 6078 per catsby's request
2016-04-21 13:59:40 -05:00
Mitchell Hashimoto b1c215f5e2
providers/aws: route53_zone id-only refresh 2016-04-21 08:53:53 -07:00
Mitchell Hashimoto 8b4e98e732
providers/aws: some id-only work on s3 buckets more work needed 2016-04-21 08:44:45 -07:00
Mitchell Hashimoto 7292c9df25
providers/aws: remove the opt-out stuff for id-only 2016-04-21 08:37:08 -07:00
Mitchell Hashimoto 3a43ce8f8e
providers/aws: sns_topic id-only 2016-04-21 08:18:04 -07:00
Clint bc68dee2eb provider/aws: Fix crash in AWS S3 Bucket when website index/error is empty (#6269) 2016-04-21 08:07:01 -05:00
Mitchell Hashimoto 7878cf327f
providers/aws: aws_sqs_queue isn't going to work for id-only 2016-04-20 18:07:50 -07:00
Mitchell Hashimoto 3013d1d2d1
provider/aws: customer gateway has to parse bgn_asn as int 2016-04-20 17:59:19 -07:00
Mitchell Hashimoto 0722f0b138
provider/aws: aws_flow_log id-only 2016-04-20 17:45:57 -07:00
Mitchell Hashimoto 54e119d32d
provider/aws: internet gateway id-only 2016-04-20 17:38:04 -07:00
Mitchell Hashimoto 2754691d2e
providers/aws: nat gateway fixes for id only refresh 2016-04-20 17:36:16 -07:00
Mitchell Hashimoto 10e4147d00
providers/aws: nat gateway id-only 2016-04-20 17:16:37 -07:00
Mitchell Hashimoto fc07b6315c
providers/aws: network_acl id-only 2016-04-20 17:10:01 -07:00
Mitchell Hashimoto 6887aad1c2
providers/aws: eni id-only 2016-04-20 16:57:17 -07:00
Mitchell Hashimoto 87537ea605
providers/aws: route table id only 2016-04-20 16:48:43 -07:00
Mitchell Hashimoto c5c3de4f01
providers/aws: classic SG test should test classic 2016-04-20 16:44:57 -07:00
Mitchell Hashimoto a44c547986
providers/aws: security group id-only 2016-04-20 16:42:00 -07:00
Mitchell Hashimoto c682dece84
providers/aws/vpn_gateway id-only refresh 2016-04-20 12:41:20 -07:00
Mitchell Hashimoto 9e65c30707
providers/aws/vpn_connection id-only refresh 2016-04-20 12:41:20 -07:00
Mitchell Hashimoto 0f91b30f64
providers/aws/vpc_peering: don't run id-only on plan test 2016-04-20 12:21:08 -07:00
Mitchell Hashimoto ff7b58f032
providers/aws: peering connection id-only test settings 2016-04-20 12:19:21 -07:00
Mitchell Hashimoto 60103c083a
providers/aws: working on id-only tests, no bugs found in these
resources
2016-04-20 12:10:53 -07:00
Josh Myers 3be66aa9ed Add cloudwatch_logs_subscription_filter provider (#5996) 2016-04-20 20:05:21 +01:00
Mitchell Hashimoto 0ef1b3b84a
providers/aws: response value for DescribeVpcAttribute needs to be
.Value
2016-04-20 11:35:43 -07:00
Mitchell Hashimoto 35f4201b9e
providers/aws: instance_tenancy is computed, set 2016-04-20 10:48:22 -07:00
Mitchell Hashimoto cfa5a3fe58
Revert "providers/aws: vpc refresh sets instance_tenancy"
This reverts commit a6d9e343ec.
2016-04-20 10:38:48 -07:00
Mitchell Hashimoto a6d9e343ec
providers/aws: vpc refresh sets instance_tenancy 2016-04-20 10:36:28 -07:00
KOJIMA Kazunori 5e33517394 provider/aws: Add support S3 Object Lifecycle Rule (#6220)
* providers/aws: Add support S3 Object Lifecycle Rule

* Fix failed vet command

* Fix failed acceptance tests

* Check nil pointer before dereference.

* Move S3 lifecycle rule id validator func to validators.go

* Don't fail when get lifecycle rule's response code is 404
2016-04-20 11:16:14 +01:00
Rev. C. Bennett Hoffman e108275331 Use resource.Retry for route creation and deletion (#6225)
* Use resource.Retry for route creation and deletion

* Remove uneeded out var in resource_aws_route.go
2016-04-19 17:23:42 -05:00
Chris Marchesi 6ebac8403d provider/aws: CloudFront post-merge review updates (#6196)
* provider/aws: Fix hashing on CloudFront certificate parameters

Adding necessary type assertion to values on the viewer_certificate hash
function to ensure that certain fields are indeed not zero string
values, versus simply zero interface{} values (aka nil, as is such for a
map[string]interface{}).

* provider/aws: CloudFront complex structure error handling

Handle errors better on calls to d.Set() in the
aws_cloudfront_distribution, namely in flattenDistributionConfig(). Also
caught a bug in the setting of the origin attribute, was incorrectly
attempting to set origins.

* provider/aws: Pass pointers to set CloudFront primitives

Change a few d.Set() for primitives in aws_cloudfront_distribution and
aws_cloudfront_origin_access_identity to use the pointer versus a
dereference.

* docs: Fix CloudFront examples formatting

Ran each example thru terraform fmt to fix indentation.

* provider/aws: Remove delete retention on CloudFront tests

To play better with Travis and not bloat the test account with disabled
distributions.

Disable-only functionality has been retained - one can enable it with
the TF_TEST_CLOUDFRONT_RETAIN environment variable.

* provider/aws: CloudFront delete waiter error handling

The call to resourceAwsCloudFrontDistributionWaitUntilDeployed() on
deletion of CloudFront distributions was not trapping error messages,
causing issues with waiter failure.
2016-04-19 16:40:30 -05:00
Paul Stack 8335555636 Gofmt issues (#6246) 2016-04-19 20:41:26 +01:00
David Harris b78f4c1114 provider/aws: Added migration for `tier` attribute in aws_elastic_beanstalk_environment resource. (#6167)
Fixes #6164.
2016-04-19 20:32:49 +01:00
Justin Clark 8249cb10eb Resolves DefaultOS and ConfigurationManager conflict (#6244) 2016-04-19 19:59:03 +01:00
clint shryock 6a9400d10e provider/aws: Allow 'available' state when deleting RDS Clusters 2016-04-19 13:15:45 -05:00
Clint fcdcb4b916 provider/aws: Default Network ACL resource (#6165)
* provider/aws: Default Network ACL resource

Provides a resource to manage the default AWS Network ACL. VPC Only.

* Remove subnet_id update, mark as computed value. Remove extra tag update

* refactor default rule number to be a constant

* refactor revokeRulesForType to be revokeAllNetworkACLEntries

Refactor method to delete all network ACL entries, regardless of type. The
previous implementation was under the assumption that we may only eliminate some
rule types and possibly not others, so the split was necessary.

We're now removing them all, so the logic isn't necessary

Several doc and test cleanups are here as well

* smite subnet_id, improve docs
2016-04-18 11:02:00 -05:00
clint shryock a810edd7a6 provider/aws: Randomize DB Identifier in test
Getting name collisions every now and again
2016-04-18 10:00:59 -05:00
Martin Atkins e41616198f Don't read back opsworks stack cookbooks source password (#6203)
As with several other sensitive values in Opsworks, the API returns a
placeholder value rather than a nil. To avoid writing the placeholder
value into the state we just skip updating the password on read, letting
whatever value was in the state persist.

This means that Terraform can't detect configuration drift where someone
has changed the password via some other means, but Terraform will still
be able to recognize changes to the password made within Terraform itself
due to the "last-written" value in the state.

This fixes #6192.
2016-04-16 22:56:36 +01:00
Martin Atkins 94f338d5de Merge #4276: aws_opsworks_instance resource 2016-04-16 10:14:22 -07:00
Martin Atkins 64db0454b4 Merge #6049: In Opsworks Stacks, wait for IAM changes to settle 2016-04-16 09:54:20 -07:00
Martin Atkins 2d597f09a8 Fix aws_opsworks_application acctest by passing in stack name
Other separate changes to testAccOpsworksStackConfigNoVpcCreate caused
this to begin failing because it was attempting to create a stack with
an empty name.
2016-04-16 09:44:04 -07:00
Martin Atkins bb7b8d6550 Merge #4419: aws_opsworks_application resource 2016-04-16 09:28:12 -07:00
Martin Atkins 41c535dc68 Unconditionally set opsworks layer custom_json
Previously in Update we would only set req.CustomJson if a non-empty
value was provided in the config. It seems that the Opsworks API considers
a null CustomJson to mean "do not change" rather than "set to empty",
so we need to explicitly set the empty string in the request body in
order to successfully remove an already-configured custom JSON.
2016-04-16 09:18:47 -07:00
Martin Atkins 72f121aec1 Merge #4272: custom JSON for Opsworks layers 2016-04-16 08:48:36 -07:00
Clint 05decba135 provider/aws: Better randomize the CloudTrail tests (#6188) 2016-04-15 10:06:40 -05:00
Chris Marchesi a38ccbe074 CloudFront distribution and origin access identity support (#5221)
* CloudFront implementation v3

* Update tests

* Refactor - new resource: aws_cloudfront_distribution

 * Includes a complete re-write of the old aws_cloudfront_web_distribution
   resource to bring it to feature parity with API and CloudFormation.
 * Also includes the aws_cloudfront_origin_access_identity resource to generate
   origin access identities for use with S3.
2016-04-14 14:55:11 -05:00
Raymond Fallon eed8733ee3 provider/aws: Enhance Triggers for AWS CodeDeploy Event Notifications (#6168)
* Improve testing of CodeDeploy DeploymentGroup Trigger Configs

  - ensure updates to trigger_events are applied
  - assert changes to trigger_target_arn

* Retry CodeDeploy DeploymentGroup when Trigger Config SNS Topic is not available

  - increase retries from 2 => 5
2016-04-14 20:26:33 +01:00
clint shryock 2830558bc9 check resource data for base64 encoded string 2016-04-13 10:44:26 -05:00
Doug Neal 1c662c2bc4 [#4794] Don't Base64-encode EC2 userdata if it is already Base64 encoded (#6140)
* Don't Base64-encode EC2 userdata if it is already Base64 encoded

The user data may be Base64 encoded already - for example, if it has been
generated by a template_cloudinit_config resource.

* Add encoded user_data to aws_instance acceptance test
2016-04-13 10:20:20 -05:00
Carlos Sanchez 32bd25d743 Issue #2174 Check that InternetGateway exists before returning from creation (#6105)
* Issue #2174 Check that InternetGateway exists before returning from creation

Fix some random InvalidInternetGatewayID.NotFound errors

* Issue #2174 Reuse IGStateRefreshFunc

* Issue #2174 Need to wait for creation before setting tags
2016-04-13 09:28:17 -05:00
Radek Simko f6a21e7899 provider/aws: Read VPC ID for Lambda function back from API 2016-04-13 15:05:19 +01:00
Radek Simko 3f188d5d1b provider/aws: Improve test for VPC-based Lambda func 2016-04-13 15:05:19 +01:00
Raymond Fallon 0cd0a4ec9c provider/aws: Manage Triggers for AWS CodeDeploy Event Notifications (#5599)
* provider/aws: CodeDeploy Deployment Group Triggers

  - Create a Trigger to Send Notifications for AWS CodeDeploy Events
  - Update aws_codedeploy_deployment_group docs

* Refactor validateTriggerEvent function and test

  - also rename TestAccAWSCodeDeployDeploymentGroup_triggerConfiguration test

* Enhance existing Deployment Group integration tests

  - by using built in resource attribute helpers
  - these can get quite verbose and repetitive, so passing the resource to a function might be better
  - can't use these (yet) to assert trigger configuration state

* Unit tests for conversions between aws TriggerConfig and terraform resource schema

  - buildTriggerConfigs
  - triggerConfigsToMap
2016-04-11 19:42:21 +01:00
Clint 2ea8c64079 provider/aws: More randomization to our Acc tests (#6124)
* provider/aws: Add more Randomization to DB Parameter Group Tests, to avoid collisions

* provider/aws: Add more randomization to Autoscaling group tests
2016-04-11 12:06:28 -05:00
protomouse 0d82b4d0bf hclfmt test resources 2016-04-11 10:45:19 +02:00
protomouse ec55a34430 _disappears test 2016-04-11 10:44:46 +02:00
protomouse e9ce2b3a20 remove partial mode handling 2016-04-11 10:44:28 +02:00
protomouse b45e941144 add resource aws_rds_cluster_parameter_group 2016-04-11 10:26:47 +02:00
Hector Rivas Gandara 0fdf91661d provider/aws: normalize json policy for sns topic policy attribute (#6089)
* provider/aws: test empty plan with sns_topic policy with random order

If we setup a sns_topic policy with a policy with a different order
to the one set by the AWS API, terraform plan will be not empty between
runs.

* provider/aws: normalize json policy for sns topic

For the policy attribute of the resource aws_sns_topic,  AWS returns the policy
in JSON format with the fields in a different order.
If we store and compare the values without normalizing, terraform
will unnecesary trigger and update of the resource.

To avoid that, we must add a normalization function in the StateFunc of
the policy attribute and also when we read the attribute from AWS.
2016-04-08 13:55:49 -05:00
Jan Nabbefeld 6bf9f21c39 Opsworks Application support 2016-04-07 14:18:50 -07:00
Paul Hinze 8380a7b03e provider/aws: Allow multiple EIPs to associate to single ENI
When calling AssociateAddress, the PrivateIpAddress parameter must be
used to select which private IP the EIP should associate with, otherwise
the EIP always associates with the _first_ private IP.

Without this parameter, multiple EIPs couldn't be assigned to a single
ENI. Includes covering test and docs update.

Fixes #2997
2016-04-07 13:26:15 -05:00
Jeff Tang be0ebbc22e Handle race condition with IAM role permissions 2016-04-06 16:04:25 -04:00
David Harris e698822be5 provider/aws: Renaming `option_settings` attribute to `setting`. Added test to verify that settings are applied to template.
Fixes #6035
2016-04-06 11:35:07 -05:00
Martin Atkins f739ef9849 Human-readable error for failure to read EC2 volume
Previously the format string was using %#v, which prints the whole data structure given.

Instead we want to use %s to get the string representation of the error.

This fixes #6038.
2016-04-06 09:34:10 -07:00
Hector Rivas Gandara eb4fef1ca1 aws provider: normalize json of cloudwatch event_pattern
Normalise the event_pattern of the aws_cloudwatch_event_rule resource

before uploading it to AWS.



AWS seems to accept a event_pattern with a JSON with new lines, but then

the rule does not seem to work. Creating the rule in the AWS console works,

but will setup the pattern  as a json without newlines or spaces, and

display a formatted JSON.
2016-04-05 15:56:45 -05:00
Clint 6f4dc98354 provider/aws: Remove CloudTrail Trail from state if not found 2016-04-05 14:04:00 -05:00
Jeff Tang b857bd1ce9 add TestCheckExists/TestCheckAttributes for opsworks instance 2016-04-05 13:44:48 -04:00
Clint 053ba9005d provider/aws: Remove Network ACL from state if not found 2016-04-05 11:11:16 -05:00
Clint be385b83f8 provider/aws: Fix issue with retrying deletion of Network ACLs
Fix retry after removing associations by correctly checking and returning an

error. This should patch the VPC/Resource leak in our nightly acceptance tests.
2016-04-05 10:18:03 -05:00
Jeff Tang 41a8220e0f add custom_json for opsworks layers 2016-04-05 08:57:19 -04:00
KOJIMA Kazunori d646682d7a provider/aws: Support S3 bucket notification
* Implement aws_s3_bucket_notification resource
2016-04-04 21:23:06 -05:00
Clint b351a72e4c provider/aws: Normalize and compact SQS Redrive, Policy JSON
* provider/aws: Nomralize SQS Redrive Policy JSON

* provider/aws: Fix typo in log statements

* compact the Policy on SNS Queue

* add acceptance test for policy formatting
2016-04-04 11:41:36 -05:00
David Harris c3a6cf0620 provider/aws: Adding outputs for elastic_beanstalk_environment resource.
refs #5798
2016-04-01 13:58:09 -06:00
David Harris bb1d4ee886 provider/aws: Add support for `cname_prefix` to `aws_elastic_beanstalk_environment`. 2016-04-01 09:53:10 -06:00
Paul Stack c10c1b9a11 Merge pull request #5967 from dharrisio/f-aws-elastic-beanstalk-timeout-config
Adds `wait_for_ready_timeout` option to `aws_elastic_beanstalk_environment`.
2016-03-31 23:06:29 -05:00
David Harris a8c7fb0a06 Adds `wait_for_ready_timeout` option to `aws_elastic_beanstalk_environment`. 2016-03-31 17:28:02 -06:00
clint shryock 5ac3c5e53d update aws db test config 2016-03-31 17:07:04 -05:00
Clint 2ddddf340d Merge pull request #5964 from hashicorp/b-aws-rds-test-updates
provider/aws: Improve the randomization in RDS tests
2016-03-31 16:56:55 -05:00
clint shryock cbad80182a randomize DB Parameter Group names 2016-03-31 16:32:05 -05:00
clint shryock cd5569a624 provider/aws: Improve the randomization in RDS tests 2016-03-31 16:25:38 -05:00
clint shryock 2575b9f5d4 provider/aws: Fix issue re-creating deleted VPC peering connections 2016-03-31 15:23:56 -05:00
Paul Stack 0615819a98 Merge pull request #5940 from stack72/f-aws-redshift-username
provider/aws: Change Redshift Cluster Test to check for `_` in username
2016-03-30 21:08:48 -05:00
Paul Stack a8e0528784 Merge pull request #4277 from ctiwald/ct/add-new-asg-policy-type
Add support for "StepScaling" autoscaling policies.
2016-03-30 21:06:39 -05:00
stack72 3a836fa617 provider/aws: Change Redshift Cluster Test to check for `_` in username 2016-03-30 20:55:37 -05:00
Paul Stack 9d49c545af Merge pull request #5935 from ethangunderson/master
Redshift master usernames may contain underscores
2016-03-30 20:54:35 -05:00
stack72 03baf3e5a5 provider/aws: Allow `aws_redshift_security_group` ingress rules to
change
2016-03-30 20:13:28 -05:00
James Nugent 980f165bf7 Merge pull request #5910 from grayaii/master
Elasticsearch times out. It takes a while to create.
2016-03-30 17:22:06 -07:00
Paul Stack 3dbedc6407 Merge pull request #5787 from iceycake/ISSUE-5702
ISSUE-5702: Making the Cloudwatch Event Rule Target target_id optional
2016-03-30 19:17:32 -05:00
Paul Stack 8ed809456d Merge pull request #5830 from hashicorp/phinze/asg-health-check-grace-period-default
provider/aws: set ASG health_check_grace_period default to 300
2016-03-30 19:05:06 -05:00
stack72 197c6fa143 provider/aws: Test to validate that db subnet group description
can be updated
2016-03-30 18:53:52 -05:00
Paul Stack 1801904e36 Merge pull request #5921 from ColinHebert/rds_subnet_group_description
provider/aws: DB subnet group description modification
2016-03-30 18:50:33 -05:00
Colin Hebert 1389bb2f5e Do not check only whether the subnet_ids have changed 2016-03-31 10:37:26 +11:00
Ethan Gunderson 1c5c58d072 Redshift master usernames may contain underscores 2016-03-30 17:41:58 -05:00
Colin Hebert 3ae21f0891 Add the description as a part of the update request 2016-03-31 09:36:42 +11:00
Paul Stack 53434ae09c Merge pull request #5904 from keymon/bugfix/5661_fix_codecommit_default_branch
AWS: codecommit set default_branch only if defined
2016-03-30 11:18:22 -05:00
Hector Rivas Gandara 29c9b8497d provider/aws: Add tests for default_branch in new codecommit repos
The provider should, when working on a new repository without branches:
 * Able to create a new repository even with default_branch defined.
 * Able to create a new repository without default_branch, and do not fail
   if default_branch is defined.
2016-03-30 16:41:20 +01:00
Hector Rivas Gandara 0c49b17f72 provider/aws: codecommit check default_branch before update
In AWS codecommit the default branch must have a value unless there are
no branches created, in which case it is not possible to set it to any value.

We query the existing branches and do not update the default branch
if there are none defined remotely.

This solves the issue of the initial creation of the repository with a
resource with `default_branch` defined.
2016-03-30 16:40:41 +01:00
Hector Rivas Gandara 1afd3a53b2 provider/aws: codecommit set default_branch only if defined
Do not try to update or reaad the AWS codecommit repository default branch if
the resource definition is not set it or is an empty string.

Fixes #5641
2016-03-30 16:40:37 +01:00