Commit Graph

2557 Commits

Author SHA1 Message Date
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
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
Colin Hebert d7a7db9c5a provider/aws: Subnet group description modification
Do not force a new resource when changing the description of a subnet group
2016-03-30 09:33:44 +11:00
Alex Gray 50c050bb92 Elasticsearch times out. It takes a while to create. lets increase the timeout. 2016-03-29 15:58:40 -04:00
Paul Hinze faba2b7d31 Merge pull request #5867 from hashicorp/phinze/fix-route-crash
provider/aws: fix potential aws_route crashes
2016-03-29 13:20:36 -05:00
Paul Hinze 70096c5ac0 provider/aws: fix potential aws_route crashes
Fixes #5865
2016-03-29 09:57:29 -05:00
Clint 163173df7a Merge pull request #5881 from hashicorp/b-aws-sg-r-protocols
provider/aws: Convert protocols to standard format for Security Groups
2016-03-28 13:23:52 -05:00
clint shryock 1a2846072c update tests to cover icmp 2016-03-28 13:08:53 -05:00
clint shryock e98d7d706f provider/aws: Convert protocols to standard format for Security Groups
Convert network protocols to their names for keys/state, fixing issue(s) when
using them interchangeably.
2016-03-28 10:32:39 -05:00
Radek Simko a2c59f071f Merge pull request #5838 from hashicorp/b-aws-lambda-guard
provider/aws: Guard against empty responses from Lambda Permissions
2016-03-25 20:35:57 +00:00
Paul Hinze 6c2b511152 provider/aws: Fix launch_config waiting for IAM instance profile
AWS changed their error message, which was being used for detection of
the specific error that indicates we need to wait for IAM propagation.

Behavior is covered by a test now.

Fixes #5862
2016-03-25 13:10:10 -05:00
clint shryock 01f868d3e6 provider/aws: Guard against empty responses from Lambda Permissions 2016-03-24 16:30:21 -05:00
Christopher Tiwald 2cf6afa6c1 aws_autoscaling_policy: Add tests for StepScaling policies. 2016-03-24 16:35:54 -04:00
Christopher Tiwald 305a450239 aws_autoscaling_policy: Add support for StepScaling policies.
Unlike SimpleScaling policies, StepScaling policies require one or more
"steps", which are interval ranges in which a tracked metric can lie.
Policies can then execute scaling adjustments wedded to these steps.

This commit also adds a slew of additional policy attributes which are
only applicable to step policies.
2016-03-24 16:35:54 -04:00
Jeff Tang 88de250615 style updates to documentation and nil checks 2016-03-24 08:08:01 -04:00
Paul Hinze 6f76fb0702 provider/aws: set ASG health_check_grace_period default to 300
Closes #5658
2016-03-23 18:55:37 -05:00
Andy Chan 4115249ce3 ISSUE-5702: Fixed the testing 2016-03-23 11:15:06 -07:00
Andy Chan 76adbefb95 ISSUE-5702: 2nd attempt to impl the target_id be optional 2016-03-23 10:42:53 -07:00
Andy Chan 0eee165a2b ISSUE-5702: Fixed a bug on target_id generation and related test case 2016-03-23 10:25:13 -07:00
Andy Chan 92590d1ac8 Fixed the test case to check if the targetId is created 2016-03-23 10:25:13 -07:00
Andy Chan 7dc5a272be ISSUE-5702: Making the CloudWatch Event Rule Target ID optional 2016-03-23 10:25:13 -07:00
Clint ccb9693994 Merge pull request #5676 from Originate/mb-ensure-iops-is-provided
provider/aws: Provide iops when changing storage type to io1 on RDS
2016-03-23 08:31:21 -05:00
Paul Hinze e5e6b571a5 provider/aws: Fix aws_route panic when destination CIDR block is nil
Fixes #5754
2016-03-22 10:35:22 -05:00
Edmund Craske edbc4fad13 Fail if failover set when set_identifier unset
Added as per
https://github.com/hashicorp/terraform/pull/5777#issuecomment-199802514
2016-03-22 13:19:24 +00:00
edmundcraske 4aa7d4f7db Fail when weight set and set_identifier not set
Resolves https://github.com/hashicorp/terraform/issues/5776
2016-03-22 12:20:47 +00:00
James Nugent 22a409e4cc Merge pull request #5774 from stack72/f-aws-iam-user-sshkey
provider/aws: Add `aws_iam_user_ssh_key` resource
2016-03-22 10:29:08 +00:00
Paul Stack 12546c6fca Merge pull request #5065 from tpounds/fix-aws-elb-access-logs-type
provider/aws: Change ELB access_logs to list type
2016-03-22 01:40:14 +00:00
stack72 7e61947c0a provider/aws: Scaffold `aws_iam_user_ssh_key` resource 2016-03-22 01:19:16 +00:00
Paul Hinze 20e517475b Merge pull request #5724 from paulodeininger/feature/fix_aws_opsworks_windows
Add DefaultOs on Stack creation (fix Windows stack issue)
2016-03-21 15:10:03 -05:00
stack72 fb92896326 Merge branch 'master' of github.com:hashicorp/terraform 2016-03-21 18:48:47 +00:00
Andy Chan d6cd47fd5e Reformat the kms alias test code 2016-03-21 18:48:00 +00:00
Clint f715c91666 Merge pull request #5756 from hashicorp/b-beanstalk-configuration-update
provider/aws: Fix crasher in Elastic Beanstalk Configuration with Options
2016-03-21 12:59:22 -05:00
Radek Simko 5c21422f7d Merge pull request #5712 from bjss/master
Use timeout_in_minutes for Terraform timeout in AWS CloudFormation
2016-03-21 17:06:20 +00:00
James Nugent f946695187 Merge pull request #5444 from TimeIncOSS/f-aws-logs-metric-filter
provider/aws: Add support for CloudWatch Log Metric Filter
2016-03-21 16:43:38 +00:00
clint shryock 9ae8e85640 provider/aws: Fix crasher in Elastic Beanstalk Configuration with option settings 2016-03-21 11:43:31 -05:00
James Nugent 6732659fe9 provider/aws: Fix panic in VPN connection resource
Check to ensure that vpnConnection.CustomerGatewayConfiguration is not
nil prior to dereferencing it on read.

