Commit Graph

2313 Commits

Author SHA1 Message Date
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
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