Commit Graph

4730 Commits

Author SHA1 Message Date
James Bardin bb84dc75b7 Fix improper wait group usage in test 2016-08-04 11:20:11 -04:00
Evan Brown 89df636163 Merge pull request #7852 from gaker/google-provider-backend-cdn
google_compute_backend_service "enable_cdn"
2016-08-03 20:11:54 -07:00
grayaii cb5062d237 Increase timeout yet again for aws elasticsearch resource
We create hundreds of AWS Elasticsearch resources over the last few months and we get occasional timeout failures from AWS.  This will PR is to increase the timeout once again. I did it before:
https://github.com/hashicorp/terraform/pull/5910/files
But we've seen enough timeouts from AWS on this resource that increasing the timeout seems like the only solution.
2016-08-03 16:39:28 +02:00
James Nugent 6bd3712f03 Merge pull request #7895 from hashicorp/import-aws-dbsg
provider/aws: Support Import of `aws_db_security_group`
2016-08-01 19:44:15 -05:00
James Nugent acb6fb5422 Merge pull request #7896 from hashicorp/import-aws-redshiftsg
provider/aws: Support Import of `aws_redshift_security_group`
2016-08-01 19:43:27 -05:00
James Nugent f76c1ec921 provider/aws: Fix aws_route53_record 0-2 migration (#7907)
When migrating the state of an `aws_route53_record`, a v0 state was
never upgraded to v2, and a typo in a unit test masked this. This commit
fixes the migration by chaining the invocation of the migration
function, and corrects the test.
2016-08-02 09:54:17 +10:00
stack72 8bb7e619b5
provider/aws: Support Import of `aws_redshift_security_group`
```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSRedshiftSecurityGroup_'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
TF_ACC=1 go test ./builtin/providers/aws -v
-run=TestAccAWSRedshiftSecurityGroup_ -timeout 120m
=== RUN   TestAccAWSRedshiftSecurityGroup_importBasic
--- PASS: TestAccAWSRedshiftSecurityGroup_importBasic (30.87s)
=== RUN   TestAccAWSRedshiftSecurityGroup_ingressCidr
--- PASS: TestAccAWSRedshiftSecurityGroup_ingressCidr (30.45s)
=== RUN   TestAccAWSRedshiftSecurityGroup_updateIngressCidr
--- PASS: TestAccAWSRedshiftSecurityGroup_updateIngressCidr (72.78s)
=== RUN   TestAccAWSRedshiftSecurityGroup_ingressSecurityGroup
--- PASS: TestAccAWSRedshiftSecurityGroup_ingressSecurityGroup (49.73s)
=== RUN   TestAccAWSRedshiftSecurityGroup_updateIngressSecurityGroup
--- PASS: TestAccAWSRedshiftSecurityGroup_updateIngressSecurityGroup
(92.44s)
PASS
ok      github.com/hashicorp/terraform/builtin/providers/aws    276.291s
```
2016-08-02 02:03:43 +10:00
stack72 91596b4a71
provider/aws: Support Import of `aws_db_security_group`
This test overrides the AWS_DEFAULT_REGION parameter as the security
groups are created in us-east-1 (due to classic VPC requirements)

```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSDBSecurityGroup_importBasic'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
TF_ACC=1 go test ./builtin/providers/aws -v
-run=TestAccAWSDBSecurityGroup_importBasic -timeout 120m
=== RUN   TestAccAWSDBSecurityGroup_importBasic
--- PASS: TestAccAWSDBSecurityGroup_importBasic (49.46s)
PASS
ok      github.com/hashicorp/terraform/builtin/providers/aws    49.487s
```
2016-08-02 01:42:54 +10:00
Peter McAtominey cc18e4d7ca provider/azurerm: add traffic manager resources (#7826)
* provider/azurerm: vendor arm/trafficmanager package

* provider/azurerm: add azurerm_traffic_manager_profile resource

* provider/azurerm: add azurerm_traffic_manager_endpoint resource

* provider/azurerm: document traffic manager resources

* provider/azurerm: use short type argument for traffic manager endpoint

The resource now takes the short type for example azureEndpoints instead of the
long form Microsoft.Network/TrafficManagerProfiles/azureEndpoints.

```
TF_ACC=1 go test ./builtin/providers/azurerm -v -run TestAccAzureRMTrafficManagerEndpoint -timeout 120m
=== RUN   TestAccAzureRMTrafficManagerEndpoint_basic
--- PASS: TestAccAzureRMTrafficManagerEndpoint_basic (179.72s)
=== RUN   TestAccAzureRMTrafficManagerEndpoint_basicDisableExternal
--- PASS: TestAccAzureRMTrafficManagerEndpoint_basicDisableExternal (171.36s)
=== RUN   TestAccAzureRMTrafficManagerEndpoint_updateWeight
--- PASS: TestAccAzureRMTrafficManagerEndpoint_updateWeight (167.24s)
=== RUN   TestAccAzureRMTrafficManagerEndpoint_updatePriority
--- PASS: TestAccAzureRMTrafficManagerEndpoint_updatePriority (192.91s)
=== RUN   TestAccAzureRMTrafficManagerEndpoint_nestedEndpoints
--- PASS: TestAccAzureRMTrafficManagerEndpoint_nestedEndpoints (111.18s)
PASS
ok   github.com/hashicorp/terraform/builtin/providers/azurerm    822.534s
```

* provider/azurerm: remove unnecesary dereferences in traffic manager resources

```
TF_ACC=1 go test ./builtin/providers/azurerm -v -run TestAccAzureRMTrafficManager -timeout 120m
=== RUN   TestAccAzureRMTrafficManagerEndpoint_basic
--- PASS: TestAccAzureRMTrafficManagerEndpoint_basic (176.08s)
=== RUN   TestAccAzureRMTrafficManagerEndpoint_basicDisableExternal
--- PASS: TestAccAzureRMTrafficManagerEndpoint_basicDisableExternal (172.28s)
=== RUN   TestAccAzureRMTrafficManagerEndpoint_updateWeight
--- PASS: TestAccAzureRMTrafficManagerEndpoint_updateWeight (148.97s)
=== RUN   TestAccAzureRMTrafficManagerEndpoint_updatePriority
--- PASS: TestAccAzureRMTrafficManagerEndpoint_updatePriority (101.18s)
=== RUN   TestAccAzureRMTrafficManagerEndpoint_nestedEndpoints
--- PASS: TestAccAzureRMTrafficManagerEndpoint_nestedEndpoints (88.33s)
=== RUN   TestAccAzureRMTrafficManagerProfile_weighted
--- PASS: TestAccAzureRMTrafficManagerProfile_weighted (80.92s)
=== RUN   TestAccAzureRMTrafficManagerProfile_performance
--- PASS: TestAccAzureRMTrafficManagerProfile_performance (82.98s)
=== RUN   TestAccAzureRMTrafficManagerProfile_priority
--- PASS: TestAccAzureRMTrafficManagerProfile_priority (81.07s)
=== RUN   TestAccAzureRMTrafficManagerProfile_withTags
--- PASS: TestAccAzureRMTrafficManagerProfile_withTags (102.50s)
PASS
ok  	github.com/hashicorp/terraform/builtin/providers/azurerm	1034.458s
```
2016-07-31 23:46:15 +01:00
Paul Stack 1bdc2f1c5f provider/aws: `aws_vpn_gateway` should be removed from state when in (#7861)
deleted state

Fixes #7859

When a VPN Gateway has been manually deleted, we should expect it to be
added back to the plan

```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSVpnGateway_'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSVpnGateway_
-timeout 120m
=== RUN   TestAccAWSVpnGateway_importBasic
--- PASS: TestAccAWSVpnGateway_importBasic (247.94s)
=== RUN   TestAccAWSVpnGateway_basic
--- PASS: TestAccAWSVpnGateway_basic (409.50s)
=== RUN   TestAccAWSVpnGateway_reattach
--- PASS: TestAccAWSVpnGateway_reattach (211.33s)
=== RUN   TestAccAWSVpnGateway_delete
--- PASS: TestAccAWSVpnGateway_delete (121.10s)
=== RUN   TestAccAWSVpnGateway_tags
--- PASS: TestAccAWSVpnGateway_tags (125.38s)
PASS
ok      github.com/hashicorp/terraform/builtin/providers/aws
1115.274s
```
2016-07-29 21:12:51 +01:00
Clint a9aaf44a87 fix make issues (supersedes #7868) (#7876)
* Fixing the make error or invalid data type for errorf and printf

* fix make errors
2016-07-29 21:05:57 +01:00
Paul Stack 37557f9452 provider/aws: Fix up `aws_api_gateway_api_key` import test (#7873)
This changes the behaviour of `aws_api_gateway_integration` to set the
`passthrough_behaviour` to be computed as this was breaking the import
test

```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSAPIGatewayApiKey_importBasic'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
TF_ACC=1 go test ./builtin/providers/aws -v
-run=TestAccAWSAPIGatewayApiKey_importBasic -timeout 120m
=== RUN   TestAccAWSAPIGatewayApiKey_importBasic
--- PASS: TestAccAWSAPIGatewayApiKey_importBasic (50.19s)
PASS
ok      github.com/hashicorp/terraform/builtin/providers/aws    50.210s
```

```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSAPIGatewayIntegration_'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
TF_ACC=1 go test ./builtin/providers/aws -v
-run=TestAccAWSAPIGatewayIntegration_ -timeout 120m
=== RUN   TestAccAWSAPIGatewayIntegration_basic
--- PASS: TestAccAWSAPIGatewayIntegration_basic (67.43s)
PASS
ok      github.com/hashicorp/terraform/builtin/providers/aws    67.449s
```
2016-07-29 20:20:50 +01:00
Greg Aker 3d1802d547 Add default value & acceptance test. 2016-07-28 16:57:33 -05:00
Greg Aker a8e8922ea8 Add enable_cdn to google_compute_backend_service.
Add the ability to add/remove the Cloud CDN configuration
option on a backend service.
2016-07-28 15:38:09 -05:00
Clint 0024358b08 Update resource_aws_db_instance_test.go 2016-07-28 14:30:50 -05:00
Stephen Muth bbd9b2c944 provider/powerdns: Add support for PowerDNS 4 API (#7819)
* Auto-detect the API version

and update the endpoint URL accordingly

* Typo fix

* Make client and resource work with the 4.X API

* Update documentation

* Fix typos

* 204 now counts as a "success" response

See
f0e76cee2c
for the change in the pdns repository.

* Add a note about a possible pitfall when defining some records
2016-07-28 17:01:06 +01:00
Paul Stack c3ec9c7948 provider/azurerm: `azurerm_storage_blob` validation fix (#7328)
The validation for the `azurerm_storage_blob` `type` parameter was
checking for `blob` where it should have been `block`

This commits fixes it up

```
make testacc TEST=./builtin/providers/azurerm
TESTARGS='-run=TestResourceAzureRMStorageBlobType_validation'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /vendor/)
TF_ACC=1 go test ./builtin/providers/azurerm -v
-run=TestResourceAzureRMStorageBlobType_validation -timeout 120m
=== RUN   TestResourceAzureRMStorageBlobType_validation
--- PASS: TestResourceAzureRMStorageBlobType_validation (0.00s)
PASS
ok      github.com/hashicorp/terraform/builtin/providers/azurerm
0.014s
```
2016-07-28 13:32:40 +01:00
Krzysztof Wilczynski 63a14be8da Add ability to set Performance Mode in aws_efs_file_system. (#7791)
* Add ability to set Performance Mode in aws_efs_file_system.

The Elastic File System (EFS) allows for setting a Performance Mode during
creation, thus enabling anyone to chose performance of the file system according
to their particular needs. This commit adds an optional "performance_mode"
attribte to the aws_efs_file_system resource so that an appropriate mode can be
set as needed.

Signed-off-by: Krzysztof Wilczynski <krzysztof.wilczynski@linux.com>

* Add test coverage for the ValidateFunc used.

Signed-off-by: Krzysztof Wilczynski <krzysztof.wilczynski@linux.com>

* Add "creation_token" and deprecate "reference_name".

Add the "creation_token" attribute so that the resource follows the API more
closely (as per the convention), thus deprecate the "reference_name" attribute.

Update tests and documentation accordingly.

Signed-off-by: Krzysztof Wilczynski <krzysztof.wilczynski@linux.com>
2016-07-28 11:19:39 +01:00
Paul Stack 630de403ce provider/azurerm: Wait for `azurerm_storage_account` to be available (#7329)
Fixes #7005 where a container tried to provision *before* the storage
account was available. We now wait for the Storage Account to be in the
`Succeeded` state before returning

```
make testacc TEST=./builtin/providers/azurerm TESTARGS='-run=TestAccAzureRMStorageAccount_'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /vendor/)
TF_ACC=1 go test ./builtin/providers/azurerm -v
-run=TestAccAzureRMStorageAccount_ -timeout 120m
=== RUN   TestAccAzureRMStorageAccount_basic
--- PASS: TestAccAzureRMStorageAccount_basic (163.68s)
PASS
ok      github.com/hashicorp/terraform/builtin/providers/azurerm
163.695s
```
2016-07-27 22:57:02 +01:00
Paul Stack 61c5c9f56b provider/azurerm: `azurerm_storage_table` resource (#7327)
* provider/azurerm: `azurerm_storage_table` resource

Fixes #7257

``````

* Update resource_arm_storage_table.go

* Update resource_arm_storage_table.go
2016-07-27 22:49:43 +01:00
Paul Stack 390e1acb3c provider/azurerm: Change of `availability_set_id` on (#7650)
`azurerm_virtual_machine` should ForceNew

Fixes #6873

```
make testacc TEST=./builtin/providers/azurerm TESTARGS='-run=TestAccAzureRMVirtualMachine_ChangeAvailbilitySet'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
TF_ACC=1 go test ./builtin/providers/azurerm -v
-run=TestAccAzureRMVirtualMachine_ChangeAvailbilitySet -timeout 120m
=== RUN   TestAccAzureRMVirtualMachine_ChangeAvailbilitySet
--- PASS: TestAccAzureRMVirtualMachine_ChangeAvailbilitySet (976.35s)
PASS
ok      github.com/hashicorp/terraform/builtin/providers/azurerm
976.367s
```
2016-07-27 22:39:03 +01:00
Paul Stack 3f83f0b9f9 provider/aws: Enable Redshift Cluster Logging (#7813)
Fixes #7423

```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSRedshiftCluster_loggingEnabled'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
TF_ACC=1 go test ./builtin/providers/aws -v
-run=TestAccAWSRedshiftCluster_loggingEnabled -timeout 120m
=== RUN   TestAccAWSRedshiftCluster_loggingEnabled
--- PASS: TestAccAWSRedshiftCluster_loggingEnabled (675.21s)
PASS
ok      github.com/hashicorp/terraform/builtin/providers/aws    675.233s
```
2016-07-27 22:16:32 +01:00
clint shryock f0021e1f03 provider/aws: Seperate out TestAccAWSDBInstance_iops_update into it's own run
This will seperate the TestAccAWSDBInstance_iops_update test into it's own
namespace for testing by itself in Travis
2016-07-27 11:07:37 -05:00
James Bardin 735e425daa Merge pull request #7831 from hashicorp/jbardin/unused-vars
Remove unused variables
2016-07-27 11:55:57 -04:00
Paul Stack 8ed549c3b5 provider/aws: Don't delete Lambda function from state on initial call of (#7829)
the Read func

Fixes #7782

Lambda functions are eventually consistent :( Therefore, when we move
from the Create func to the Read func, there is a chance that the Lambda
hasn't replicated yet and we could therefore find that it doesn't exist
and delete it as follows:

```
params := &lambda.GetFunctionInput{
        FunctionName: aws.String(d.Get("function_name").(string)),

}

    getFunctionOutput, err := conn.GetFunction(params)
    if err != nil {
            if awsErr, ok := err.(awserr.Error); ok && awsErr.Code() == "ResourceNotFoundException" {
                        d.SetId("")
                                    return nil

            }
                    return err

    }
```

This PR uses `d.IsNewResource()` to check if the Read is being called
after a Create and therefore, won't delete the lambda if not found. This
should allow the lambda to replicate

```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSLambdaFunction_'
=> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
TF_ACC=1 go test ./builtin/providers/aws -v
-run=TestAccAWSLambdaFunction_ -timeout 120m
=== RUN   TestAccAWSLambdaFunction_importLocalFile
--- PASS: TestAccAWSLambdaFunction_importLocalFile (36.64s)
=== RUN   TestAccAWSLambdaFunction_importLocalFile_VPC
--- PASS: TestAccAWSLambdaFunction_importLocalFile_VPC (45.17s)
=== RUN   TestAccAWSLambdaFunction_importS3
--- PASS: TestAccAWSLambdaFunction_importS3 (40.88s)
=== RUN   TestAccAWSLambdaFunction_basic
--- PASS: TestAccAWSLambdaFunction_basic (44.77s)
=== RUN   TestAccAWSLambdaFunction_VPC
--- PASS: TestAccAWSLambdaFunction_VPC (44.13s)
=== RUN   TestAccAWSLambdaFunction_s3
--- PASS: TestAccAWSLambdaFunction_s3 (43.62s)
=== RUN   TestAccAWSLambdaFunction_localUpdate
--- PASS: TestAccAWSLambdaFunction_localUpdate (33.49s)
=== RUN   TestAccAWSLambdaFunction_localUpdate_nameOnly
--- PASS: TestAccAWSLambdaFunction_localUpdate_nameOnly (51.83s)
=== RUN   TestAccAWSLambdaFunction_s3Update
--- PASS: TestAccAWSLambdaFunction_s3Update (106.49s)
PASS
ok      github.com/hashicorp/terraform/builtin/providers/aws    447.055s
```

Thanks to @radeksimko for pointing out `d.IsNewResource()`
2016-07-27 16:47:25 +01:00
James Bardin 142f689f96 Remove unused variables
These variables weren't used, but the compiler misses them since they
are captured in a closure.
2016-07-27 11:42:21 -04:00
Sander van Harmelen 393863a5a9 Add project parameter to additional resources (#7828) 2016-07-27 17:30:18 +02:00
Dan Allegood 4b9b42dbf0 Fixes the hasBootableVmdk flag when attaching multiple disks (#7804)
The hasBootableFlag logic had a bug where it would only be set properly
if the bootable disk was the last specified.  Adding some bool logic
resolves the issue.  Also adding check to ensure only one bootable disk
is given, and cleaning up a redundant var.
2016-07-27 00:25:56 +01:00
stack72 4e1d54ad51
provider/aws: Change the resource name expected as part of sqs queue import test 2016-07-26 21:59:21 +01:00
stack72 3a1f2e6fe9
Merge branch 'master' into b-aws-sqs-defaults 2016-07-26 21:51:48 +01:00
Clint ff9ad3cc40 provider/aws: Fix issue updating ElasticBeanstalk Environment templates (#7811)
* provider/aws: Fix issue removing templates from ElasticBeanstalk

* regression test
2016-07-26 15:04:03 -05:00
clint shryock 348f6bad50 provider/aws: Apply defaults to SQS Queues 2016-07-26 14:53:45 -05:00
clint shryock 6a42717f55 update sqs test to fail on reverting to defaults 2016-07-26 14:41:54 -05:00
Joe Topjian 8623803dd7 provider/mysql: user and grant resources (#7656)
* provider/mysql: User Resource

This commit introduces a mysql_user resource. It includes basic
functionality of adding a user@host along with a password.

* provider/mysql: Grant Resource

This commit introduces a mysql_grant resource. It can grant a set
of privileges to a user against a whole database.

* provider/mysql: Adding documentation for user and grant resources
2016-07-26 19:19:39 +01:00
stack72 47c274f699
provider/consul: Fixing the ConsulNode_basic tests to have the correct references 2016-07-26 18:31:38 +01:00
stack72 c1d7ae867f
Merge branch 'gh-2087-consul-service-resource' of https://github.com/maxenglander/terraform into maxenglander-gh-2087-consul-service-resource 2016-07-26 18:26:52 +01:00
Martin Atkins 19d0b42911 provider/consul: consul_keys data source (#7678)
Previously the consul_keys resource did double-duty as both a reader and
writer of values from the Consul key/value store, but that made its
interface rather confusing and complex, as well as having all of the other
general problems associated with read-only resources.

Here we split the functionality such that reading is done with the
consul_keys data source while writing is done with the consul_keys
resource.

The old read behavior of the resource is still supported, but it's no
longer documented (except as a deprecation note) and will generate
deprecation warnings when used.

In future it should be possible to simplify the consul_keys resource by
removing all of the read support, but that is deferred for now to give
users a chance to gracefully migrate to the new data source.
2016-07-26 18:23:38 +01:00
clint shryock 0e6ff77433 provider/aws: Restore Defaults to SQS Queues 2016-07-26 10:30:52 -05:00
kyhavlov 09bba0424c provider/docker: Added docker_registry_image data source (#7000) 2016-07-26 16:18:38 +01:00
clint shryock 5050d4555c provider/aws: ignore force_destroy on AWSUser Import test 2016-07-26 09:56:50 -05:00
stack72 63db19f564
Merge branch 'master' of github.com:hashicorp/terraform 2016-07-26 10:43:42 +01:00
stack72 76aea014cc
provider/aws: Making some slight changes to the tests in resources 2016-07-26 10:43:14 +01:00
Andreas Skarmutsos Lindh 1f400671c8
added applicationautoscaling from aws-sdk-go
using: `govendor add
github.com/aws/aws-sdk-go/service/applicationautoscaling@v1.2.5`

introduce a retry for scalable target creation

Due to possible inconsistencies in IAM, let's retry creation of the scalable target before we fail.

Added IAM role as part of acceptance test
2016-07-26 10:43:09 +01:00
Andreas Skarmutsos Lindh cc912c39e5
AWS Application AutoScaling
Initial work on two new resource types:
* `aws_appautoscaling_target`
* `aws_appautoscaling_policy`

Fix acc tests
2016-07-26 10:43:06 +01:00
Andy Chan ba10720e5d Adding passthrough behavior for API Gateway integration (#7801) 2016-07-26 09:38:51 +01:00
Zachary Salzbank afb06f907f providers/aws: expose network interface id (#6751)
Expose the network interface ID that is created with a new instance.

This can be useful when associating an existing elastic IP to the
default interface on an instance that has multiple network interfaces.
2016-07-25 19:52:40 +01:00
Jonathan McCall 3c702f2d75 Ignore missing ENI attachment when trying to detach (#7185) 2016-07-25 18:48:33 +01:00
Peter McAtominey 1c13cc994b provider/azurerm: add option to delete VMs Data disks on termination (#7793)
```
TF_ACC=1 go test ./builtin/providers/azurerm -v -run TestAccAzureRMVirtualMachine_deleteVHD -timeout 120m
=== RUN   TestAccAzureRMVirtualMachine_deleteVHDOptOut
--- PASS: TestAccAzureRMVirtualMachine_deleteVHDOptOut (621.84s)
=== RUN   TestAccAzureRMVirtualMachine_deleteVHDOptIn
--- PASS: TestAccAzureRMVirtualMachine_deleteVHDOptIn (623.95s)
PASS
ok  	github.com/hashicorp/terraform/builtin/providers/azurerm	1245.930s
```
2016-07-25 17:57:02 +01:00
Paul Stack 31b8cde45c provider/aws: Support Import `aws_dynamodb_table` (#7352)
There were some changes required to the Read func to get this working.
The initial set of tests showed the following:

```
testing.go:255: Step 1 error: ImportStateVerify attributes not equivalent. Difference is shown below. Top is actual, bottom is expected.

        (map[string]string) {
        }

        (map[string]string) (len=8) {
         (string) (len=8) "hash_key": (string) (len=16) "TestTableHashKey",
         (string) (len=23) "local_secondary_index.#": (string) (len=1) "1",
         (string) (len=36) "local_secondary_index.884610231.name": (string) (len=12) "TestTableLSI",
         (string) (len=52) "local_secondary_index.884610231.non_key_attributes.#": (string) (len=1) "0",
         (string) (len=47) "local_secondary_index.884610231.projection_type": (string) (len=3) "ALL",
         (string) (len=41) "local_secondary_index.884610231.range_key": (string) (len=15) "TestLSIRangeKey",
         (string) (len=4) "name": (string) (len=38) "TerraformTestTable-2710929679033484576",
         (string) (len=9) "range_key": (string) (len=17) "TestTableRangeKey"
        }
```

On investigation, this was telling me that `hash_key`, `range_key`, `name` and `local_secondary_index` were not being set on the Read func

When they were being set, all looks as expected:

```
make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSDynamoDbTable_'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /vendor/)
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSDynamoDbTable_ -timeout 120m
=== RUN   TestAccAWSDynamoDbTable_importBasic
--- PASS: TestAccAWSDynamoDbTable_importBasic (20.39s)
=== RUN   TestAccAWSDynamoDbTable_basic
--- PASS: TestAccAWSDynamoDbTable_basic (39.99s)
=== RUN   TestAccAWSDynamoDbTable_streamSpecification
--- PASS: TestAccAWSDynamoDbTable_streamSpecification (50.44s)
PASS
ok  	github.com/hashicorp/terraform/builtin/providers/aws	110.841s
```
2016-07-25 15:31:00 +01:00
Partha Dutta 7de54533f9 Support greater than twenty db parameters (#7364)
* aws_db_parameter_group: Support more than 20 parameters in a single update

* create test to prove greater than 20 database parameters can be processed

* update test to prove updating greater than 20 database parameters can be processed

* Issues with certain key value database parameters

Cannot create a passing test for database parameters "innodb_file_per_table" and "binlog_format"
It seems that these parameters can be created and tested successfully
BUT after the "parameter group" has been destroyed, it then makes a "DescribeDBParameterGroups" call
This fails with a 404 error...makes sense since the group does not exist

Have very little understanding of how the test framework works, so am struggling to debug

Currently commented out to have a passing test

* reorder create database parameter group dataset

* reorder update database parameter group dataset

* typo: excede => exceed

* add one extra database parameter; now it is 41 in total

* added test for additonal database parameter added in previous commit

* remove commented out database parameters from test
2016-07-25 13:25:36 +01:00
Raphael Randschau 9f314a3c29 provider/scaleway: Expose IPv6 support, improve documentation (#7784)
* provider/scaleway: update api version

* provider/scaleway: expose ipv6 support, rename ip attributes

since it can be both ipv4 and ipv6, choose a more generic name.

* provider/scaleway: allow servers in different SGs

* provider/scaleway: update documentation

* provider/scaleway: Update docs with security group

* provider/scaleway: add testcase for server security groups

* provider/scaleway: make deleting of security rules more resilient

* provider/scaleway: make deletion of security group more resilient

* provider/scaleway: guard against missing server
2016-07-25 12:49:09 +01:00
Brian Menges 17b16f543e Ignore IOPS on non io1 AWS devices (#7783)
- Already ignoring IOPS on ebs attached non-io1 devices; extended to root_block_device
- Added warning captured from #4146 / [../blob/master/builtin/providers/aws/resource_aws_ebs_volume.go#L104](resource_aws_ebs_volume.go#L104)
- Added test when setting IOPS to 330 (11GiB * 30 = 330) on GP2 root device results in AWS reported 100 IOPS (successfully ignored input)
2016-07-25 12:32:24 +01:00
David Tolnay ad62f09061 provider/aws: Delete access keys before deleting IAM user (#7766)
* provider/aws: Delete access keys before deleting IAM user

* provider/aws: Put IAM key removal behind force_destroy option

* provider/aws: Move all access key deletion under force_destroy

* Add iam_user force_destroy to website

* provider/aws: Improve clarity of looping over pages in delete IAM user
2016-07-25 08:15:03 +01:00
Paul Stack 8c88038647 provider/aws: `aws_redshift_cluster` `number_of_nodes` was having the (#7771)
wrong value set to state

we used `len(ClusterNodes)` rather than NumberOfNodes :)

This was picked up by the nightly tests! <3
2016-07-22 18:14:30 +01:00
clint shryock c4e6c14fec provider/aws: Restore lost client.simpledbconn initialization
It once was lost but now is found!
2016-07-22 10:33:30 -05:00
James Bardin 2712328d5a Merge pull request #7756 from hashicorp/jbardin/tf-atlas-version
core: send version info to atlas
2016-07-22 10:56:43 -04:00
Sander van Harmelen 4004790247 Make using `ssl_verify_mode` more robust (#7769)
And prettify the template output by removing additions empty lines.
2016-07-22 16:01:48 +02:00
stack72 2340d576b1
provider/aws: Rename the ECS Container Data Source test 2016-07-22 13:49:06 +01:00
stack72 fcbaf3eea6
Merge branch 'feature/data-source-ecs' of https://github.com/nicolai86/terraform into nicolai86-feature/data-source-ecs 2016-07-22 13:43:18 +01:00
Chris Broglie 2505b2e35f Add support for Kinesis streams shard-level metrics (#7684)
* Add support for Kinesis streams shard-level metrics

* Add test case for flattenKinesisShardLevelMetrics

* Document new shard_level_metrics field
2016-07-21 23:37:58 +01:00
Brad Sickles 732b8d3b6e Implementing aws_ami_launch_permission. (#7365) 2016-07-21 23:08:32 +01:00
Paul Hinze 261043fd1a Merge pull request #7523 from hashicorp/f-aws-beanstalk-env-poll-timing
provider/aws: Beanstalk environments, bump the minimum timeout between API calls
2016-07-21 16:43:21 -05:00
James Bardin f66d1a10a4 Add VersionString
We conditionally format version with VersionPrerelease in a number of
places. Add a package-level function where we can unify the version
format. Replace most of version formatting in terraform, but leave th
few instances set from the top-level package to make sure we don't break
anything before release.
2016-07-21 16:43:49 -04:00
Paul Stack eb314ee520 provider/aws: Set `storage_encrypted` to state in (#7751)
`aws_rds_cluster_instance`

The Import test showed that there was no setting of the
`storage_encrypted` value back to state on the Read func.

```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSRDSClusterInstance_importBasic'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
TF_ACC=1 go test ./builtin/providers/aws -v
-run=TestAccAWSRDSClusterInstance_importBasic -timeout 120m
=== RUN   TestAccAWSRDSClusterInstance_importBasic
--- PASS: TestAccAWSRDSClusterInstance_importBasic (754.30s)
PASS
ok      github.com/hashicorp/terraform/builtin/providers/aws    754.411s
```
2016-07-21 14:16:13 -05:00
Clint 9d88ad1d08 provider/fastly: Update go-fastly SDK (#7747)
* provider/fastly: Update go-fastly dependency

* update test to check regression
2016-07-21 14:10:33 -05:00
James Bardin bd99c7a904 Add the VersionHeader to the atlas provider too 2016-07-21 11:04:40 -04:00
Sander van Harmelen ddc0f4cdb0 Fix dynamically determining if `ForceNew = true` (#7745)
The same instance of the resources’ `schema.Resource` is used for all resources of the same type.

So we need to set either `true` or `false` for every resource to make sure we get the correct value.
2016-07-21 15:23:58 +02:00
stack72 399f1c20e0
provider/aws: Rename the Basic Import test for CloudFront distributions 2016-07-21 12:41:01 +01:00
stack72 c9a53c20ba
Merge branch 'rossd/cloudfront_import' of https://github.com/dropbox/terraform into dropbox-rossd/cloudfront_import 2016-07-21 10:31:35 +01:00
Paul Hinze df5d2c9a63 provider/aws: pull iamconn setup earlier (#7734)
Fixes problem introduced in re-arrangement of config
2016-07-21 00:38:14 +01:00
Jan Schumann ecb4b5aada providers/aws: Opsworks permission resource (#6304)
* add opsworks permission resource

* add docs

* remove permission from state if the permission object could not be found

* remove nil validate function. validation is done in schema.Resource.

* add id to the list of exported values

* renge over permission to check that we have found got the correct one

* removed comment

* removed set id

* fix unknown region us-east-1c

* add user_profile resource

* add docs

* add default value
2016-07-21 00:29:33 +01:00
Paul Stack a2c5b31490 provider/aws: Support kms_key_id for `aws_rds_cluster` (#7662)
* provider/aws: Support kms_key_id for `aws_rds_cluster`

```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSRDSCluster_'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSRDSCluster_
-timeout 120m
=== RUN   TestAccAWSRDSCluster_basic
--- PASS: TestAccAWSRDSCluster_basic (127.57s)
=== RUN   TestAccAWSRDSCluster_kmsKey
--- PASS: TestAccAWSRDSCluster_kmsKey (323.72s)
=== RUN   TestAccAWSRDSCluster_encrypted
--- PASS: TestAccAWSRDSCluster_encrypted (173.25s)
=== RUN   TestAccAWSRDSCluster_backupsUpdate
--- PASS: TestAccAWSRDSCluster_backupsUpdate (264.07s)
PASS
ok      github.com/hashicorp/terraform/builtin/providers/aws    888.638s
```

* provider/aws: Add KMS Key ID to `aws_rds_cluster_instance`

```

```
2016-07-20 23:52:34 +01:00
Paul Hinze 4078221957 provider/aws: Clean up aws config path a bit (#7672)
Rearrange client setup, and remove the extraneous log lines we make per
connection. There's no need to log one line per API client - we're just
setting up structs for most of them.

Since this collapses the file down quite a bit, switch to alphabetized
client setup, since previously there wasn't much of an order to things.
2016-07-20 23:49:57 +01:00
Ross Delinger 6ef7f9cd4d Add import support to CloudFront Distributions.
* Import support and acceptance tests for import support have been added.
* geo_restriction.location is now guarnteed to be in sorted order (was
causing a failure in the test)
2016-07-20 15:25:06 -07:00
Clint 4d126aaf6f provider/aws: Fix regression in Security Group Rules with self reference (#7706)
* provider/aws: Failing test for #7670

* provider/aws: Fix security group rule regression with self (#7670)
2016-07-20 15:47:10 -05:00
Paul Stack af4cc20ec0 provider/azurerm: `azurerm_virtual_machine` computer_name now Required (#7308)
Fixes #7299 where it was found that computer_name is not optional (as
the msdn documentation states)

```
make testacc TEST=./builtin/providers/azurerm TESTARGS='-run=TestAccAzureRMVirtualMachine_'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /vendor/)
TF_ACC=1 go test ./builtin/providers/azurerm -v -run=TestAccAzureRMVirtualMachine_ -timeout 120m
=== RUN   TestAccAzureRMVirtualMachine_basicLinuxMachine
--- PASS: TestAccAzureRMVirtualMachine_basicLinuxMachine (403.53s)
=== RUN   TestAccAzureRMVirtualMachine_tags
--- PASS: TestAccAzureRMVirtualMachine_tags (488.46s)
=== RUN   TestAccAzureRMVirtualMachine_updateMachineSize
--- PASS: TestAccAzureRMVirtualMachine_updateMachineSize (601.82s)
=== RUN   TestAccAzureRMVirtualMachine_basicWindowsMachine
--- PASS: TestAccAzureRMVirtualMachine_basicWindowsMachine (646.75s)
=== RUN   TestAccAzureRMVirtualMachine_windowsUnattendedConfig
--- PASS: TestAccAzureRMVirtualMachine_windowsUnattendedConfig (891.42s)
=== RUN   TestAccAzureRMVirtualMachine_winRMConfig
--- PASS: TestAccAzureRMVirtualMachine_winRMConfig (768.73s)
PASS
ok  	github.com/hashicorp/terraform/builtin/providers/azurerm	3800.734s
```
2016-07-20 20:03:54 +01:00
Peter McAtominey c9138daacc provider/azurerm: dump entire Request/Response in autorest Decorator (#7719) 2016-07-20 20:02:40 +01:00
Paul Stack b4fa54e3c0 provider/aws: Support Import `aws_rds_cluster` (#7366)
```
make testacc TEST=./builtin/providers/aws
TESTARGS='-run=TestAccAWSRDSCluster_importBasic'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /vendor/)
TF_ACC=1 go test ./builtin/providers/aws -v
-run=TestAccAWSRDSCluster_importBasic -timeout 120m
=== RUN   TestAccAWSRDSCluster_importBasic
--- FAIL: TestAccAWSRDSCluster_importBasic (122.71s)
    testing.go:255: Step 1 error: ImportStateVerify attributes not
    equivalent. Difference is shown below. Top is actual, bottom is
    expected.

    (map[string]string) {

    }

(map[string]string) (len=1) {
         (string) (len=19) "skip_final_snapshot": (string) (len=4) "true"

}

FAIL
exit status 1
FAIL    github.com/hashicorp/terraform/builtin/providers/aws    122.733s
make: *** [testacc] Error 1
```
2016-07-20 19:53:37 +01:00
Paul Stack 7879450cf3 provider/aws: Fix the import of `aws_redshift_cluster` breaking (#7677)
`skip_final_snapshot`

```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSRedshiftCluster_importBasic'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
TF_ACC=1 go test ./builtin/providers/aws -v
-run=TestAccAWSRedshiftCluster_importBasic -timeout 120m
=== RUN   TestAccAWSRedshiftCluster_importBasic
--- PASS: TestAccAWSRedshiftCluster_importBasic (641.87s)
PASS
ok      github.com/hashicorp/terraform/builtin/providers/aws    641.888s
```
2016-07-20 19:38:44 +01:00
Paul Stack 5cd1b6624a provider/aws: Support Tags on `aws_rds_cluster` (#7695)
Fixes #7692

```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSRDSCluster_'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSRDSCluster_
-timeout 120m
=== RUN   TestAccAWSRDSCluster_basic
--- PASS: TestAccAWSRDSCluster_basic (160.77s)
=== RUN   TestAccAWSRDSCluster_updateTags
--- PASS: TestAccAWSRDSCluster_updateTags (329.20s)
=== RUN   TestAccAWSRDSCluster_encrypted
--- PASS: TestAccAWSRDSCluster_encrypted (227.29s)
=== RUN   TestAccAWSRDSCluster_backupsUpdate
--- PASS: TestAccAWSRDSCluster_backupsUpdate (196.92s)
PASS
ok      github.com/hashicorp/terraform/builtin/providers/aws    914.199s
```
2016-07-20 19:37:26 +01:00
Paul Stack ee9114bcc4 provider/aws: Fix bug with Updating `aws_autoscaling_group` (#7698)
`enabled_metrics`

Fixes #7693

The metrics_granularity parameter was not being passed to the
`EnableMetricsCollection` when we were calling it from the Update func.
this was causing the API call to silently fail and not update the
metrics for collection - unfortunately the enabled_metrics were still
being added to the state :(

By passing the granularity, we now get the correct metrics for
collection

```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSAutoScalingGroup_'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
TF_ACC=1 go test ./builtin/providers/aws -v
-run=TestAccAWSAutoScalingGroup_ -timeout 120m
=== RUN   TestAccAWSAutoScalingGroup_importBasic
--- PASS: TestAccAWSAutoScalingGroup_importBasic (166.86s)
=== RUN   TestAccAWSAutoScalingGroup_basic
--- PASS: TestAccAWSAutoScalingGroup_basic (240.23s)
=== RUN   TestAccAWSAutoScalingGroup_autoGeneratedName
--- PASS: TestAccAWSAutoScalingGroup_autoGeneratedName (50.29s)
=== RUN   TestAccAWSAutoScalingGroup_terminationPolicies
--- PASS: TestAccAWSAutoScalingGroup_terminationPolicies (79.93s)
=== RUN   TestAccAWSAutoScalingGroup_tags
--- PASS: TestAccAWSAutoScalingGroup_tags (270.79s)
=== RUN   TestAccAWSAutoScalingGroup_VpcUpdates
--- PASS: TestAccAWSAutoScalingGroup_VpcUpdates (77.76s)
=== RUN   TestAccAWSAutoScalingGroup_WithLoadBalancer
--- PASS: TestAccAWSAutoScalingGroup_WithLoadBalancer (400.67s)
=== RUN   TestAccAWSAutoScalingGroup_withPlacementGroup
--- PASS: TestAccAWSAutoScalingGroup_withPlacementGroup (134.39s)
=== RUN   TestAccAWSAutoScalingGroup_enablingMetrics
--- PASS: TestAccAWSAutoScalingGroup_enablingMetrics (305.32s)
=== RUN   TestAccAWSAutoScalingGroup_withMetrics
--- PASS: TestAccAWSAutoScalingGroup_withMetrics (48.56s)
PASS
ok      github.com/hashicorp/terraform/builtin/providers/aws
1774.819s
```
2016-07-20 19:36:45 +01:00
Paul Stack 0edf83008c provider/aws: Support `task_role_arn` on `aws_ecs_task_definition` (#7653)
Fixes #7633
2016-07-20 17:00:57 +01:00
Joe Topjian 30273faf20 Merge pull request #7649 from jtopjian/openstack-boot-volume-fix
provider/openstack: Fixing boot volume interference
2016-07-20 08:23:09 -06:00
Paul Hinze 62ec69a66a Merge pull request #7669 from kwilczynski/fix/aws-network-acl-rule
Fix icmp_type and icmp_code in aws_network_acl_rule.
2016-07-19 09:27:42 -05:00
avichalbadaya 7369c1c9f4 Allowing ap-south-1 (Mumbai) as valid AWS region (#7688)
* Update website_endpoint_url_test.go

Allow ap-south-1 (Mumbai) as valid region

* Update hosted_zones.go

Allowing ap-south-1 (Mumbai) as valid region

* Update website_endpoint_url_test.go

reformatting

* Update hosted_zones.go

reformatting

* Update resource_aws_s3_bucket.go

making changes for ap-south-1 (Mumbai) region
2016-07-19 09:01:49 +01:00
Paul Stack 565733398d provider/aws: Support Import of `aws_cloudwatch_metric_alarm` (#7687)
```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSCloudWatchMetricAlarm_'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
TF_ACC=1 go test ./builtin/providers/aws -v
-run=TestAccAWSCloudWatchMetricAlarm_ -timeout 120m
=== RUN   TestAccAWSCloudWatchMetricAlarm_importBasic
--- PASS: TestAccAWSCloudWatchMetricAlarm_importBasic (17.82s)
=== RUN   TestAccAWSCloudWatchMetricAlarm_basic
--- PASS: TestAccAWSCloudWatchMetricAlarm_basic (17.11s)
PASS
ok      github.com/hashicorp/terraform/builtin/providers/aws    34.957s
```
2016-07-19 05:52:02 +02:00
Radek Simko 37b6ab4507 provider/aws: Bump rds_cluster timeout to 15 mins (#7604) 2016-07-18 14:39:51 +01:00
stack72 a04e336ef9
Merge branch 'master' of github.com:hashicorp/terraform 2016-07-18 13:34:17 +01:00
stack72 8a72bfa5a9
provider/aws: Fix the Destroy func in the Route53 record tests
The test didn't expand the record name - therefore, when the name was
empty, it wasn't setting it to the domain name (like the normal resource
does!) This was causing an error
2016-07-18 13:25:42 +01:00
macheins aabb200f2d
Allow empty names in aws_route53_record
Added test for aws_route53_record with empty name

Integrated test for aws_route53_record with empty name

Changed test to use a third-level domain for zone
2016-07-18 13:25:38 +01:00
David Kelly 08291afd97 Increased lambda event mapping creation timeout (#7657)
Increased the retry timeout from 1 to 5 minutes due to the time for IAM permission propagation
2016-07-18 14:14:35 +02:00
David Harris 05aef0e660 provider/aws: Support ec2-classic and vpc in beanstalk recurring plans. (#6491)
* provider/aws: Support ec2-classic and vpc

Fix Elastic Beanstalk recurring plans when additional security groups
are supplied. In the previous version, only non-default vpc security
groups would be handled by dropGeneratedSecurityGroup.

* provider/aws: Elastic Beanstalk VPC Test
2016-07-18 11:37:37 +01:00
Steven Eschinger 9c095d66e1 azurerm: fix vault_certificates in vm/scale_set (#7681)
When setting the certificate_url and certificate_store values in
os_profile_secrets / vault_certificates for a Windows VM in AzureRM, I
was getting the following error:

```
[DEBUG] Error setting Virtual Machine Storage OS Profile Secrets:
&errors.errorString{s:"Invalid address to set:
[]string{\"os_profile_secrets\", \"0\", \"vault_certificates\"}"}
```

This seems to resolve the issue.
2016-07-18 10:20:18 +01:00
Raphael Randschau 697828f81f Handle Scaleway tags correctly (#7682) 2016-07-18 10:12:15 +01:00
Krzysztof Wilczynski 6dd0e3f6db
Add validation for icmp_type and icmp_code.
Also, change order of processing to parse icmp_type first. Change wording of the
debug messages, and change format string type for rule_number where appropriate.

Signed-off-by: Krzysztof Wilczynski <krzysztof.wilczynski@linux.com>
2016-07-17 03:24:48 +09:00
Radek Simko b8d21330a7 provider/aws: Allow importing lambda_function (#7610) 2016-07-16 15:36:28 +01:00
stack72 6468b899b9
provider/aws: Fix the AMI ID in the test for VPC Classic Link 2016-07-16 15:17:37 +01:00
Andrew Sy Kim e85297f958 provider/aws: Allow VPC Classic Linking in Autoscaling Launch Configs (#7470)
* support for vpc linking ec2 instances in launch configs

* add acceptance testing

* generate vpc and security groups for each test run
2016-07-16 15:13:29 +01:00
David Harris 03157610d8 provider/aws: Read Elastic Beanstalk stack name (#7671) 2016-07-16 14:43:12 +01:00
shanoor d9e3beb276 azurerm_storage_account now returns storage keys value instead of their names (#7674) 2016-07-16 14:36:15 +01:00