Fixes #5647.
2016-03-21 13:52:14 +00:00
Andrew Tarry c3b3feaf11 Set cloudformation timeout to more than timeout_in_minutes
updated cloudformation timeout to use timeout_in_minutes if greater than 30 minutes

set the retry timeout as int64 when created
2016-03-21 09:08:52 +00:00
Paul Hinze d60bf93b4d Merge pull request #5723 from hashicorp/phinze/rds-instance-generate-identifier
provider/aws: ability to generate unique RDS identifier
2016-03-18 16:16:35 -05:00
Paul Hinze 4e5429a140 provider/aws: ability to generate unique RDS identifier
Needed to truncate the identifier for SQL Server engines to keep it at
max 15 chars per the docs. Not a full UUID going into it, but should be
"unique enough" to not matter in practice.

Modified the basic test to use the generated value. Other tests are
still working w/ explicitly specified identifiers.
2016-03-18 16:07:37 -05:00
Paulo Eduardo Deininger Messias Alves 0a0ccb84f2 Add DefaultOs on Stack creation (fix Windows stack issue) 2016-03-18 17:51:25 -03:00
stack72 12ac0761b7 provider/aws: Modify `aws_redshift_cluster` now allows
`publicly_accessible` to be changed

Also updated the AWS Go SDK from 1.1.9 -> 1.1.12 as this was required to
allow the new behavior for the Redshift API
2016-03-19 01:05:09 +05:30
Paul Hinze 17775205f7 provider/aws: fix crash when Aurora instance disappears
Usage of a helper function was assuming that an error would be returned
in a not found condition, when in fact a nil pointer was
returned.

Attached test crashes w/o fix, passes with it.

Fixes #5350
Refs #5418
2016-03-18 12:27:57 -05:00
Maxime Bury 210eb3571e Provide iops when changing storage type to io1 2016-03-16 18:32:11 -04:00
Maxime Bury ec749d964f Correctly handle missing lambda function 2016-03-16 14:26:14 -04:00
Radek Simko af93183459 provider/aws: Add validation for CW Log Metric Filter 2016-03-15 15:01:21 +00:00
Radek Simko 7eba8f6f66 provider/aws: Add tests for CloudWatch Log Metric Filter 2016-03-15 15:01:20 +00:00
Radek Simko 3bfcd47238 provider/aws: Add support for CloudWatch Log Metric Filter 2016-03-15 15:01:20 +00:00
Jeff Tang bcd5904eea Add support for Opsworks Instances
New resource checklist
- [x] Acceptance testing
- [x] Documentation
- [x] Well-formed code
2016-03-14 15:12:43 -04:00
Paul Hinze 25fce81bfc provider/aws: log HTTP req/resp at DEBUG level
This should be quite helpful in debugging aws-sdk-go operations.

Required some tweaking around the `helper/logging` functions to expose an
`IsDebugOrHigher()` helper for us to use.
2016-03-14 12:26:37 -05:00
Paul Hinze fff441b4ac provider/aws: send Terraform version in User-Agent 2016-03-14 12:16:49 -05:00
Paul Hinze 60b239d7d1 provider/aws: Switch to session.Copy to build up configs
Found this function which makes the config setup much nicer - looks like
it's meant to be used for the very thing we're doing, which is starting
w/ a base config and customizing it slightly.

https://docs.aws.amazon.com/sdk-for-go/api/aws/session/Session.html#Copy-instance_method

This will make the User-Agent setting code to follow much simpler.
2016-03-14 11:42:37 -05:00
Pierre Carrier a8865b8901 provider/aws: optional fields in aws_autoscaling_lifecycle_hook
See hashicorp/terraform/issues/5614
2016-03-14 11:45:17 +00:00
Radek Simko 189e9b5ceb Merge pull request #5605 from nicolai86/bugfix/verify-ecs-elb-count
provider/aws validate number of load_balancers before creating aws_ecs_service
2016-03-13 15:15:00 +00:00
Raphael Randschau fc0c2c0ea7 Validate number of load_balancers
see #5336
2016-03-13 12:51:51 +01:00
Oleg Chunikhin 25383ad5a3 aws: Fix CloudFormation update for parameters & capabilities if not modified 2016-03-13 08:10:57 +00:00
Radek Simko 8612cc3373 aws: Improve acceptance test for CloudFormation w/ all attributes 2016-03-13 08:10:54 +00:00
clint shryock 66eb7c6055 provider/aws: Guard against Nil Reference in Redshift Endpoints 2016-03-11 12:16:29 -06:00
Radek Simko d8b36532ef Merge pull request #5239 from TimeIncOSS/f-aws-lambda-func-updates
provider/aws: Add support for updating Lambda function
2016-03-11 16:59:18 +00:00
Paul Hinze 82765ea589 Merge pull request #5453 from bigkraig/aws-s3-kms-key
provider/aws: Support KMS encryption of S3 objects
2016-03-10 15:44:10 -06:00
Paul Hinze 5ce68fd1bd Merge pull request #5571 from hashicorp/revert-5193-f-aws-instance-security-groups-updates
Revert "provider/aws: Support additional changes to security groups of instance without forcing new"
2016-03-10 15:09:16 -06:00
Paul Hinze e9c4d4f6d5 Revert "provider/aws: Support additional changes to security groups of instance without forcing new" 2016-03-10 14:51:30 -06:00
clint shryock 02ba1bf2d4 provider/aws: More Acc test updates
Working on the green

- randomize some Autoscaling lifecycle hook test names
- use vpc_security_group_ids for this test
2016-03-10 14:33:54 -06:00
Clint 99ddea503d Merge pull request #5495 from nicolai86/bugfix/aws_security_group-protocol-case-sensitivity
provider/aws Always transform aws_security_group protocol to lower case
2016-03-10 09:34:55 -06:00
Clint 239b3e4f5f Merge pull request #5533 from hashicorp/pr-5184
provider/aws: Fix EC2 Classic SG Rule issue
2016-03-10 08:56:29 -06:00
Radek Simko d777141a7b provider/aws: Add tests for Lambda function updates 2016-03-10 12:31:35 +00:00
Radek Simko fdc21aad25 provider/aws: Simplify update logic for Lambda function 2016-03-10 12:31:35 +00:00
Chris Marchesi b5c7521f52 aws_lambda_function: Force code update on SHA sum mismatch 2016-03-10 12:31:35 +00:00
Rob Zienert 4aeb5bb8e9 Adding support for Lambda function updates 2016-03-10 12:31:35 +00:00
Kraig Amador 76b3c74a58 Providing a more informative error message when combining kms_key_id and etag as well as using aws_kms_key to test aws_s3_bucket's kms_key_id. 2016-03-09 19:06:36 -08:00
Paul Hinze d12944797a Merge pull request #3928 from TimeIncOSS/aws-kms
provider/aws: Add support for KMS
2016-03-09 18:30:06 -06:00
Paul Hinze 108ccf0007 builtin: Refactor resource.Retry to clarify return
Change the `RetryFunc` from a plain `error` return type to a
specialized `RetryError` which must decide whether it is
retryable or not.

Add `RetryableError` / `NonRetryableError` factory functions that
callers are meant to use to build up these errors.

This makes it eminently clear whether or not a given error is
retryable from inside the client code.

Goal here is to _not_ change any behavior, simply reflect the
existing behavior with the new, clearer, API.
2016-03-09 17:37:56 -06:00
Paul Stack ab075bca60 Merge pull request #5193 from innossh/f-aws-instance-security-groups-updates
provider/aws: Support additional changes to security groups of instance without forcing new
2016-03-10 00:28:32 +01:00
James Nugent 7436cf7f89 Merge pull request #5376 from stack72/b-aws-ELBListner
provider/aws: Fixes the use of Uppercase chars in ELB Listeners
2016-03-09 23:18:56 +00:00
Paul Hinze ffa5db4f52 Merge pull request #5538 from hashicorp/phinze/retryerror-pointers-are-evil
provider/aws: Fix all pointer RetryError returns
2016-03-09 16:53:19 -06:00
Brad Sickles 3f41515d2b Fixing noop differences in aws_route. 2016-03-09 23:27:09 +01:00
Brad Sickles 16f94ed4b7 Added failing aws_route test that shows diff after apply. 2016-03-09 23:27:09 +01:00
clint shryock f96ec46681 update comments 2016-03-09 15:50:01 -06:00
Clint d14920adaf Merge pull request #5515 from hashicorp/b-aws-acc-test-updates
provider/aws: Retry DB Creation on IAM propigation error
2016-03-09 15:08:13 -06:00
clint shryock 23c42cd6cf Add test for flattenSecurityGroups 2016-03-09 15:00:30 -06:00
Paul Hinze de656942ae provider/aws: Fix all pointer RetryError returns
All of these RetryErrors were meant to fail right away, but instead
caused retry looping because the typecheck in the implementation of
`resource.Retry()` only catches the value type, and not the pointer
type.

Refs #5537
2016-03-09 14:59:55 -06:00
Maxime Bury 9e0bac6c9f Terraform should keep track of the publicly accessible attribute 2016-03-09 13:33:00 -05:00
ephemeralsnow 54cb5ffe00 provider/aws: Fix EC2 Classic SG Rule issue
Fixes an issue where security groups would fail to update after applying an
initial security_group, because we were improperly saving the id of the group
and not the name (EC2 Classic only).

This is a PR combining https://github.com/hashicorp/terraform/pull/4983 and
https://github.com/hashicorp/terraform/pull/5184 . It's majority
@ephemeralsnow's work.
2016-03-09 09:51:41 -06:00
Paul Stack 4601d371e1 Merge pull request #5524 from stack72/f-aws-ecr-repository_name
provider/aws: `repository_url` is computed for `aws_ecr_repository`
2016-03-09 09:38:09 +00:00
stack72 7c5ab40b74 provider/aws: Add support for the `repository_url` to be computed for
ECR
2016-03-09 09:29:23 +00:00
Paul Stack b5e6cb5f88 Merge pull request #5520 from bsiegel/aws_rds_cluster_encryption
Add storage_encrypted as an optional parameter to aws_rds_cluster
2016-03-09 00:21:26 +00:00
stack72 cad550e63d provider/aws: Add support for `description` to `aws_network_interface`
resource
2016-03-08 23:28:37 +00:00
Brandon Siegel fc7e9fcd53 Ensure aws_rds_cluster can have storage_encrypted set to true 2016-03-08 17:28:44 -05:00
Brandon Siegel 0085bf6ae8 Ensure aws_rds_cluster has storage_encrypted set to false by default 2016-03-08 17:28:32 -05:00
Brandon Siegel b3864db462 fixup! Add storage_encrypted as an optional parameter to aws_rds_cluster 2016-03-08 17:15:01 -05:00
Brandon Siegel 8aadf1d56d Add storage_encrypted as an optional parameter to aws_rds_cluster 2016-03-08 16:48:04 -05:00
clint shryock c29e1f24b8 provider/aws: Retry DB Creation on IAM propigation error 2016-03-08 14:09:42 -06:00
clint shryock 5dc387354d provider/aws: Randomize tests more to reduce conflicts
- ASG placement tests
- Randomize DynamoDB names in tests
- tag the sg created in this test to help identify in the console
- randomize policy and role names
2016-03-08 09:56:14 -06:00
Radek Simko d4d20a9f5a kms: Treat keys in PendingDeletion state as deleted 2016-03-08 09:30:47 +00:00
Radek Simko 6f8a9c0f77 aws: kms_key - Add support for is_enabled + enable_key_rotation 2016-03-08 09:30:47 +00:00
Radek Simko 347913a3be aws: kms_key - Iterate over all aliases (not just 50) 2016-03-08 09:30:47 +00:00
Radek Simko ff2d040d28 aws: kms_key + kms_alias - Add acceptance tests 2016-03-08 09:30:47 +00:00
Radek Simko ccedb36a86 aws: kms_key - add forgotten policy read call + normalize 2016-03-08 09:30:47 +00:00
Radek Simko 4c1f8db32d aws: kms_key - Change field name (deletion_window -> deletion_window_in_days) 2016-03-08 09:30:47 +00:00
Radek Simko fccffbcbb1 aws: kms_alias - Remove unnecessary default ForceNew state 2016-03-08 09:30:47 +00:00
Radek Simko 5c9fe668f5 aws: kms resources - Simplify error handling 2016-03-08 09:30:47 +00:00
Radek Simko 2b244e21bc aws: kms validation - Add missing placeholders for Errorf 2016-03-08 09:30:47 +00:00
Radek Simko 5466d69450 aws: kms resources - gofmt all the code 2016-03-08 09:30:47 +00:00
Philip Witty 5e18031367 Update AWS KMS with respect to key deletion features 2016-03-08 09:30:47 +00:00
Philip Witty 6648df7acc Added AWS KMS key & alias support 2016-03-08 09:30:47 +00:00
Raphael Randschau 2c698d2cb0 Always transform aws_security_group protocol to lower case
fixes #5489
2016-03-07 22:40:29 +01:00
clint shryock f0d3176999 provider/aws: Add Elastic Beanstalk Application, Configuration Template, and Environment
This adds support for Elastic Beanstalk Applications, Configuration Templates,
and Environments.

This is a combined work of @catsby, @dharrisio, @Bowbaq, and @jen20
2016-03-07 14:43:23 -06:00
Paul Stack 46e4717428 Merge pull request #5474 from kjmkznr/skip-normalize-empty-policy
provider/aws: Fix error parsing JSON in S3 bucket policy
2016-03-07 18:53:51 +01:00
Michael H. Oshita 00288c36b9 fix indentation 2016-03-07 22:18:58 +09:00
Kazunori Kojima 8d1292d608 Return empty string when input empty S3 bucket policy
Before:

"" -> "Error parsing JSON: unexpected end of JSON input"

After:

"" -> ""
2016-03-07 09:31:33 +09:00
Radek Simko c6c2752211 provider/aws: Sort API Gateway resources alphabetically 2016-03-06 09:29:31 +00:00
Radek Simko fa0d6af524 provider/aws: Remove unnecessary GetChange in Delete funcs 2016-03-06 09:29:31 +00:00
Radek Simko a338eae72a provider/aws: Guard APIGateway resource & REST API against deletion 2016-03-06 09:29:30 +00:00
Radek Simko ce5324b341 Merge pull request #4295 from nicolai86/feature/aws-api-gateway
provider/aws: API Gateway resources
2016-03-06 09:00:02 +00:00
Raphael Randschau 6430fca7f6 Add aws_api_gateway_deployment resource 2016-03-05 23:21:58 +01:00
Raphael Randschau 8c59d0861e Add aws_api_gateway_api_key resource 2016-03-05 23:21:54 +01:00
Raphael Randschau b4c99f1009 Add aws_api_gateway_model resource 2016-03-05 23:21:51 +01:00
Raphael Randschau 4da8b3d03a Add aws_api_gateawy_integration_response resource 2016-03-05 23:21:48 +01:00
Raphael Randschau 1593dbe9c8 Add aws_api_gateway_integration resource 2016-03-05 23:21:44 +01:00
Raphael Randschau 91f5206f8d Add aws_api_gateway_method_response resource 2016-03-05 23:21:41 +01:00
Raphael Randschau 032e6081cb Add aws_api_gateway_method resource 2016-03-05 23:21:38 +01:00
Raphael Randschau 7ead800f6a Add aws_api_gateway_resource resource 2016-03-05 23:21:35 +01:00
Raphael Randschau a73721d248 Add aws_api_gateway_rest_api resource 2016-03-05 23:13:38 +01:00
Raphael Randschau fdf0cfa66d Vendor AWS APIGateway API 2016-03-05 23:12:19 +01:00
Paul Stack b66b9c92a2 Merge pull request #5401 from Originate/mb-fix-kinesis-stream-shard-count
provider/aws: Report the correct number of shards for Kinesis streams
2016-03-05 19:19:16 +01:00
stack72 d63166c025 provider/aws: Adding a test for AWS Kinesis Stream Shard Count 2016-03-05 18:40:47 +01:00
Kraig Amador 74de6531fe Return an error when conflicting etag & kms_key_id parameters are provided and now with ServerSideEncryption we can go back to the higher level PutObject. 2016-03-04 09:22:43 -08:00
Kraig Amador db91aebd8e Added a kms_key_id parameter which will allow you to encrypt objects that are put into a bucket. 2016-03-03 16:20:01 -08:00
Maxime Bury ae8627f92a Report the correct number of shards 2016-03-01 10:46:39 -08:00
Radek Simko dc45f84a8f Allow recovering from failed CW Event Target creation in state 2016-03-01 12:37:36 +00:00
Radek Simko 5a786d52d9 Fix: Do not store ID of CW Event Target if creation fails 2016-03-01 12:35:15 +00:00
stack72 d3697fa50b provider/aws: Combine AWS Metrics Collection resource and AWS
Autoscaling Group
2016-02-29 20:58:41 +00:00
stack72 4fc1391303 Scaffold the AWS Autoscaling Group Metrics Collection 2016-02-29 19:24:30 +00:00
stack72 ffbb59a73e provider/aws: Fixes the use of Uppercase chars in ELB Listeners 2016-02-29 18:04:47 +00:00
Paul Stack e6f3fafcd6 Merge pull request #5361 from stack72/b-aws-es-tags
provider/aws: `aws_elastisearch_domain` tags not being set correctly.
2016-02-29 17:38:06 +00:00
Maxime Bury 0290884fdc Lambda S3 object version defaults to '$LATEST' if unspecified 2016-02-29 14:31:47 +00:00
stack72 7b61567bf6 provider/aws: `aws_elastisearch_domain` tags not being set correctly.
The top level object was used not the tags within
2016-02-28 18:31:58 +00:00
Paul Stack a372800cd0 Merge pull request #5318 from stack72/f-aws-route53zone-updateComment
provider/aws: Add ability to update r53 zone comment
2016-02-26 19:43:13 +00:00
James Nugent f249a432fc Merge pull request #5329 from hashicorp/b-5310
provider/aws: Fix crash creating rules in aws SGs
2016-02-26 14:42:01 -05:00
Radek Simko 5b4fccaa73 provider/aws: Add acceptance test for IAM Account Password Policy 2016-02-26 13:29:34 +00:00
stack72 d750d4d1cc provider/aws: Add ability to update r53 zone comment 2016-02-26 13:26:25 +00:00
Radek Simko f7f3d95a9b provider/aws: Add support for AWS Account Password Policy 2016-02-26 11:04:25 +00:00
James Nugent 5b548e938c Merge pull request #5327 from Originate/s3-website-routing-rules
Added routing rules to s3 buckets
2016-02-25 14:43:55 -05:00
James Nugent 3adae0216c provider/aws: Fix crash creating rules in aws SGs
This commit uses Group Name in preference to Group ID where appropriate
in the aws_security_group_rule resource. This fixes the crash reported
in #5310.

Fixes #5310.
2016-02-25 13:50:24 -05:00
Drew Minnear ef50479e8a added routing rules to s3 buckets 2016-02-25 10:19:23 -08:00
Radek Simko 4b8726dc2b Merge pull request #5305 from TimeIncOSS/f-s3-obj-update-and-versioning
provider/aws: Enable updates & versioning for s3_bucket_object
2016-02-25 12:19:34 +00:00
Radek Simko 44246ca126 provider/aws: Add tests for s3_bucket_object w/ versioning enabled 2016-02-25 12:04:18 +00:00
Radek Simko ef85147559 provider/aws: Add tests for s3_bucket_object updates 2016-02-25 12:04:18 +00:00
Radek Simko 9377b301ca provider/aws: Cleanup s3_bucket_object acceptance tests
- the goal was to allow running tests in parallel and to get rid of global variables in the aws package
2016-02-25 12:04:18 +00:00
Radek Simko 24ac996963 provider/aws: Add support for versioned objects 2016-02-25 12:04:18 +00:00
Radek Simko 2f8b9edaf8 provider/aws: Add support for s3_bucket_object updates 2016-02-25 12:04:16 +00:00
James Nugent 74e5711f08 Merge pull request #5182 from Originate/mb-fix-lambda-vpc-implementation
provider/aws: Fixes terraform crash when lambda VpcId is nil
2016-02-24 17:52:38 -05:00