Commit Graph

6962 Commits

Author SHA1 Message Date
Jake Champlin e97900aef2
provider/aws: Update calling_identity
Updates `aws_caller_identity` data source to actually include the correct attributes from the `GetCallerIdentity` API function.

```
$ make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSCallerIdentity_basic'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/03/27 09:26:13 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSCallerIdentity_basic -timeout 120m
=== RUN   TestAccAWSCallerIdentity_basic
--- PASS: TestAccAWSCallerIdentity_basic (12.74s)
PASS
ok      github.com/hashicorp/terraform/builtin/providers/aws    12.767s
```
2017-03-27 09:32:31 -04:00
stack72 9cf5395f86
Merge branch 'vsphere-disk-capacity' of https://github.com/peay/terraform into peay-vsphere-disk-capacity 2017-03-27 15:59:00 +03:00
Doug Neal e7e35b5c07 provider/aws: aws_ses_receipt_rule: fix off-by-one errors (#12961)
In function `resourceAwsSesReceiptRuleRead` the position of the receipt
rules in the rule set was taken directly from the index of the rule's
position in the slice returned by the AWS API call. As the slice is
zero-based and the ruleset is one-based, this results in an incorrect
representation.

This manifests as `aws_ses_receipt_rule` resources always showing a
diff during plan or apply.
2017-03-27 15:56:57 +03:00
peay 07733e13ba vSphere disks: read disk capacity instead of file size 2017-03-27 08:28:26 -04:00
Sergey 0ff734f157 provider/digitalocean: Support disk only resize (#13059)
Allow to resize a droplet permanently (i.e. apply disk resize)
if previously it was resized temporarily (CPU and RAM only).

Fixes: #13007

```
$ make testacc TEST=./builtin/providers/digitalocean TESTARGS='-run=TestAccDigitalOceanDroplet_ResizeOnlyDisk'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/03/25 03:54:23 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/digitalocean -v -run=TestAccDigitalOceanDroplet_ResizeOnlyDisk -timeout 120m
=== RUN   TestAccDigitalOceanDroplet_ResizeOnlyDisk
--- PASS: TestAccDigitalOceanDroplet_ResizeOnlyDisk (198.62s)
PASS
ok  	github.com/hashicorp/terraform/builtin/providers/digitalocean	198.638s
```
2017-03-27 13:16:01 +03:00
Raphael Randschau 403ea9f6d7 provider/scaleway: work around parallel request limitation (#13045)
according to the official scaleway support, requests within the same session can
not be parallelized.

While I do not know for sure that this is a write-only limitation, I've
implemented it as a write-only limitation for now.

Previously requests like this would produce a 500 internal server error:

```
resource "scaleway_ip" "test_ip" {
  count = 2
}
```

now this limitation should be lifted, for all scaleway resources
2017-03-27 13:00:11 +03:00
Joe Topjian 0edbedd1a8 random_pet resource (#12903)
* vendor: adding golang-petname for random_pet resource

* provider/random: random_pet resource
2017-03-27 12:50:39 +03:00
Kit Ewbank 08c0ac68e9 Correct handling of network ACL default IPv6 ingress/egress rules. (#12835) 2017-03-27 12:42:49 +03:00
Joe Topjian fafd488a1c provider/openstack: 409 Response on Pool Create (#13074)
This commit accounts for a 409 response when a LBaaS v2 pool is
being created. Rather than error out, this should be considered a
pending state.
2017-03-26 14:35:01 +03:00
Joe Topjian 89905368b9 provider/openstack: Don't log the catalog (#13075)
The OS_DEBUG feature has worked out great, but frequent logging of
the service catalog during client initialization can make logging
very chatty. This commit omits the service catalog in the logs.
2017-03-26 12:35:40 +03:00
Jasmin Gacic d899709004 Handling missing resources (#13053) 2017-03-25 22:43:41 +02:00
Joe Topjian 9af4c1da67 provider/openstack: Fix monitor_id typo in LBaaS v1 Pool (#13069) 2017-03-25 22:42:18 +02:00
Joe Topjian de255d43d6 provider/openstack: Decprecating Instance Floating IP attribute (#13063)
This commit deprecates the floating_ip attributes from the
openstack_compute_instance_v2 resource. It is recommended to use
either the openstack_compute_floatingip_associate resource or
configure an openstack_networking_port_v2 resource with a floating
IP.
2017-03-25 13:09:35 +02:00
Joe Topjian de8e2d7f2b provider/openstack: Deprecating Instance Volume attribute (#13062)
This commit deprecates the volume attribute in the
openstack_compute_instance_v2 resource. It's recommended to either
use the block_device attribute or the openstack_compute_volume_attach_v2
resource.
2017-03-25 13:08:07 +02:00
Joe Topjian 0d3190fd8f provider/openstack: Fixing typo in secgroup rule timeout test 2017-03-25 01:34:42 +00:00
Sean Chittenden 32db4d184f Add `consul` check type to `circonus_check` resource (#13030)
* Add the `consul` check type to the `circonus_check` resource.

* Fix a tab-complete fail.

`Parse` != `Path`, but lexically close.

* Dept of 2nd thoughts: `s/service_name/service/g`
2017-03-24 15:05:19 -07:00
Jon Oden c18ad6ed25 fix bool vs Compatibool ref used in flattenBackends (#12538)
* fix bool vs Compatobool value used in flattendBackends

* remove log line

* update test case
2017-03-24 14:05:29 -05:00
Paul Stack 6b44a1b9ba provider/aws: Only allow 1 value in alb_listener_rule condition (#13051)
Fixes: #12983

```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSALBListenerRule_'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/03/24 19:31:26 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSALBListenerRule_ -timeout 120m
=== RUN   TestAccAWSALBListenerRule_basic
--- PASS: TestAccAWSALBListenerRule_basic (247.76s)
=== RUN   TestAccAWSALBListenerRule_multipleConditionThrowsError
--- PASS: TestAccAWSALBListenerRule_multipleConditionThrowsError (0.02s)
PASS
ok	github.com/hashicorp/terraform/builtin/providers/aws	247.815s
```
2017-03-24 19:49:27 +02:00
Paul Stack 48a4b3deaa provider/aws: aws_network_acl_rule treat all and -1 for protocol the (#13049)
same

Fixes: #13012

```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSNetworkAclRule_allProtocol'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/03/24 18:42:05 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSNetworkAclRule_allProtocol -timeout 120m
=== RUN   TestAccAWSNetworkAclRule_allProtocol
--- PASS: TestAccAWSNetworkAclRule_allProtocol (53.95s)
PASS
ok  	github.com/hashicorp/terraform/builtin/providers/aws	53.974s
```
2017-03-24 19:35:36 +02:00
Matthew Frahry 7c21b6ad49 Merge pull request #13047 from hashicorp/p-aws-route-53-zone
Fixes route53 test
2017-03-24 10:46:04 -06:00
Tom Harvey 68e32c165c Switching to a simpler ARM Template (#13043) 2017-03-24 18:34:40 +02:00
= 84a9bcde9a Fixes route53 test 2017-03-24 10:22:50 -06:00
demonwy 11768bcf5b provider alicloud:add new rds resource and some bugs fix (#12913)
* add new rds resource and some bugs fix

* add docs

* fix validator conflix

fix validator conflix
2017-03-24 13:04:56 +02:00
Paul Stack 4fe7ee16e6 provider/aws: Migrate the state for AWS VPC after IPv6 changes (#13041)
Fixes: #13035

It was pointed out in the issue that the addition of a new parameter
with a default value AND a ForceNew: true is causing Terraform to try
and recreate the VPC

This PR migrates the state to add the default value of false for `assign_generated_ipv6_cidr_block`

```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAWSVpcMigrateState'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/03/24 12:51:41 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAWSVpcMigrateState -timeout 120m
=== RUN   TestAWSVpcMigrateState
2017/03/24 12:52:26 [INFO] Found AWS VPC State v0; migrating to v1
2017/03/24 12:52:26 [DEBUG] Attributes before migration: map[string]string{"assign_generated_ipv6_cidr_block":"true"}
2017/03/24 12:52:26 [DEBUG] Attributes after migration: map[string]string{"assign_generated_ipv6_cidr_block":"false"}
2017/03/24 12:52:26 [INFO] Found AWS VPC State v0; migrating to v1
2017/03/24 12:52:26 [DEBUG] Attributes before migration: map[string]string{}
2017/03/24 12:52:26 [DEBUG] Attributes after migration: map[string]string{"assign_generated_ipv6_cidr_block":"false"}
--- PASS: TestAWSVpcMigrateState (0.00s)
PASS
ok  	github.com/hashicorp/terraform/builtin/providers/aws	0.024s
```
2017-03-24 13:02:11 +02:00
Brandon Tosch 0168829ecb Merge branch 'master' into brandontosch/GH-11874 2017-03-23 13:07:49 -07:00
Brandon Tosch 808a9f04f6 removed commented import 2017-03-23 12:14:16 -07:00
Paul Stack 1a80044397 provider/aws: Specify that aws_network_acl_rule requires a cidr block (#13013)
Fixes: #13011

```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSNetworkAclRule_'           2 ↵ ✚
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/03/23 17:45:25 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSNetworkAclRule_ -timeout 120m
=== RUN   TestAccAWSNetworkAclRule_basic
--- PASS: TestAccAWSNetworkAclRule_basic (41.10s)
=== RUN   TestAccAWSNetworkAclRule_missingParam
--- PASS: TestAccAWSNetworkAclRule_missingParam (21.21s)
=== RUN   TestAccAWSNetworkAclRule_ipv6
--- PASS: TestAccAWSNetworkAclRule_ipv6 (53.00s)
PASS
ok  	github.com/hashicorp/terraform/builtin/providers/aws	115.333s
```
2017-03-23 19:16:56 +02:00
Kevin Visscher 8bc049f351 provider/azurerm: Add support for setting the primary network interface (#11290)
Fixes #6514.

* add support for setting the primary network interface
* Tests and documentation for primary_network_interface_id
2017-03-23 16:42:01 +00:00
lwilliams-oats 67eeeb368a Fix for #11844. (#12998)
AWS API requires ECS placement strategies "field" attribute to be
"memory" or "cpu" (lowercase) when type=bin, but these read back as
"MEMORY" and "CPU" (uppercase) respectively.

PR #11565 (which fixed separately reported #11644) deals with this by
always lowering the case of the resource received from the API, but this
breaks for other "field" values (e.g. "instanceId" -> "instanceid").

This PR only lowers the case of the returned resource when field
"MEMORY" or "CPU". Haven't checked if any other fields need this
treatment.
2017-03-23 16:10:50 +02:00
Jake Champlin 9f02543db1 Merge pull request #12992 from hashicorp/b-update-iam-role-policy-acctests
provider/aws: Update IAM Role Policy Attachment Acctests
2017-03-23 09:58:46 -04:00
Jake Champlin 3d090b203e provider/aws: Update data_source_route53_zone acctest (#12993)
Updates the `data_source_route53_zone` acceptance test to better handle parallel runs. Also better handles tests that potentially leak resources by adding a random integer suffix to domain names.

```
$ make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSRolePolicyAttachment_basic'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/03/22 20:18:05 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSRolePolicyAttachment_basic -timeout 120m
=== RUN   TestAccAWSRolePolicyAttachment_basic
--- PASS: TestAccAWSRolePolicyAttachment_basic (31.94s)
PASS
ok      github.com/hashicorp/terraform/builtin/providers/aws    31.949s
```
2017-03-23 09:29:04 -04:00
Jake Champlin 9076e5a010
update test-resource names 2017-03-23 09:27:44 -04:00
Pasha Palangpour 93595d68e2 provider/ns1: Ensure provider checks for credentials (#12920)
* provider/ns1: Ensure provider checks for credentials

* provider/ns1: stick with GetOk for provider config vars

* provider/ns1: NS1 go client fixes for handling http errors
2017-03-23 12:00:56 +02:00
Radek Simko 1fb810d1fc provider/aws: Randomize acc tests for Inspector Assesment Tpl (#12990) 2017-03-23 09:30:45 +00:00
Radek Simko 0804c34946 provider/aws: Randomize names in APIGateway method acc tests (#12989) 2017-03-23 09:30:28 +00:00
Radek Simko 202cde6282 provider/aws: Consider ACTIVE as pending state during ECS svc deletion (#12986) 2017-03-23 09:29:15 +00:00
Paul Stack e87b2d30c4 provider/aws: Support Attachment of ALB Target Groups to Autoscaling Groups (#12855)
Fixes: #12563

```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAwsAutoscalingAttachment_'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/03/18 21:04:31 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAwsAutoscalingAttachment_ -timeout 120m
=== RUN   TestAccAwsAutoscalingAttachment_elb
--- PASS: TestAccAwsAutoscalingAttachment_elb (168.21s)
=== RUN   TestAccAwsAutoscalingAttachment_albTargetGroup
--- PASS: TestAccAwsAutoscalingAttachment_albTargetGroup (363.10s)
PASS
ok  	github.com/hashicorp/terraform/builtin/providers/aws	531.334s
```
2017-03-23 11:23:23 +02:00
Raphael Randschau 6991ceb2e2 provider/github: add repository_webhook resource (#12924)
* provider/github: add repository_webhook resource

`repository_webhook` can be used to manage webhooks for repositories.
It is currently limited to organization repositories only.

The changeset includes both documentation and tests.
The tests are green:

```
make testacc TEST=./builtin/providers/github
TESTARGS='-run=TestAccGithubRepositoryWebhook_basic'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/03/21 16:20:07 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/github -v
-run=TestAccGithubRepositoryWebhook_basic -timeout 120m
=== RUN   TestAccGithubRepositoryWebhook_basic
--- PASS: TestAccGithubRepositoryWebhook_basic (5.10s)
PASS
ok      github.com/hashicorp/terraform/builtin/providers/github    5.113s
```

* provider/github: add github_organization_webhook

the `github_organization_webhook` resource is similar to the
`github_repository_webhook` resource, but it manages webhooks for an
organization.

the tests are green:

```
make testacc TEST=./builtin/providers/github
TESTARGS='-run=TestAccGithubOrganizationWebhook'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/03/21 17:23:33 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/github -v
-run=TestAccGithubOrganizationWebhook -timeout 120m
=== RUN   TestAccGithubOrganizationWebhook_basic
--- PASS: TestAccGithubOrganizationWebhook_basic (2.09s)
PASS
ok      github.com/hashicorp/terraform/builtin/providers/github    2.109s
```
2017-03-23 11:21:45 +02:00
Radek Simko eddc8cce37 provider/github: Improve test failure message (#12978) 2017-03-23 09:19:03 +00:00
Sean Chittenden 3b7f429479 Consolidate all testing tags to `lifecycle:unittest`. (#12994) 2017-03-23 09:12:19 +00:00
Máximo Cuadros b31ff955b6 ignition_filesystem: explicit option to create the filesystem (Fix #12152) (#12980) 2017-03-23 11:02:54 +02:00
Joseph Anthony Pasquale Holsten 855adb47ed alicloud: simplify validators (#12982) 2017-03-23 10:57:11 +02:00
Paul Stack 91aed24202 provider/aws: Allow aws_alb subnets to change (#12850)
Fixes: #12764

AWS ALB Allows the Subnets to be changed using the SetSubnets func -
previously we set ForceNew: true on this change

```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSALB_'                                                                  ✭
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/03/18 16:55:52 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSALB_ -timeout 120m
=== RUN   TestAccAWSALB_basic
--- PASS: TestAccAWSALB_basic (342.95s)
=== RUN   TestAccAWSALB_generatedName
--- PASS: TestAccAWSALB_generatedName (362.05s)
=== RUN   TestAccAWSALB_namePrefix
--- PASS: TestAccAWSALB_namePrefix (311.21s)
=== RUN   TestAccAWSALB_tags
--- PASS: TestAccAWSALB_tags (344.05s)
=== RUN   TestAccAWSALB_updatedSecurityGroups
--- PASS: TestAccAWSALB_updatedSecurityGroups (515.61s)
=== RUN   TestAccAWSALB_updatedSubnets
--- PASS: TestAccAWSALB_updatedSubnets (313.94s)
=== RUN   TestAccAWSALB_noSecurityGroup
--- PASS: TestAccAWSALB_noSecurityGroup (293.54s)
=== RUN   TestAccAWSALB_accesslogs
--- PASS: TestAccAWSALB_accesslogs (492.01s)
PASS
ok	github.com/hashicorp/terraform/builtin/providers/aws	2975.402s
```
2017-03-23 10:25:30 +02:00
Paul Stack bed23ffbee provider/aws: Set aws_vpc ipv6 for associated only (#12899)
Fixes: #12895

The AWS API returns both dissociated and associated IPv6 CIDRs. The UI
only returns the associated. Therefore, the assumption was made that we
would always take the 1st association in the set to use for state

We now loop over the set and look for the associated IPv6 CIDR before
using that in state

```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSVpc_'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/03/20 21:21:02 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSVpc_ -timeout 120m
=== RUN   TestAccAWSVpc_importBasic
--- PASS: TestAccAWSVpc_importBasic (65.91s)
=== RUN   TestAccAWSVpc_basic
--- PASS: TestAccAWSVpc_basic (50.88s)
=== RUN   TestAccAWSVpc_enableIpv6
--- PASS: TestAccAWSVpc_enableIpv6 (49.89s)
=== RUN   TestAccAWSVpc_dedicatedTenancy
--- PASS: TestAccAWSVpc_dedicatedTenancy (50.59s)
=== RUN   TestAccAWSVpc_tags
--- PASS: TestAccAWSVpc_tags (98.89s)
=== RUN   TestAccAWSVpc_update
--- PASS: TestAccAWSVpc_update (93.46s)
=== RUN   TestAccAWSVpc_bothDnsOptionsSet
--- PASS: TestAccAWSVpc_bothDnsOptionsSet (20.71s)
=== RUN   TestAccAWSVpc_DisabledDnsSupport
--- PASS: TestAccAWSVpc_DisabledDnsSupport (49.55s)
=== RUN   TestAccAWSVpc_classiclinkOptionSet
--- PASS: TestAccAWSVpc_classiclinkOptionSet (54.92s)
PASS
ok	github.com/hashicorp/terraform/builtin/providers/aws	534.829s
```
2017-03-23 10:24:09 +02:00
Dana Hoffman 82608ca54b provider/google: turn compute_instance_group.instances into a set (#12790) 2017-03-22 17:47:41 -07:00
Jake Champlin ea40ef9596
provider/aws: Update IAM Role Policy Attachment Acctests
Leaked resources may prevent this resource from correctly passing acceptance tests. Seeding the policy names with random integer suffixes allows tests to pass regardless of resource leaks.

```
$ make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSRolePolicyAttachment_basic'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/03/22 19:58:58 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSRolePolicyAttachment_basic -timeout 120m
=== RUN   TestAccAWSRolePolicyAttachment_basic
--- PASS: TestAccAWSRolePolicyAttachment_basic (31.98s)
PASS
ok      github.com/hashicorp/terraform/builtin/providers/aws    31.989s
```
2017-03-22 20:02:12 -04:00
Dana Hoffman a208c08630 provider/google: replace instance group manager urls with instance group urls in container cluster tests 2017-03-22 16:33:11 -07:00
Clint cde1afbfd3 provider/aws: OpsWorks updates (#12979)
* provider/aws: Opsworks updates to allow minimal configuration

* update
2017-03-22 15:26:47 -05:00
Dana Hoffman ba2d3b1ece Merge pull request #12281 from mrooding/add-local-ssd-count-support
provider/google: add local ssd count support for container clusters
2017-03-22 13:06:16 -07:00
Radek Simko d0bb43e0e2 provider/aws: Lower metadata log msg from WARN to INFO (#12967) 2017-03-22 15:12:13 +00:00
Jake Champlin be2af3f577 provider/aws: Increase AMI destroy timeout (#12943)
* provider/aws: Increase AMI destroy timeout

Acceptance tests were timing out on AMI destroy, should alleviate the problem.

* Further increase timeout, cleanup test

* use function instead of printf
2017-03-22 09:27:23 -04:00
Jake Champlin fdc17c8d70 provider/aws: Update IAM Group+User Policy Tests (#12950)
Updates the IAM Group Policy and IAM User Policy acceptance tests with random integer seeds.
Currently acceptance tests for these two resources are failing from leaked resources, adding distint naming should allow tests to pass regardless of parallel tests being ran or any resource leaks.

```
$ make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSIAMUserPolicy'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/03/22 00:19:13 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSIAMUserPolicy -timeout 120m
=== RUN   TestAccAWSIAMUserPolicy_basic
--- PASS: TestAccAWSIAMUserPolicy_basic (22.54s)
=== RUN   TestAccAWSIAMUserPolicy_namePrefix
--- PASS: TestAccAWSIAMUserPolicy_namePrefix (12.49s)
=== RUN   TestAccAWSIAMUserPolicy_generatedName
--- PASS: TestAccAWSIAMUserPolicy_generatedName (13.13s)
PASS
ok      github.com/hashicorp/terraform/builtin/providers/aws    48.191s
```

```
$ make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSIAMGroupPolicy'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/03/22 00:24:08 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSIAMGroupPolicy -timeout 120m
=== RUN   TestAccAWSIAMGroupPolicy_basic
--- PASS: TestAccAWSIAMGroupPolicy_basic (23.89s)
=== RUN   TestAccAWSIAMGroupPolicy_namePrefix
--- PASS: TestAccAWSIAMGroupPolicy_namePrefix (12.07s)
=== RUN   TestAccAWSIAMGroupPolicy_generatedName
--- PASS: TestAccAWSIAMGroupPolicy_generatedName (13.15s)
PASS
ok      github.com/hashicorp/terraform/builtin/providers/aws    49.140s
```
2017-03-22 09:06:23 -04:00
Marc Rooding ab699db458 Support the container cluster local ssd count property 2017-03-22 09:39:36 +01:00
Dana Hoffman 596f0a28cf Merge pull request #12743 from danawillow/gke-nodeconfig
provider/google: add support for a few more fields in NodeConfig
2017-03-21 15:24:14 -07:00
Paul Stack 2a7ab027f4 provider/aws: Only call replace Iam Instance Profile on existing (#12922)
machines

Fixes: #12898

The way aws_instance works is that we call the Create func then the
Update func then the Read func. The way the work to implement the change
to iam_instance_profile was added meant that when a machine was created
with an iam_instance_profile, it would then try and update that
iam_instance_profile because the state hadn't been updated at that point

We have changed the Update func to only check for the change to
iam_instance_profile when it *is an existing machine* - this will solve
the problem of those bringing up new machines and getting hit with the
permissions error

As requested, added a test that adds an IAM Instance Profile from
creation

```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSInstance_withIamInstanceProfile'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/03/21 17:51:32 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSInstance_withIamInstanceProfile -timeout 120m
=== RUN   TestAccAWSInstance_withIamInstanceProfile
--- PASS: TestAccAWSInstance_withIamInstanceProfile (154.29s)
PASS
ok  	github.com/hashicorp/terraform/builtin/providers/aws	154.325s
```
2017-03-21 20:26:41 +02:00
Paul Stack f0e7bc942b provider/aws: Prevent panic when setting AWS CodeBuild Source to state (#12915)
Fixes: #12914

this is just a simple guard clause to prevent the hash from including an
optional value by default
2017-03-21 15:33:32 +00:00
Yukihiko SAWANOBORI 5a1f8097a0 Add params zone_id to cloudstack ipaddress resource (#11306)
* add option zone_id

- Ref: http://docs.idcf.jp/cloud/api/address/#listpublicipaddresses

* Exclusion of `network_id`, `vpc_id` and `zone_id`

* Revert "Exclusion of `network_id`, `vpc_id` and `zone_id`"

This reverts commit 9684c8b0b65b3353aea4e0bfbeaf21986282812b.

* remove zone_id from one of required option.
2017-03-21 12:02:38 +01:00
clint shryock db132b312d update test to remove dupe provider definition 2017-03-20 14:18:14 -05:00
clint shryock f59e37a41f update test to remove dupe provider definition 2017-03-20 13:54:13 -05:00
Dylan Conrad Johnson 934aa22549 nil checks when assigning to param map in resourceAwsSsmDocumentRead (#12891)
* add nil check when assingment from a doc parameter to the param map

* remove println
2017-03-20 18:24:13 +00:00
Benjamin Boudreau 073fa873ac Fix receive typo (#12881) 2017-03-20 13:15:27 -04:00
Gauthier Wallet 6f6dddba67 provider/aws: Deprecate the usage of stage_key in favor of usage plans (#12883) 2017-03-20 16:09:14 +00:00
Gauthier Wallet 23ebd0b972 Allow get/set of aws_api_gateway_api_key value attribute (#9462) 2017-03-20 14:08:37 +00:00
Gauthier Wallet ae2c7a5f0b provider/aws: Added Usage Plan Key resource (#12851)
* provider/aws: Added Usage Plan Key resource

* provider/aws: Added usage plan import documentation
2017-03-20 13:54:14 +00:00
Joshua Spence f40997988e Add `name_prefix` to `aws_autoscaling_group` and `aws_elb` resources (#12629)
Adds support for `name_prefix` to the `aws_autoscaling_group` and `aws_elb` resources. Unfortunately when using `name_prefix` with `aws_elb`, this means that the specified prefix can only be a maximum of 6 characters in length. This is because the maximum length for an ELB name is 32 characters, and `resource.PrefixedUniqueId` generates a 26-character unique identifier. I was considering truncating the unique identifier to allow for a longer `name_prefix`, but I worried that doing so would increase the risk of collisions.
2017-03-20 13:06:45 +00:00
Jake Pusateri c7546c7726 provider/aws: Fix flattened cloudfront lambda function associations to be a set, not a slice (#11984) 2017-03-20 13:05:19 +00:00
Laurent Commarieu d54a8da7d4 feat(consul): add basic auth to consul provider (#12679) 2017-03-20 13:00:44 +00:00
Radek Simko 17afcf2708 provider/arukas: Increase timeout to 15mins & use standard helper (#12849) 2017-03-19 18:55:11 +00:00
Alexander ca517543f2 provider/pagerduty: Validate credentials (#12854)
* Validate credentials

* Add ability to skip validation

* Update provider documentation

* invalidCredentials -> invalidCreds

* Include original error message

* Update description for skip_credentials_validation

* Add config test

* set skip_credentials_validation default to false
2017-03-19 17:37:46 +00:00
Joe Topjian bd7ba34627 provider/openstack: Adding Timeouts to Network Resources (#12866) 2017-03-19 17:23:36 +00:00
Joe Topjian fbf1732a7b provider/openstack: Adding Timeouts to LBaaS v1 Resources (#12867) 2017-03-19 17:18:03 +00:00
Joe Topjian adbc87f1e7 provider/openstack: Adding Timeouts to Image v2 and LBaaS v2 Resources (#12865) 2017-03-19 17:14:20 +00:00
Joe Topjian 42ff9103b7 provider/openstack: Adding Timeouts to FWaaS v1 Resources (#12863) 2017-03-19 17:09:22 +00:00
Joe Topjian e37b26a3fa provider/openstack: Adding Timeouts to Blockstorage Resources (#12862) 2017-03-19 17:07:26 +00:00
Gauthier Wallet 323f646b42 provider/aws: Added API Gateway Usage Plan (#12542)
* Added api_gateway_usage_plan

* Updated documentation

* Fixed AWS usage plan review points
2017-03-18 14:18:19 +00:00
Jesse Collier ba9434d741 Added support for EMR AutoScalingRole (#12823)
credit to @tolis-sisiaridis for changes
Addresses https://github.com/hashicorp/terraform/issues/11126
2017-03-18 14:12:43 +00:00
Hao 06a9bfebfc MySQL Provider does not recreate user if user got deleted manually in MySQL (#12791)
Issue No. #12767
2017-03-18 13:15:01 +00:00
James Healy 593a0c699b Allow dnsimple_record.priority attribute to be set (#12843)
* Allow priority attribute of dnsimple_record to be set

Some DNS record types (like MX) allow a priority to specified, and the
ability to do so is important in many environments.

This diff will change dnsimple_record.priority from computed to
optional, allowing it to be used in terraform configs like so:

    resource "dnsimple_record" "mx1" {
        domain = "example.com"
        name = ""
        value = "mx1.example.com"
        type = "MX"
        priority = "1"
    }

    resource "dnsimple_record" "mx2" {
        domain = "example.com"
        name = ""
        value = "mx2.example.com"
        type = "MX"
        priority = "2"
    }

* mention new priority attribute of dnsimple_record

* add acceptance specs for creating/updating MX records at dnsimple
2017-03-18 13:04:48 +00:00
Christoph Blecker bc4a3d62a5 Fix go vet error (#12839) 2017-03-18 12:33:05 +00:00
Brandon Tosch 03b8f05c99 Implemented ConflictsWith for vhd_uri and managed_disk fields 2017-03-17 19:37:05 -07:00
Sean Chittenden 2c564f1aff Add the `check_id` out parameter to `circonus_check`. (#12832)
This is an important optimization for dynamically created resources
via the `count` attribute.
2017-03-17 18:36:10 -04:00
Sean Chittenden d3225296a2 Add statsd support to the `circonus_check` resource. (#12820)
* Vendor update `github.com/circonus-labs/circonus-gometrics`

* Add the `statsd` check type to the `circonus_check` resource.

* Noop change: Alpha-sort members of maps, variables, and docs.
2017-03-17 18:34:00 -04:00
Kit Ewbank bf02d5aa50 provider/aws: Add KMS key tag support (#12243)
* Add KMS key tag support.

* After review, better error message when unable to list KMS key tags.
2017-03-17 19:08:33 +00:00
Jasmin Gacic bbded01863 panic_prevention (#12819) 2017-03-17 18:27:21 +00:00
James Bardin 23bc24bfcc Merge pull request #12813 from hashicorp/jbardin/dns-acc-tests
Convert dns data tests to acceptance tests
2017-03-17 14:18:23 -04:00
Radek Simko 6ff5561947 librato: Work around eventual consistency of the API (#12816) 2017-03-17 16:52:38 +00:00
Joshua Spence b823033514 Allow `name_prefix` to be used with various IAM resources (#12658)
Adds the `name_prefix` to `aws_iam_group_policy`, `aws_iam_role_policy` and `aws_iam_user_policy`.
2017-03-17 16:48:42 +00:00
Joe Topjian f54b0a88a7 provider/openstack: Add timeout support for Compute resources (#12794)
This commit adds support for specifying timeout values for the
openstack_compute_* family of resources.
2017-03-17 16:08:02 +00:00
James Bardin 983e041dc1 Convert dns data tests to acceptance tests
These call out to external resources and can fail in unit tests.
2017-03-17 12:07:29 -04:00
clint shryock f5b3e0c558 provider/aws: Adjust User-Agent header 2017-03-17 10:30:32 -05:00
Paul Stack c9df11e32f provider/pagerduty: Remove legacy pagerduty vendor datasource acctest (#12803)
Removes the test for datasource vendor name_prefix as that field has now
been removed
2017-03-17 11:06:26 +00:00
Radek Simko e6e2535d2e provider/github: Randomize repo and team names in acc tests (#12802) 2017-03-17 10:47:43 +00:00
Radek Simko 9e74548787 provider/circonus: Fix failing acceptance test (#12798) 2017-03-17 10:37:39 +00:00
Radek Simko 2082359220 provider/arukas: Randomize names in acceptance tests (#12784) 2017-03-17 05:47:24 +00:00
Radek Simko 50760374e0 aws: Discover supported EC2 platforms (#7568)
This will make it possible/easier to make decisions based on supported EC2 platforms (VPC and/or EC2 Classic)
in the context of any AWS resource which needs make such decisions.
2017-03-16 21:11:55 +00:00
Jake Champlin 78933cf31c Merge pull request #12765 from hashicorp/f-add-plan-validation-sg-cidr-blocks
provider/aws: Add plan-level validation for SG CIDR blocks
2017-03-16 15:44:56 -04:00
Willem van Vliet c133143bb2 Added schema to expose public IPv6 (#12748) 2017-03-16 20:00:30 +01:00
Paul Stack 98009ba733 provider/aws: Stop setting weight property on route53_record read (#12756)
Fixes: #12752

Weight was replaced with weighted_routing_policy in June 2016. But for
some reason we were still doing the following in the Read func:

```
d.Set("weight", -1)
```

As this field was removed, we shouldn't be setting it to state
2017-03-16 19:57:21 +01:00
Radek Simko e74449792d aws: Refactor API mock helpers (#12769)
This makes helpers generic enough to be useful for any AWS service
2017-03-16 17:41:57 +00:00
clint shryock 628dd2a1a4 Merge branch 'pr-12744'
* pr-12744:
  gofmt a file
  Adding data sources to DNS docs.
  Adding docs for data sources.
  Adding data sources to dns provider.
2017-03-16 11:03:38 -05:00
clint shryock 801ef5ba65 gofmt a file 2017-03-16 11:03:26 -05:00
Jake Champlin 925265016b
provider/aws: Add plan-level validation for SG CIDR blocks
Adds plan-level validation for both IPv4 and IPv6 CIDR Blocks in an AWS SecurityGroup resource, as well as the AWS Security Group Rule resource.

```
$ make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSSecurityGroup_invalidCIDRBlock'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/03/16 11:32:54 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSSecurityGroup_invalidCIDRBlock -timeout 120m
=== RUN   TestAccAWSSecurityGroup_invalidCIDRBlock
--- PASS: TestAccAWSSecurityGroup_invalidCIDRBlock (0.01s)
PASS
ok      github.com/hashicorp/terraform/builtin/providers/aws    0.017s
```

```
$ make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSSecurityGroupRule_ExpectInvalidCIDR'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/03/16 11:46:21 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSSecurityGroupRule_ExpectInvalidCIDR -timeout 120m
=== RUN   TestAccAWSSecurityGroupRule_ExpectInvalidCIDR
--- PASS: TestAccAWSSecurityGroupRule_ExpectInvalidCIDR (0.01s)
PASS
ok      github.com/hashicorp/terraform/builtin/providers/aws    0.016s
```
2017-03-16 11:49:51 -04:00
Radek Simko 5f70ffb3b4 kubernetes: Add config_map resource (#12753) 2017-03-16 14:51:01 +00:00
Radek Simko 7692ac74a1 provider/aws: Improve error when failing to get S3 tags (#12759) 2017-03-16 14:43:54 +00:00
Jake Champlin b946304f7e Merge pull request #12702 from hashicorp/f-retry-deletion-aws-ami
Add waitForDestroy for aws ami resource
2017-03-16 10:22:54 -04:00
Jake Champlin 3641c944a6 Merge pull request #12735 from hashicorp/b-fix-network-acls
provider/aws: Correctly check if setting CidrBlock or IPv6CidrBlock i…
2017-03-16 10:21:25 -04:00
Radek Simko 4448e45678 Merge pull request #12372 from hashicorp/f-kubernetes
kubernetes: Add provider + namespace resource
2017-03-16 07:18:39 +00:00
Paddy fc8e696581 Merge pull request #12729 from hashicorp/paddy_drop_account_file
provider/google: drop the account file.
2017-03-15 23:40:04 -07:00
Jake Champlin f93848670e
protect against panics in nil checks 2017-03-15 18:21:40 -04:00
Brad Sickles aea87de808 Adding data sources to dns provider. 2017-03-15 18:18:39 -04:00
Dana Hoffman d187df75e8 provider/google: add support for a few more fields in NodeConfig 2017-03-15 15:11:09 -07:00
Jake Champlin 3f8fa8ddf4
provider/aws: Correctly check if setting CidrBlock or IPv6CidrBlock in NetworkAcl
Previously the check for if we are setting `CidrBlock` or `IPv6CidrBlock` during an `Update` of the `aws_network_acl` resource would populate the input struct with a nil string value `""`. This caused our acceptance tests to fail, and broke the resource's functionality if a user only set `CidrBlock` or `IPv6CidrBlock` for either an `ingress` or `egress` rule as the API would error out with an `Invalid CidrBlock` error.

Previously:
```
aws_network_acl.bond: Error creating egress entry: InvalidParameterValue: CIDR block  is malformed
            status code: 400, request id: 0620e0b7-4e30-4c14-9a7a-5d373cc9f33b
```

Currently:
```
$ make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSNetworkAcl'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/03/15 15:41:17 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSNetworkAcl -timeout 120m
=== RUN   TestAccAWSNetworkAcl_importBasic
--- PASS: TestAccAWSNetworkAcl_importBasic (26.96s)
=== RUN   TestAccAWSNetworkAclRule_basic
--- PASS: TestAccAWSNetworkAclRule_basic (23.08s)
=== RUN   TestAccAWSNetworkAclRule_ipv6
--- PASS: TestAccAWSNetworkAclRule_ipv6 (26.24s)
=== RUN   TestAccAWSNetworkAcl_EgressAndIngressRules
--- PASS: TestAccAWSNetworkAcl_EgressAndIngressRules (25.11s)
=== RUN   TestAccAWSNetworkAcl_OnlyIngressRules_basic
--- PASS: TestAccAWSNetworkAcl_OnlyIngressRules_basic (31.82s)
=== RUN   TestAccAWSNetworkAcl_OnlyIngressRules_update
--- PASS: TestAccAWSNetworkAcl_OnlyIngressRules_update (48.59s)
=== RUN   TestAccAWSNetworkAcl_OnlyEgressRules
--- PASS: TestAccAWSNetworkAcl_OnlyEgressRules (25.48s)
=== RUN   TestAccAWSNetworkAcl_SubnetChange
--- PASS: TestAccAWSNetworkAcl_SubnetChange (57.12s)
=== RUN   TestAccAWSNetworkAcl_Subnets
--- PASS: TestAccAWSNetworkAcl_Subnets (67.55s)
=== RUN   TestAccAWSNetworkAcl_ipv6Rules
--- PASS: TestAccAWSNetworkAcl_ipv6Rules (31.52s)
=== RUN   TestAccAWSNetworkAcl_espProtocol
acc--- PASS: TestAccAWSNetworkAcl_espProtocol (24.37s)
PASS
ok      github.com/hashicorp/terraform/builtin/providers/aws    387.855s
```
2017-03-15 15:51:20 -04:00
James Bardin a4ba2b27fd Merge pull request #12733 from hashicorp/jbardin/consul-acc-tests
Revert "Have the consul provider use a local test server"
2017-03-15 15:09:30 -04:00
Hugo Duncan 0d4e6e8cf0 Fix aws_lambda_function attributes when more than 50 versions (#11745)
Fixes the version and qualified_arn attributes, when the lambda
function has more than 50 versions.

Closes #11720
2017-03-15 20:51:43 +02:00
James Bardin 7f9a57db1d Revert "Have the consul provider use a local test server"
This reverts commit 9529bd3bf0.
2017-03-15 14:42:26 -04:00
Alexander 05bf45bce2 Remove name_regex field & old lookup (#12396) 2017-03-15 20:33:30 +02:00
Paddy 97b40a2005 provider/google: drop the account file.
This was already marked as removed, but the way the provider handled it,
people were still being prompted for input anyways. This removes it from
the provider entirely, so people won't be prompted for input.
2017-03-15 11:00:54 -07:00
Jake Champlin 1197dd1e96
Use WaitForState for checking both available and deleted ami's 2017-03-15 13:06:50 -04:00
Evan Phoenix 5f44a154e2 Add log message about if changes are being applied now or later (#12691)
* Add log message about if changes are being applied now or later

* Improve english

* Further adventure in english
2017-03-15 18:02:00 +02:00
Jake Champlin 1258140c09
[WIP] testing WaitForState 2017-03-15 11:45:42 -04:00
Jake Champlin 67e95f8693 Merge pull request #12712 from foragerr/enhance-s3-errors
provider aws: add more details to s3 error message
2017-03-15 11:37:19 -04:00
Paul Stack 408ce5fe3f Revert "provider/alicloud: change create ecs postpaid instance API" (#12724)
* Revert "datadog: Fix incorrect schema of monitor for 'silenced' (#12720)"

This reverts commit 8730bf125f.

* Revert "schema: Allow *Resource as Elem of TypeMap in validation (#12722)"

This reverts commit 1df1c21d5b.

* Revert "provider/alicloud: change create ecs postpaid instance API (#12226)"

This reverts commit ffc5a06cb5.
2017-03-15 17:18:11 +02:00
Radek Simko 8730bf125f datadog: Fix incorrect schema of monitor for 'silenced' (#12720) 2017-03-15 15:01:49 +00:00
demonwy ffc5a06cb5 provider/alicloud: change create ecs postpaid instance API (#12226)
* change create ecs postpaid instance API form createInstance to runInstances, support BusinessInfo and userdata

* update sdk vendor
2017-03-15 16:50:17 +02:00
Radek Simko fff0b694f7 ns1: Fix incorrect schema for 'ns1_user.notify' (#12721)
* ns1: Add acceptance test for ns1_user

* ns1: Fix incorrect schema for 'notify'
2017-03-15 14:39:26 +00:00
Raphael Randschau fcaafee06b provider/scaleway: work around API concurrency issue (#12707)
when creating IPs concurrently the Scaleway API starts to return 500 internal
server errors.

since the error goes away when limiting concurrent requests, as well as the fact that the golang net/http client is safe for concurrent use,
I'm assuming this is an API error on Scaleways side.

this CS introduces a workaround so terraform does not crash for now.
the work around needs to be removed once Scaleway fixes their API
2017-03-15 16:23:18 +02:00
Raphaël Pinson 8ccd38013e Add rancher_certificate resource type (#12717) 2017-03-15 16:22:34 +02:00
Paul Stack 4f58099a0e provider/aws: Remove restriction on running aws_opsworks_* on us-east-1 (#12688)
Fixes: #11824

A full set of acceptance tests for *all* OpsWorks tests are below. There is a single issue, opsworks_instance isn't ordering the layer_ids so it's non-deterministic which can come back. This introduces a false positive.

The opsworks tests are running both against us-east-1 for some and us-west-2 for others. This must be marked as a backwards incompatibility in 0.9 just incase people are using the opsworks region parameter to try and override the provider region

```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSOpsworksApplication'                                                              2 ↵ ✹
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/03/14 17:11:36 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSOpsworksApplication -timeout 120m
=== RUN   TestAccAWSOpsworksApplication
--- PASS: TestAccAWSOpsworksApplication (164.29s)
PASS
ok  	github.com/hashicorp/terraform/builtin/providers/aws	164.319s
```

```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSOpsworksCustomLayer'                                                                  ✹
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/03/14 17:16:18 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSOpsworksCustomLayer -timeout 120m
=== RUN   TestAccAWSOpsworksCustomLayerImportBasic
--- PASS: TestAccAWSOpsworksCustomLayerImportBasic (105.98s)
=== RUN   TestAccAWSOpsworksCustomLayer
--- PASS: TestAccAWSOpsworksCustomLayer (92.68s)
PASS
ok  	github.com/hashicorp/terraform/builtin/providers/aws	198.684s
```

```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSOpsworksPermission'                                                                   ✹
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/03/14 17:23:28 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSOpsworksPermission -timeout 120m
=== RUN   TestAccAWSOpsworksPermission
--- PASS: TestAccAWSOpsworksPermission (226.36s)
PASS
ok  	github.com/hashicorp/terraform/builtin/providers/aws	226.386s
```

```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSOpsworksRailsAppLayer'                          ✹
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/03/14 17:28:01 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSOpsworksRailsAppLayer -timeout 120m
=== RUN   TestAccAWSOpsworksRailsAppLayer
--- PASS: TestAccAWSOpsworksRailsAppLayer (129.39s)
PASS
ok  	github.com/hashicorp/terraform/builtin/providers/aws	129.426s
```

```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSOpsworksUserProfile'                            ✹
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/03/14 17:37:46 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSOpsworksUserProfile -timeout 120m
=== RUN   TestAccAWSOpsworksUserProfile
--- PASS: TestAccAWSOpsworksUserProfile (42.60s)
PASS
ok  	github.com/hashicorp/terraform/builtin/providers/aws	42.624s
```

```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSOpsworksStack'                                                                     2 ↵ ✹
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/03/14 18:00:50 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSOpsworksStack -timeout 120m
=== RUN   TestAccAWSOpsworksStackImportBasic
--- PASS: TestAccAWSOpsworksStackImportBasic (50.28s)
=== RUN   TestAccAWSOpsworksStackNoVpc
--- PASS: TestAccAWSOpsworksStackNoVpc (25.92s)
=== RUN   TestAccAWSOpsworksStackVpc
--- PASS: TestAccAWSOpsworksStackVpc (76.80s)
PASS
ok  	github.com/hashicorp/terraform/builtin/providers/aws	153.025s
```

```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSOpsworksRdsDbInstance'                                                                                                               ✹
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/03/14 17:38:36 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSOpsworksRdsDbInstance -timeout 120m
=== RUN   TestAccAWSOpsworksRdsDbInstance
--- PASS: TestAccAWSOpsworksRdsDbInstance (916.15s)
PASS
ok  	github.com/hashicorp/terraform/builtin/providers/aws	916.177s
```

```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSOpsworksInstance'           2 ↵
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/03/14 17:26:45 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSOpsworksInstance -timeout 120m
=== RUN   TestAccAWSOpsworksInstance_importBasic
--- PASS: TestAccAWSOpsworksInstance_importBasic (85.52s)
=== RUN   TestAccAWSOpsworksInstance
--- FAIL: TestAccAWSOpsworksInstance (114.09s)
	testing.go:268: Step 1 error: After applying this step, the plan was not empty:

		DIFF:

		UPDATE: aws_opsworks_instance.tf-acc
		  layer_ids.0: "4c29b76f-df72-409e-a5c4-9459b7d9b4a4" => "a4a859cf-2a07-447e-a151-a97a6d827db7"
		  layer_ids.1: "a4a859cf-2a07-447e-a151-a97a6d827db7" => "4c29b76f-df72-409e-a5c4-9459b7d9b4a4"

      FAIL
      exit status 1
      FAIL	github.com/hashicorp/terraform/builtin/providers/aws	199.643s
      make: *** [testacc] Error 1
```
2017-03-15 16:17:53 +02:00
RaGe e1dd61ce92 provider aws: add more details to s3 error message 2017-03-15 09:55:35 -04:00
Sean Chittenden eff2fb9dee Fix PagerDuty support for `circonus_contact_group`. (#12714)
* Spell `webhook_url` like `webhook_url` and not like `webook_url`.
* Expect `pagerduty` not `pager_duty` from the API.
2017-03-15 02:28:15 -07:00
Dana Hoffman 2cf70fce98 provider/google: Check all fields in GKE tests instead of just that the resource exists (#12147) 2017-03-14 17:50:58 -07:00
Paddy 3940ae5ee7 Merge pull request #12659 from hashicorp/paddy_remove_deprecated_gcp_project_fields
provider/google: Remove deprecated project fields.
2017-03-14 16:52:40 -07:00
Paddy c14fc480ba Prune dead function.
This function isn't called anymore, so let's get rid of it.
2017-03-14 16:38:40 -07:00
Paddy 93196f3907 Merge pull request #12668 from hashicorp/paddy_deprecate_google_credentials_file
provider/google: remove deprecated account_file field.
2017-03-14 13:23:59 -07:00
Jake Champlin 005994ec8d
Add waitForDestroy for aws ami resource
Fixes the two failing aws_ami acceptance tests, by polling until the AMI is deleted before exiting.

```
$ make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSAMI_basic'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/03/14 16:03:26 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSAMI_basic -timeout 120m
=== RUN   TestAccAWSAMI_basic
--- PASS: TestAccAWSAMI_basic (43.98s)
PASS
ok      github.com/hashicorp/terraform/builtin/providers/aws    43.989s
```

```
$ make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSAMI_snapshotSize'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/03/14 16:07:29 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSAMI_snapshotSize -timeout 120m
=== RUN   TestAccAWSAMI_snapshotSize
--- PASS: TestAccAWSAMI_snapshotSize (28.64s)
PASS
ok      github.com/hashicorp/terraform/builtin/providers/aws    28.654s
```
2017-03-14 16:15:19 -04:00
Paddy 216cf76196 Merge pull request #12663 from hashicorp/paddy_deprecate_backend_region
provider/google: remove the backend region field
2017-03-14 13:00:07 -07:00
Paddy 5c53828bd5 Remove validateAccountFile function.
As @danawillow noticed, if the field is removed, we don't need to
validate it. Which means more deleting code!
2017-03-14 12:56:02 -07:00
Paddy 7a06d3f089 Merge pull request #12662 from hashicorp/paddy_9051_forwarding_rule_cycle
provider/google: fix single port diff cycle
2017-03-14 12:49:47 -07:00
Paddy 4f235c870d Merge pull request #12387 from hashicorp/paddy_11763_gcp_iam_diff
provider/google: ignore expanded v collapsed policies in diff
2017-03-14 12:48:05 -07:00
James Bardin f9190f37ae Merge pull request #12684 from hashicorp/jbardin/consul-tests
Include a consul server for tests
2017-03-14 15:07:54 -04:00
Brandon Tosch 4294754456 Corrected error message 2017-03-14 12:07:02 -07:00
Brandon Tosch 8f2d2ed954 refactored flatten methods to also set values 2017-03-14 11:50:37 -07:00
Brandon Tosch dbb4daa72f disk_size_gb is required 2017-03-14 11:40:54 -07:00
Paul Stack 0834f994de provider/aws: Guard clause to prevent panic on ELB connectionSettings (#12685)
Fixes: #11705

```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSELB_'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/03/14 16:40:20 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSELB_ -timeout 120m
=== RUN   TestAccAWSELB_importBasic
--- PASS: TestAccAWSELB_importBasic (73.93s)
=== RUN   TestAccAWSELB_basic
--- PASS: TestAccAWSELB_basic (69.20s)
=== RUN   TestAccAWSELB_fullCharacterRange
--- PASS: TestAccAWSELB_fullCharacterRange (63.68s)
=== RUN   TestAccAWSELB_AccessLogs_enabled
--- PASS: TestAccAWSELB_AccessLogs_enabled (196.25s)
=== RUN   TestAccAWSELB_AccessLogs_disabled
--- PASS: TestAccAWSELB_AccessLogs_disabled (190.90s)
=== RUN   TestAccAWSELB_generatedName
--- PASS: TestAccAWSELB_generatedName (52.09s)
=== RUN   TestAccAWSELB_availabilityZones
--- PASS: TestAccAWSELB_availabilityZones (93.53s)
=== RUN   TestAccAWSELB_tags
--- PASS: TestAccAWSELB_tags (102.96s)
=== RUN   TestAccAWSELB_iam_server_cert
--- PASS: TestAccAWSELB_iam_server_cert (70.91s)
=== RUN   TestAccAWSELB_swap_subnets
--- PASS: TestAccAWSELB_swap_subnets (261.42s)
=== RUN   TestAccAWSELB_InstanceAttaching
--- PASS: TestAccAWSELB_InstanceAttaching (196.82s)
=== RUN   TestAccAWSELB_HealthCheck
--- PASS: TestAccAWSELB_HealthCheck (60.64s)
=== RUN   TestAccAWSELB_Timeout
--- PASS: TestAccAWSELB_Timeout (62.71s)
=== RUN   TestAccAWSELB_ConnectionDraining
--- PASS: TestAccAWSELB_ConnectionDraining (58.25s)
=== RUN   TestAccAWSELB_SecurityGroups
--- PASS: TestAccAWSELB_SecurityGroups (153.64s)
PASS
ok  	github.com/hashicorp/terraform/builtin/providers/aws	1706.980s
```
2017-03-14 19:54:16 +02:00
Brian Flad 3e817e019f
provider/datadog: Add datadog_downtime resource (#10994)
* provider/datadog: Initial datadog_downtime resource

* provider/datadog: Update datadog_downtime resource to v2 library, fix recurrence handling

* provider/datadog: Fix datadog_downtime import test
2017-03-14 19:22:35 +02:00
Raphaël Pinson 1917646ec3 Add rancher_host resource type (#11545)
* Add rancher_host resource type

This adds a rancher_host resource type.
For now, the goal is to detect if the host already exists,
so that it can be purged cleanly when the host is deprovisioned.

The typical use is to create both an instance (e.g. aws_instance)
and a rancher_host resources with the same hostname. The rancher_host
resource will detect when the agent has registered itself.

When removing the host, both the instance and the rancher_host
resources can be removed, ensuring the host is purged from Rancher.

In future versions, this could support creating hosts as well.

* Use ro_labels to avoid removing internal Rancher labels

As reported in https://github.com/rancher/rancher/issues/8165

* Do not ForceNew on environment_id
2017-03-14 19:17:09 +02:00
Raphaël Pinson 4faeabf32e Better comparison of compose files (#12561)
* Better comparison of compose files

* Add github.com/docker/libcompose/config and deps to vendor
2017-03-14 19:08:23 +02:00
Jake Champlin 3daed73c06 Merge pull request #12686 from hashicorp/f-update-packet-acctest
provider/packet: Update ssh-key resource test to run in parallel better
2017-03-14 12:31:20 -04:00
Joe Topjian 9683f705f7 provider/openstack: Force Deletion of Instances (#12689)
This commit adds the `force_delete` argument, enabling instances
to be forcefully deleted.
2017-03-14 18:26:59 +02:00
Paul Stack ad12d8804b provider/aws: Add replace_unhealthy_instances to spot_fleet_request (#12681)
Fixes: #12635

```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSSpotFleetRequest_'                                                                    ✹
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/03/14 15:57:08 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSSpotFleetRequest_ -timeout 120m
=== RUN   TestAccAWSSpotFleetRequest_changePriceForcesNewRequest
--- PASS: TestAccAWSSpotFleetRequest_changePriceForcesNewRequest (182.81s)
=== RUN   TestAccAWSSpotFleetRequest_lowestPriceAzOrSubnetInRegion
--- PASS: TestAccAWSSpotFleetRequest_lowestPriceAzOrSubnetInRegion (88.80s)
=== RUN   TestAccAWSSpotFleetRequest_lowestPriceAzInGivenList
--- PASS: TestAccAWSSpotFleetRequest_lowestPriceAzInGivenList (92.50s)
=== RUN   TestAccAWSSpotFleetRequest_lowestPriceSubnetInGivenList
--- PASS: TestAccAWSSpotFleetRequest_lowestPriceSubnetInGivenList (119.25s)
=== RUN   TestAccAWSSpotFleetRequest_multipleInstanceTypesInSameAz
--- PASS: TestAccAWSSpotFleetRequest_multipleInstanceTypesInSameAz (95.23s)
=== RUN   TestAccAWSSpotFleetRequest_multipleInstanceTypesInSameSubnet
--- PASS: TestAccAWSSpotFleetRequest_multipleInstanceTypesInSameSubnet (125.55s)
=== RUN   TestAccAWSSpotFleetRequest_overriddingSpotPrice
--- PASS: TestAccAWSSpotFleetRequest_overriddingSpotPrice (92.24s)
=== RUN   TestAccAWSSpotFleetRequest_diversifiedAllocation
--- PASS: TestAccAWSSpotFleetRequest_diversifiedAllocation (400.04s)
=== RUN   TestAccAWSSpotFleetRequest_withWeightedCapacity
--- PASS: TestAccAWSSpotFleetRequest_withWeightedCapacity (349.51s)
=== RUN   TestAccAWSSpotFleetRequest_withEBSDisk
--- PASS: TestAccAWSSpotFleetRequest_withEBSDisk (86.70s)
=== RUN   TestAccAWSSpotFleetRequest_CannotUseEmptyKeyName
--- PASS: TestAccAWSSpotFleetRequest_CannotUseEmptyKeyName (0.00s)
PASS
ok	github.com/hashicorp/terraform/builtin/providers/aws	1632.663s
```
2017-03-14 18:23:00 +02:00
Jake Champlin 4a3e5189f9
provider/packet: Update ssh-key resource test to run in parallel better
Allows the ssh-key test to pass when ran in parallel with different branches.

```
$ make testacc TEST=./builtin/providers/packet TESTARGS='-run=TestAccPacketSSHKey_Basic'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/03/14 11:10:28 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/packet -v -run=TestAccPacketSSHKey_Basic -timeout 120m
=== RUN   TestAccPacketSSHKey_Basic
PASS
ok      github.com/hashicorp/terraform/builtin/providers/packet 3.503s
```
2017-03-14 11:11:57 -04:00
James Bardin 9529bd3bf0 Have the consul provider use a local test server
We're providing a local test server for the consul backends, so we might
as well use it to make the provider acceptance tests more relible as
well.

TODO: the TLS test doesn't actualy test anything other than the Config.
The tests have been modified to make it apparent that they aren't
connecting to the server at all.
2017-03-14 10:43:09 -04:00
Matt Dainty c5ea37c0ee Add `aws_iam_account_alias` resource (#12648) 2017-03-14 15:35:38 +02:00
Paul Stack 1994b1111d provider/aws: Add support for IPv6 to aws_security_group (#12655)
```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSSecurityGroup_'                                                                     ✹ ✭
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/03/13 19:07:33 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSSecurityGroup_ -timeout 120m
=== RUN   TestAccAWSSecurityGroup_importBasic
--- PASS: TestAccAWSSecurityGroup_importBasic (48.67s)
=== RUN   TestAccAWSSecurityGroup_importIpv6
--- PASS: TestAccAWSSecurityGroup_importIpv6 (51.71s)
=== RUN   TestAccAWSSecurityGroup_importSelf
--- PASS: TestAccAWSSecurityGroup_importSelf (58.46s)
=== RUN   TestAccAWSSecurityGroup_importSourceSecurityGroup
--- PASS: TestAccAWSSecurityGroup_importSourceSecurityGroup (65.99s)
=== RUN   TestAccAWSSecurityGroup_basic
--- PASS: TestAccAWSSecurityGroup_basic (62.18s)
=== RUN   TestAccAWSSecurityGroup_ipv6
--- PASS: TestAccAWSSecurityGroup_ipv6 (47.38s)
=== RUN   TestAccAWSSecurityGroup_tagsCreatedFirst
--- PASS: TestAccAWSSecurityGroup_tagsCreatedFirst (30.48s)
=== RUN   TestAccAWSSecurityGroup_namePrefix
--- PASS: TestAccAWSSecurityGroup_namePrefix (16.90s)
=== RUN   TestAccAWSSecurityGroup_self
--- PASS: TestAccAWSSecurityGroup_self (45.36s)
=== RUN   TestAccAWSSecurityGroup_vpc
--- PASS: TestAccAWSSecurityGroup_vpc (45.76s)
=== RUN   TestAccAWSSecurityGroup_vpcNegOneIngress
--- PASS: TestAccAWSSecurityGroup_vpcNegOneIngress (44.50s)
=== RUN   TestAccAWSSecurityGroup_vpcProtoNumIngress
--- PASS: TestAccAWSSecurityGroup_vpcProtoNumIngress (45.01s)
=== RUN   TestAccAWSSecurityGroup_MultiIngress
--- PASS: TestAccAWSSecurityGroup_MultiIngress (50.67s)
=== RUN   TestAccAWSSecurityGroup_Change
--- PASS: TestAccAWSSecurityGroup_Change (76.34s)
=== RUN   TestAccAWSSecurityGroup_generatedName
--- PASS: TestAccAWSSecurityGroup_generatedName (46.29s)
=== RUN   TestAccAWSSecurityGroup_DefaultEgress_VPC
--- PASS: TestAccAWSSecurityGroup_DefaultEgress_VPC (48.10s)
=== RUN   TestAccAWSSecurityGroup_DefaultEgress_Classic
--- PASS: TestAccAWSSecurityGroup_DefaultEgress_Classic (16.71s)
=== RUN   TestAccAWSSecurityGroup_drift
--- PASS: TestAccAWSSecurityGroup_drift (22.73s)
=== RUN   TestAccAWSSecurityGroup_drift_complex
--- PASS: TestAccAWSSecurityGroup_drift_complex (54.14s)
=== RUN   TestAccAWSSecurityGroup_tags
--- PASS: TestAccAWSSecurityGroup_tags (74.12s)
=== RUN   TestAccAWSSecurityGroup_CIDRandGroups
--- PASS: TestAccAWSSecurityGroup_CIDRandGroups (55.83s)
=== RUN   TestAccAWSSecurityGroup_ingressWithCidrAndSGs
--- PASS: TestAccAWSSecurityGroup_ingressWithCidrAndSGs (54.40s)
=== RUN   TestAccAWSSecurityGroup_ingressWithCidrAndSGs_classic
--- PASS: TestAccAWSSecurityGroup_ingressWithCidrAndSGs_classic (26.93s)
=== RUN   TestAccAWSSecurityGroup_egressWithPrefixList
--- PASS: TestAccAWSSecurityGroup_egressWithPrefixList (61.39s)
=== RUN   TestAccAWSSecurityGroup_failWithDiffMismatch
--- PASS: TestAccAWSSecurityGroup_failWithDiffMismatch (55.93s)
PASS
ok	github.com/hashicorp/terraform/builtin/providers/aws	1136.500s
```
2017-03-14 13:02:50 +02:00
Karol Stępniewski 1fef190b68 Check for ErrDefault500 when creating/deleting pool member (#12664)
If LBaaSV2 member creation/deletion is attempted while LB resource is
busy (for example it's in PENDING_UPDATE state), Neutron will return 500
error. Currently This being caught by type assertion to
ErrUnexpectedResponseCode, however error 500 has a dedicated type
ErrDefault500, which makes the current type assertion to miss it and
eventually the error slips out through the check. This patch
changes the type assertion to explicitly check for ErrDefault500.

Also similar check has been added when member is deleted.
2017-03-14 12:45:43 +02:00
Paul Stack 1c7ea5a8af provider/aws: Add support for IPv6 in aws_route (#12639)
```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSRoute_'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/03/12 18:56:59 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSRoute_ -timeout 120m
=== RUN   TestAccAWSRoute_basic
--- PASS: TestAccAWSRoute_basic (58.46s)
=== RUN   TestAccAWSRoute_ipv6Support
--- PASS: TestAccAWSRoute_ipv6Support (48.74s)
=== RUN   TestAccAWSRoute_changeCidr
--- PASS: TestAccAWSRoute_changeCidr (90.23s)
=== RUN   TestAccAWSRoute_noopdiff
--- PASS: TestAccAWSRoute_noopdiff (138.02s)
=== RUN   TestAccAWSRoute_doesNotCrashWithVPCEndpoint
--- PASS: TestAccAWSRoute_doesNotCrashWithVPCEndpoint (63.58s)
PASS
ok  	github.com/hashicorp/terraform/builtin/providers/aws	399.054s
```
2017-03-14 12:41:40 +02:00
Paul Stack ff7df7b997 provider/aws: Add support for IPv6 to aws_network_acl (#12641)
```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSNetworkAcl_'              2 ↵ ✭
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/03/13 14:04:41 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSNetworkAcl_ -timeout 120m
=== RUN   TestAccAWSNetworkAcl_importBasic
--- PASS: TestAccAWSNetworkAcl_importBasic (55.44s)
=== RUN   TestAccAWSNetworkAcl_EgressAndIngressRules
--- PASS: TestAccAWSNetworkAcl_EgressAndIngressRules (48.19s)
=== RUN   TestAccAWSNetworkAcl_OnlyIngressRules_basic
--- PASS: TestAccAWSNetworkAcl_OnlyIngressRules_basic (65.29s)
=== RUN   TestAccAWSNetworkAcl_OnlyIngressRules_update
--- PASS: TestAccAWSNetworkAcl_OnlyIngressRules_update (103.19s)
=== RUN   TestAccAWSNetworkAcl_OnlyEgressRules
--- PASS: TestAccAWSNetworkAcl_OnlyEgressRules (59.65s)
=== RUN   TestAccAWSNetworkAcl_SubnetChange
--- PASS: TestAccAWSNetworkAcl_SubnetChange (93.90s)
=== RUN   TestAccAWSNetworkAcl_Subnets
--- PASS: TestAccAWSNetworkAcl_Subnets (103.51s)
=== RUN   TestAccAWSNetworkAcl_ipv6Rules
--- PASS: TestAccAWSNetworkAcl_ipv6Rules (56.67s)
=== RUN   TestAccAWSNetworkAcl_espProtocol
--- PASS: TestAccAWSNetworkAcl_espProtocol (51.40s)
PASS
ok  	github.com/hashicorp/terraform/builtin/providers/aws	637.283s
```
2017-03-14 12:39:39 +02:00
Paul Stack 1cd566e73c provider/aws: Add support for IPv6 to aws_default_route_table (#12642)
```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSDefaultRouteTable_'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/03/13 10:57:45 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSDefaultRouteTable_ -timeout 120m
=== RUN   TestAccAWSDefaultRouteTable_basic
--- PASS: TestAccAWSDefaultRouteTable_basic (88.23s)
=== RUN   TestAccAWSDefaultRouteTable_swap
--- PASS: TestAccAWSDefaultRouteTable_swap (136.60s)
=== RUN   TestAccAWSDefaultRouteTable_vpc_endpoint
--- PASS: TestAccAWSDefaultRouteTable_vpc_endpoint (84.88s)
PASS
ok  	github.com/hashicorp/terraform/builtin/providers/aws	309.723s
```
2017-03-14 12:39:08 +02:00
Paul Stack 3a35fb6123 provider/aws: Add support for IPv6 to aws_network_acl_rule (#12644)
```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSNetworkAclRule_'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/03/13 14:39:43 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSNetworkAclRule_ -timeout 120m
=== RUN   TestAccAWSNetworkAclRule_basic
--- PASS: TestAccAWSNetworkAclRule_basic (70.58s)
=== RUN   TestAccAWSNetworkAclRule_ipv6
--- PASS: TestAccAWSNetworkAclRule_ipv6 (81.93s)
PASS
ok  	github.com/hashicorp/terraform/builtin/providers/aws	152.535s
```
2017-03-14 12:38:43 +02:00
Paul Stack 7311ba22ea provider/aws: Add IPv6 Support to aws_route_table (#12640)
```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSRouteTable_'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/03/13 10:11:09 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSRouteTable_ -timeout 120m
=== RUN   TestAccAWSRouteTable_importBasic
--- PASS: TestAccAWSRouteTable_importBasic (63.14s)
=== RUN   TestAccAWSRouteTable_complex
--- PASS: TestAccAWSRouteTable_complex (241.57s)
=== RUN   TestAccAWSRouteTable_basic
--- PASS: TestAccAWSRouteTable_basic (91.26s)
=== RUN   TestAccAWSRouteTable_instance
--- PASS: TestAccAWSRouteTable_instance (158.18s)
=== RUN   TestAccAWSRouteTable_ipv6
--- PASS: TestAccAWSRouteTable_ipv6 (48.99s)
=== RUN   TestAccAWSRouteTable_tags
--- PASS: TestAccAWSRouteTable_tags (71.68s)
=== RUN   TestAccAWSRouteTable_vpcPeering
--- PASS: TestAccAWSRouteTable_vpcPeering (58.33s)
=== RUN   TestAccAWSRouteTable_vgwRoutePropagation
--- PASS: TestAccAWSRouteTable_vgwRoutePropagation (59.64s)
PASS
ok	github.com/hashicorp/terraform/builtin/providers/aws	780.400s
```
2017-03-14 12:38:25 +02:00
Paul Stack d87cc0721f provider/aws: Add support for IPv6 to aws_security_group_rule (#12645)
```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSSecurityGroupRule_'         ✹ ✭
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/03/13 15:40:39 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSSecurityGroupRule_ -timeout 120m
=== RUN   TestAccAWSSecurityGroupRule_Ingress_VPC
--- PASS: TestAccAWSSecurityGroupRule_Ingress_VPC (53.36s)
=== RUN   TestAccAWSSecurityGroupRule_Ingress_Protocol
--- PASS: TestAccAWSSecurityGroupRule_Ingress_Protocol (85.22s)
=== RUN   TestAccAWSSecurityGroupRule_Ingress_Ipv6
--- PASS: TestAccAWSSecurityGroupRule_Ingress_Ipv6 (87.55s)
=== RUN   TestAccAWSSecurityGroupRule_Ingress_Classic
--- PASS: TestAccAWSSecurityGroupRule_Ingress_Classic (50.58s)
=== RUN   TestAccAWSSecurityGroupRule_MultiIngress
--- PASS: TestAccAWSSecurityGroupRule_MultiIngress (47.98s)
=== RUN   TestAccAWSSecurityGroupRule_Egress
--- PASS: TestAccAWSSecurityGroupRule_Egress (50.48s)
=== RUN   TestAccAWSSecurityGroupRule_SelfReference
--- PASS: TestAccAWSSecurityGroupRule_SelfReference (82.45s)
=== RUN   TestAccAWSSecurityGroupRule_ExpectInvalidTypeError
--- PASS: TestAccAWSSecurityGroupRule_ExpectInvalidTypeError (0.01s)
=== RUN   TestAccAWSSecurityGroupRule_PartialMatching_basic
--- PASS: TestAccAWSSecurityGroupRule_PartialMatching_basic (95.55s)
=== RUN   TestAccAWSSecurityGroupRule_PartialMatching_Source
--- PASS: TestAccAWSSecurityGroupRule_PartialMatching_Source (95.65s)
=== RUN   TestAccAWSSecurityGroupRule_Issue5310
--- PASS: TestAccAWSSecurityGroupRule_Issue5310 (45.91s)
=== RUN   TestAccAWSSecurityGroupRule_Race
--- PASS: TestAccAWSSecurityGroupRule_Race (697.79s)
=== RUN   TestAccAWSSecurityGroupRule_SelfSource
--- PASS: TestAccAWSSecurityGroupRule_SelfSource (96.19s)
=== RUN   TestAccAWSSecurityGroupRule_PrefixListEgress
--- PASS: TestAccAWSSecurityGroupRule_PrefixListEgress (97.51s)
PASS
ok  	github.com/hashicorp/terraform/builtin/providers/aws	1586.248s
```
2017-03-14 12:37:59 +02:00
Paddy 014983dc42 Merge pull request #12223 from hashicorp/paddy_10984_better_image_resolution
provider/google: upgrade our image resolution logic
2017-03-13 23:45:12 -07:00
Paddy 47e5547ce7 Fix variable indents.
Tabs vs spaces is the worst. I really need a way to run terraform fmt on
these inline configs.
2017-03-13 23:23:32 -07:00
Paddy 6ca92fbbc1 Refactored into helpers.
Refactored some helpers out that help with retrieving the policies from
state and comparing them, hopefully leading to less code duplication.
2017-03-13 23:20:27 -07:00
Paddy 72bfc435ad Update typo.
We never updated the error to use the expectation, not hardcode it to 2.
2017-03-13 22:04:08 -07:00
Paddy 17a92b65c2 provider/google: remove deprecated account_file field.
Remove the shims for the long-deprecated account_file field in the
Google provider.
2017-03-13 21:58:39 -07:00
Paddy 3b71036877 provider/google: remove the backend region field
Remove the field region on compute_backend_service as it has been
deprecated a while now and was never used to begin with.
2017-03-13 17:25:32 -07:00
Paddy 023ede0c26 provider/google: fix single port diff cycle
When specifying a single port in port_range, the API would accept it as
input, but would return it as {PORT}-{PORT}. Terraform would then see
this as different, even though (semantically) it's the same.

This commit adds a test that exposes the diff cycle created by this, and
an inline DiffSuppressFunc to resolve it.

Fixes #9051.
2017-03-13 17:03:20 -07:00
Paddy 4c41729f98 Update with @danawillow's feedback.
* Make our regexes more permissive (though still separated out for
  readability, despite being identical)
* Add a helper that will improve readability while sanity testing our
  regex results.
2017-03-13 16:39:42 -07:00
Paddy 630b245770 provider/google: Remove deprecated project fields.
Remove the deprecated fields from google_project, and drop all the logic
that went into supporting them. Tests still pass after one minor change.
2017-03-13 16:19:53 -07:00
Radek Simko eb08f40199
kubernetes: Add GKE config as test infrastructure 2017-03-13 21:19:18 +00:00
Radek Simko f1db0fcf9b
kubernetes: Add provider + namespace resource 2017-03-13 21:19:17 +00:00
Jeremy Livingston 070b2b9d59 Add Fastly SSL validation fields (#12578)
* Add Fastly SSL validation fields

The ssl_hostname field has been deprecated by Fastly. Instead the new
standard is to use the ssl_cert_hostname and ssl_sni_hostname fields:

- ssl_cert_hostname: Used only for certificate verification.
- ssl_sni_hostname: Used only for SNI in the handshake.

Add these fields to the backend block to better support SSL services.

* Add deprecation notice for ssl_hostname
2017-03-13 20:49:39 +02:00
clint shryock 5ddf73146f provider/aws: Update lambda role name to avoid collision 2017-03-13 13:42:15 -05:00
Paddy 1a55aecc79 Merge pull request #12486 from hashicorp/paddy_4336_instance_manager_api_bug
provider/google: fix container instance group URLs
2017-03-13 11:15:17 -07:00
Gauthier Wallet cdc3fa8337 provider/aws: Added conflictsWith for API GW Domain Name certificate_arn (#12649) 2017-03-13 19:50:44 +02:00
Paul Stack 41c27082bb provider/aws: Add support for ACM certificates to (#12592)
api_gateway_domain_name

Fixes: #12566

```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSAPIGatewayDomainName_'         ✹
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/03/10 19:32:31 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSAPIGatewayDomainName_ -timeout 120m
=== RUN   TestAccAWSAPIGatewayDomainName_basic
--- PASS: TestAccAWSAPIGatewayDomainName_basic (54.06s)
PASS
ok  	github.com/hashicorp/terraform/builtin/providers/aws	54.091s
```
2017-03-13 11:43:28 +02:00
Radek Simko 61eb190b4e Merge pull request #12633 from radeksimko/b-aws-opsworks-test-fix
aws: Fix opsworks app acc test w/ missing value
2017-03-13 09:11:04 +00:00
Harry Hull f28c811534 Fixes #11258 (#12595)
If the user_arn changes on the user_profile resource we should delete it and recreate it
instead of attempting to modify it incorrectly and causing the terraform apply to fail.

I also added an acceptance test that will trigger this case.
2017-03-13 09:05:22 +00:00
Lucas Vasconcelos Santana 1a957a0481 provider/aws: Add address, port, hosted_zone_id and endpoint for aws_db_instance datasource (#12623)
* Add address, port, hosted_zone_id and endpoint information to datasource aws_db_instance

* Update the docs
2017-03-13 10:31:24 +02:00
Paul Stack bcda5176ea provider/aws: Refresh iam saml provider from state on 404 (#12602)
Fixes: #12599

Before this patch:

```
% terraform plan
Refreshing Terraform state in-memory prior to plan...
The refreshed state will be used to calculate this plan, but will not be
persisted to local or remote state storage.

aws_iam_saml_provider.salesforce: Refreshing state... (ID: arn:aws:i...rce-test)
Error refreshing state: 1 error(s) occurred:

* aws_iam_saml_provider.salesforce: aws_iam_saml_provider.salesforce: NoSuchEntity: Manifest not found for arn arn:aws:iam::187416307283:saml-provider/tf-salesforce-test
	status code: 404, request id: fc32c7f8-0631-11e7-8e1f-29a8c10edf64
```

After this patch:

```
% terraform plan                                                                                  ✚ ✭
[WARN] /Users/stacko/Code/go/bin/terraform-provider-aws overrides an internal plugin for aws-provider.
  If you did not expect to see this message you will need to remove the old plugin.
  See https://www.terraform.io/docs/internals/internal-plugins.html
Refreshing Terraform state in-memory prior to plan...
The refreshed state will be used to calculate this plan, but will not be
persisted to local or remote state storage.

aws_iam_saml_provider.salesforce: Refreshing state... (ID: arn:aws:i...rce-test)
The Terraform execution plan has been generated and is shown below.
Resources are shown in alphabetical order for quick scanning. Green resources
will be created (or destroyed and then created if an existing resource
exists), yellow resources are being changed in-place, and red resources
will be destroyed. Cyan entries are data sources to be read.

Note: You didn't specify an "-out" parameter to save this plan, so when
"apply" is called, Terraform can't guarantee this is what will execute.

+ aws_iam_saml_provider.salesforce
    arn:                    "<computed>"
    name:                   "tf-salesforce-test"
```
2017-03-13 10:18:29 +02:00
Paul Stack e973176bb9 provider/dnsimple: Don't prompt the user for email address (#12619)
As part of the new changes to the DNSimple provider, we changed to use
the new API version. This requires a token and *not* email address

In order for backwards compatibility - we kept the email address in the
schema but we had the default as nil, meaning that Terraform was
prompting the user for it, they would enter it, then Terraform would
error out due to using a combination of token and email address

This commit makes the default email address an empty String. This means
we don't prompt the user
2017-03-13 10:07:53 +02:00
Radek Simko 6293d7a4fc
aws: Randomize opsworks application names in test 2017-03-13 08:05:48 +00:00
Radek Simko a67bddef98
aws: Fix opsworks app acc test w/ missing value 2017-03-13 08:05:03 +00:00
Joe Topjian aa4676e622 provider/openstack: Add network_id to Network data source (#12615)
This commit adds the ability to search for a network by its ID. This
is useful for doing ID-to-name translations.
2017-03-12 18:39:25 +02:00
Robert Rudduck e0bdc5f8f7 provider/azurerm: Add support for extensions on virtual machine scale sets (#12124)
* Add support for vmss extensions.

* Update website.

* Add multi extension test.

* Return error from settings parsing.

* Update extension hash.
2017-03-12 16:13:38 +02:00
Andy Lindeman 85f759f296 Updates google/go-github to the latest revision (#12604)
* Updates to the latest go-github

* `github_repository_collaborator` uses invitations API
2017-03-12 16:05:18 +02:00
Benjamin Lau 6adc71a6d4 provider/aws: output the task definition name when errors occur during refresh (#12609) 2017-03-12 16:03:36 +02:00
Joe Topjian 20c88bcdf4 provider/openstack: Change Port fixed_ip to a Set (#12613)
This commit changes the openstack_networking_port_v2 fixed_ip
parameter from a List to a Set. This is because OpenStack does not
preserve the original ordering of the fixed IPs.
2017-03-12 16:00:47 +02:00
Joe Topjian f4e74650f0 provider/openstack: Set Availability Zone in Instances (#12610)
* provider/openstack: Set Availability Zone in Instances

This commit configures the openstack_compute_instance_v2 resource
to set the Availability Zone of the instance resource.

* vendor: Updating Gophercloud for OpenStack
2017-03-12 15:59:50 +02:00
Sean Chittenden cbfb29cd8f Fix circonus)_rule_sets for optional links. (#12614)
* Add a `validateHTTPURL` flag to allow URLs in `circonus_rule_set`s to be optional.

* Fix reading `circonus_rule_set` `criteria`.
2017-03-11 18:59:18 -08:00
Brandon Tosch 58325b9d59 Merge pull request #1 from edevil/patch-1
Corrected variable reference
2017-03-10 15:15:00 -08:00
Brandon Tosch 34c0dd7ead fixed typo in vm_size 2017-03-10 14:58:08 -08:00
Clint 1daac2f5c7 provider/aws: Update spot instance request to store new ipv6 (#12571) 2017-03-10 14:49:28 -06:00
Sean Chittenden 17fb98afa2 Circonus Provider (#12338)
* Begin stubbing out the Circonus provider.

* Remove all references to `reverse:secret_key`.

This value is dynamically set by the service and unused by Terraform.

* Update the `circonus_check` resource.

Still a WIP.

* Add docs for the `circonus_check` resource.

Commit miss, this should have been included in the last commit.

* "Fix" serializing check tags

I still need to figure out how I can make them order agnostic w/o using
a TypeSet.  I'm worried that's what I'm going to have to do.

* Spike a quick circonus_broker data source.

* Convert tags to a Set so the order does not matter.

* Add a `circonus_account` data source.

* Correctly spell account.

Pointed out by: @postwait

* Add the `circonus_contact_group` resource.

* Push descriptions into their own file in order to reduce the busyness of the schema when reviewing code.

* Rename `circonus_broker` and `broker` to `circonus_collector` and `collector`, respectively.

Change made with concent by Circonus to reduce confusion (@postwait, @maier, and several others).

* Use upstream contsants where available.

* Import the latest circonus-gometrics.

* Move to using a Set of collectors vs a list attached to a single attribute.

* Rename "cid" to "id" in the circonus_account data source and elsewhere
where possible.

* Inject a tag automatically.  Update gometrics.

* Checkpoint `circonus_metric` resource.

* Enable provider-level auto-tagging.  This is disabled by default.

* Rearrange metric.  This is an experimental "style" of a provider.  We'll see.

That moment. When you think you've gone off the rails on a mad scientist
experiment but like the outcome and think you may be onto something but
haven't proven it to yourself or anyone else yet?  That.  That exact
feeling of semi-confidence while being alone in the wilderness.  Please
let this not be the Terraform provider equivalent of DJB's C style of
coding.

We'll know in another resource or two if this was a horrible mistake or
not.

* Begin moving `resource_circonus_check` over to the new world order/structure:

Much of this is WIP and incomplete, but here is the new supported
structure:

```
variable "used_metric_name" {
  default = "_usage`0`_used"
}

resource "circonus_check" "usage" {
  # collectors = ["${var.collectors}"]
  collector {
    id = "${var.collectors[0]}"
  }

  name       = "${var.check_name}"
  notes      = "${var.notes}"

  json {
    url = "https://${var.target}/account/current"

    http_headers = {
      "Accept"                = "application/json"
      "X-Circonus-App-Name"   = "TerraformCheck"
      "X-Circonus-Auth-Token" = "${var.api_token}"
    }
  }

  stream {
    name = "${circonus_metric.used.name}"
    tags = "${circonus_metric.used.tags}"
    type = "${circonus_metric.used.type}"
  }

  tags = {
    source = "circonus"
  }
}

resource "circonus_metric" "used" {
  name = "${var.used_metric_name}"

  tags = {
    source = "circonus"
  }

  type = "numeric"
}
```

* Document the `circonus_metric` resource.

* Updated `circonus_check` docs.

* If a port was present, automatically set it in the Config.

* Alpha sort the check parameters now that they've been renamed.

* Fix a handful of panics as a result of the schema changing.

* Move back to a `TypeSet` for tags.  After a stint with `TypeMap`, move
back to `TypeSet`.

A set of strings seems to match the API the best.  The `map` type was
convenient because it reduced the amount of boilerplate, but you loose
out on other things.  For instance, tags come in the form of
`category:value`, so naturally it seems like you could use a map, but
you can't without severe loss of functionality because assigning two
values to the same category is common.  And you can't normalize map
input or suppress the output correctly (this was eventually what broke
the camel's back).  I tried an experiment of normalizing the input to be
`category:value` as the key in the map and a value of `""`, but... seee
diff suppress.  In this case, simple is good.

While here bring some cleanups to _Metric since that was my initial
testing target.

* Rename `providerConfig` to `_ProviderConfig`

* Checkpoint the `json` check type.

* Fix a few residual issues re: missing descriptions.

* Rename `validateRegexp` to `_ValidateRegexp`

* Use tags as real sets, not just a slice of strings.

* Move the DiffSuppressFunc for tags down to the Elem.

* Fix up unit tests to chase the updated, default hasher function being used.

* Remove `Computed` attribute from `TypeSet` objects.

This fixes a pile of issues re: update that I was having.

* Rename functions.

`GetStringOk` -> `GetStringOK`
`GetSetAsListOk` -> `GetSetAsListOK`
`GetIntOk` -> `GetIntOK`

* Various small cleanups and comments rolled into a single commit.

* Add a `postgresql` check type for the `circonus_check` resource.

* Rename various validator functions to be _CapitalCase vs capitalCase.

* Err... finish the validator renames.

* Add `GetFloat64()` support.

* Add `icmp_ping` check type support.

* Catch up to the _API*Attr renames.

Deliberately left out of the previous commit in order to create a clean
example of what is required to add a new check type to the
`circonus_check` resource.

* Clarify when the `target` attribute is required for the `postgresql`
check type.

* Correctly pull the metric ID attribute from the right location.

* Add a circonus_stream_group resource (a.k.a. a Circonus "metric cluster")

* Add support for the [`caql`](https://login.circonus.com/user/docs/caql_reference) check type.

* Add support for the `http` check type.

* `s/SSL/TLS/g`

* Add support for `tcp` check types.

* Enumerate the available metrics that are supported for each check type.

* Add [`cloudwatch`](https://login.circonus.com/user/docs/Data/CheckTypes/CloudWatch) check type support.

* Add a `circonus_trigger` resource (a.k.a Circonus Ruleset).

* Rename a handful of functions to make it clear in the function name the
direction of flow for information moving through the provider.

TL;DR: Replace `parse` and `read` with "foo to bar"-like names.

* Fix the attribute name used in a validator.  Absent != After.

* Set the minimum `absent` predicate to 70s per testing.

* Fix the regression tests for circonus_trigger now that absent has a 70s min

* Fix up the `tcp` check to require a `host` attribute.

Fix tests.  It's clear I didn't run these before committing/pushing the
`tcp` check last time.

* Fix `circonus_check` for `cloudwatch` checks.

* Rename `parsePerCheckTypeConfig()` to `_CheckConfigToAPI` to be
consistent with other function names.

grep(1)ability of code++

* Slack buttons as an integer are string encoded.

* Fix updates for `circonus_contact`.

* Fix the out parameters for contact groups.

* Move to using `_CastSchemaToTF()` where appropriate.

* Fix circonus_contact_group.  Updates work as expected now.

* Use `_StateSet()` in place of `d.Set()` everywhere.

* Make a quick pass over the collector datasource to modernize its style

* Quick pass for items identified by `golint`.

* Fix up collectors

* Fix the `json` check type.

Reconcile possible sources of drift.  Update now works as expected.

* Normalize trigger durations to seconds.

* Improve the robustness of the state handling for the `circonus_contact_group` resource.

* I'm torn on this, but sort the contact groups in the notify list.

This does mean that if the first contact group in the list has a higher
lexical sort order the plan won't converge until the offending resource
is tainted and recreated.  But there's also some sorting happening
elsewhere, so.... sort and taint for now and this will need to be
revisited in the future.

* Add support for the `httptrap` check type.

* Remove empty units from the state file.

* Metric clusters can return a 404.  Detect this accordingly in its
respective Exists handler.

* Add a `circonus_graph` resource.

* Fix a handful of bugs in the graph provider.

* Re-enable the necessary `ConflictsWith` definitions and normalize attribute names.

* Objects that have been deleted via the UI return a 404. Handle in Exists().

* Teach `circonus_graph`'s Stack set to accept nil values.

* Set `ForceNew: true` for a graph's name.

* Chase various API fixes required to make `circonus_graph` work as expected.

* Fix up the handling of sub-1 zoom resolutions for graphs.

* Add the `check_by_collector` out parameter to the `circonus_check` resource.

* Improve validation of line vs area graphs.  Fix graph_style.

* Fix up the `logarithmic` graph axis option.

* Resolve various trivial `go vet` issues.

* Add a stream_group out parameter.

* Remove incorrectly applied `Optional` attributes to the `circonus_account` resource.

* Remove various `Optional` attributes from the `circonus_collector` data source.

* Centralize the common need to suppress leading and trailing whitespace into `suppressWhitespace`.

* Sync up with upstream vendor fixes for circonus_graph.

* Update the checksum value for the http check.

* Chase `circonus_graph`'s underlying `line_style` API object change from `string` to `*string`.

* Clean up tests to use a generic terraform regression testing account.

* Add support for the MySQL to the `circonus_check` resource.

* Begin stubbing out the Circonus provider.

* Remove all references to `reverse:secret_key`.

This value is dynamically set by the service and unused by Terraform.

* Update the `circonus_check` resource.

Still a WIP.

* Add docs for the `circonus_check` resource.

Commit miss, this should have been included in the last commit.

* "Fix" serializing check tags

I still need to figure out how I can make them order agnostic w/o using
a TypeSet.  I'm worried that's what I'm going to have to do.

* Spike a quick circonus_broker data source.

* Convert tags to a Set so the order does not matter.

* Add a `circonus_account` data source.

* Correctly spell account.

Pointed out by: @postwait

* Add the `circonus_contact_group` resource.

* Push descriptions into their own file in order to reduce the busyness of the schema when reviewing code.

* Rename `circonus_broker` and `broker` to `circonus_collector` and `collector`, respectively.

Change made with concent by Circonus to reduce confusion (@postwait, @maier, and several others).

* Use upstream contsants where available.

* Import the latest circonus-gometrics.

* Move to using a Set of collectors vs a list attached to a single attribute.

* Rename "cid" to "id" in the circonus_account data source and elsewhere
where possible.

* Inject a tag automatically.  Update gometrics.

* Checkpoint `circonus_metric` resource.

* Enable provider-level auto-tagging.  This is disabled by default.

* Rearrange metric.  This is an experimental "style" of a provider.  We'll see.

That moment. When you think you've gone off the rails on a mad scientist
experiment but like the outcome and think you may be onto something but
haven't proven it to yourself or anyone else yet?  That.  That exact
feeling of semi-confidence while being alone in the wilderness.  Please
let this not be the Terraform provider equivalent of DJB's C style of
coding.

We'll know in another resource or two if this was a horrible mistake or
not.

* Begin moving `resource_circonus_check` over to the new world order/structure:

Much of this is WIP and incomplete, but here is the new supported
structure:

```
variable "used_metric_name" {
  default = "_usage`0`_used"
}

resource "circonus_check" "usage" {
  # collectors = ["${var.collectors}"]
  collector {
    id = "${var.collectors[0]}"
  }

  name       = "${var.check_name}"
  notes      = "${var.notes}"

  json {
    url = "https://${var.target}/account/current"

    http_headers = {
      "Accept"                = "application/json"
      "X-Circonus-App-Name"   = "TerraformCheck"
      "X-Circonus-Auth-Token" = "${var.api_token}"
    }
  }

  stream {
    name = "${circonus_metric.used.name}"
    tags = "${circonus_metric.used.tags}"
    type = "${circonus_metric.used.type}"
  }

  tags = {
    source = "circonus"
  }
}

resource "circonus_metric" "used" {
  name = "${var.used_metric_name}"

  tags = {
    source = "circonus"
  }

  type = "numeric"
}
```

* Document the `circonus_metric` resource.

* Updated `circonus_check` docs.

* If a port was present, automatically set it in the Config.

* Alpha sort the check parameters now that they've been renamed.

* Fix a handful of panics as a result of the schema changing.

* Move back to a `TypeSet` for tags.  After a stint with `TypeMap`, move
back to `TypeSet`.

A set of strings seems to match the API the best.  The `map` type was
convenient because it reduced the amount of boilerplate, but you loose
out on other things.  For instance, tags come in the form of
`category:value`, so naturally it seems like you could use a map, but
you can't without severe loss of functionality because assigning two
values to the same category is common.  And you can't normalize map
input or suppress the output correctly (this was eventually what broke
the camel's back).  I tried an experiment of normalizing the input to be
`category:value` as the key in the map and a value of `""`, but... seee
diff suppress.  In this case, simple is good.

While here bring some cleanups to _Metric since that was my initial
testing target.

* Rename `providerConfig` to `_ProviderConfig`

* Checkpoint the `json` check type.

* Fix a few residual issues re: missing descriptions.

* Rename `validateRegexp` to `_ValidateRegexp`

* Use tags as real sets, not just a slice of strings.

* Move the DiffSuppressFunc for tags down to the Elem.

* Fix up unit tests to chase the updated, default hasher function being used.

* Remove `Computed` attribute from `TypeSet` objects.

This fixes a pile of issues re: update that I was having.

* Rename functions.

`GetStringOk` -> `GetStringOK`
`GetSetAsListOk` -> `GetSetAsListOK`
`GetIntOk` -> `GetIntOK`

* Various small cleanups and comments rolled into a single commit.

* Add a `postgresql` check type for the `circonus_check` resource.

* Rename various validator functions to be _CapitalCase vs capitalCase.

* Err... finish the validator renames.

* Add `GetFloat64()` support.

* Add `icmp_ping` check type support.

* Catch up to the _API*Attr renames.

Deliberately left out of the previous commit in order to create a clean
example of what is required to add a new check type to the
`circonus_check` resource.

* Clarify when the `target` attribute is required for the `postgresql`
check type.

* Correctly pull the metric ID attribute from the right location.

* Add a circonus_stream_group resource (a.k.a. a Circonus "metric cluster")

* Add support for the [`caql`](https://login.circonus.com/user/docs/caql_reference) check type.

* Add support for the `http` check type.

* `s/SSL/TLS/g`

* Add support for `tcp` check types.

* Enumerate the available metrics that are supported for each check type.

* Add [`cloudwatch`](https://login.circonus.com/user/docs/Data/CheckTypes/CloudWatch) check type support.

* Add a `circonus_trigger` resource (a.k.a Circonus Ruleset).

* Rename a handful of functions to make it clear in the function name the
direction of flow for information moving through the provider.

TL;DR: Replace `parse` and `read` with "foo to bar"-like names.

* Fix the attribute name used in a validator.  Absent != After.

* Set the minimum `absent` predicate to 70s per testing.

* Fix the regression tests for circonus_trigger now that absent has a 70s min

* Fix up the `tcp` check to require a `host` attribute.

Fix tests.  It's clear I didn't run these before committing/pushing the
`tcp` check last time.

* Fix `circonus_check` for `cloudwatch` checks.

* Rename `parsePerCheckTypeConfig()` to `_CheckConfigToAPI` to be
consistent with other function names.

grep(1)ability of code++

* Slack buttons as an integer are string encoded.

* Fix updates for `circonus_contact`.

* Fix the out parameters for contact groups.

* Move to using `_CastSchemaToTF()` where appropriate.

* Fix circonus_contact_group.  Updates work as expected now.

* Use `_StateSet()` in place of `d.Set()` everywhere.

* Make a quick pass over the collector datasource to modernize its style

* Quick pass for items identified by `golint`.

* Fix up collectors

* Fix the `json` check type.

Reconcile possible sources of drift.  Update now works as expected.

* Normalize trigger durations to seconds.

* Improve the robustness of the state handling for the `circonus_contact_group` resource.

* I'm torn on this, but sort the contact groups in the notify list.

This does mean that if the first contact group in the list has a higher
lexical sort order the plan won't converge until the offending resource
is tainted and recreated.  But there's also some sorting happening
elsewhere, so.... sort and taint for now and this will need to be
revisited in the future.

* Add support for the `httptrap` check type.

* Remove empty units from the state file.

* Metric clusters can return a 404.  Detect this accordingly in its
respective Exists handler.

* Add a `circonus_graph` resource.

* Fix a handful of bugs in the graph provider.

* Re-enable the necessary `ConflictsWith` definitions and normalize attribute names.

* Objects that have been deleted via the UI return a 404. Handle in Exists().

* Teach `circonus_graph`'s Stack set to accept nil values.

* Set `ForceNew: true` for a graph's name.

* Chase various API fixes required to make `circonus_graph` work as expected.

* Fix up the handling of sub-1 zoom resolutions for graphs.

* Add the `check_by_collector` out parameter to the `circonus_check` resource.

* Improve validation of line vs area graphs.  Fix graph_style.

* Fix up the `logarithmic` graph axis option.

* Resolve various trivial `go vet` issues.

* Add a stream_group out parameter.

* Remove incorrectly applied `Optional` attributes to the `circonus_account` resource.

* Remove various `Optional` attributes from the `circonus_collector` data source.

* Centralize the common need to suppress leading and trailing whitespace into `suppressWhitespace`.

* Sync up with upstream vendor fixes for circonus_graph.

* Update the checksum value for the http check.

* Chase `circonus_graph`'s underlying `line_style` API object change from `string` to `*string`.

* Clean up tests to use a generic terraform regression testing account.

* Rename all identifiers that began with a `_` and replace with a corresponding lowercase glyph.

* Remove stale comment in types.

* Move the calls to `ResourceData`'s `SetId()` calls to be first in the
list so that no resources are lost in the event of a `panic()`.

* Remove `stateSet` from the `circonus_trigger` resource.

* Remove `stateSet` from the `circonus_stream_group` resource.

* Remove `schemaSet` from the `circonus_graph` resource.

* Remove `stateSet` from the `circonus_contact` resource.

* Remove `stateSet` from the `circonus_metric` resource.

* Remove `stateSet` from the `circonus_account` data source.

* Remove `stateSet` from the `circonus_collector` data source.

* Remove stray `stateSet` call from the `circonus_contact` resource.

This is an odd artifact to find... I'm completely unsure as to why it
was there to begin with but am mostly certain it's a bug and needs to be
removed.

* Remove `stateSet` from the `circonus_check` resource.

* Remove the `stateSet` helper function.

All call sites have been converted to return errors vs `panic()`'ing at
runtime.

* Remove a pile of unused functions and type definitions.

* Remove the last of the `attrReader` interface.

* Remove an unused `Sprintf` call.

* Update `circonus-gometrics` and remove unused files.

* Document what `convertToHelperSchema()` does.

Rename `castSchemaToTF` to `convertToHelperSchema`.

Change the function parameter ordering so the `map` of attribute
descriptions: this is much easier to maintain when the description map
is first when creating schema inline.

* Move descriptions into their respective source files.

* Remove all instances of `panic()`.

In the case of software bugs, log an error.  Never `panic()` and always
return a value.

* Rename `stream_group` to `metric_cluster`.

* Rename triggers to rule sets

* Rename `stream` to `metric`.

* Chase the `stream` -> `metric` change into the docs.

* Remove some unused test functions.

* Add the now required `color` attribute for graphing a `metric_cluster`.

* Add a missing description to silence a warning.

* Add `id` as a selector for the account data source.

* Futureproof testing: Randomize all asset names to prevent any possible resource conflicts.

This isn't a necessary change for our current build and regression
testing, but *just in case* we have a radical change to our testing
framework in the future, make all resource names fully random.

* Rename various values to match the Circonus docs.

* s/alarm/alert/g

* Ensure ruleset criteria can not be empty.
2017-03-10 14:19:17 -06:00
clint shryock 4a34fb1d34 fix go vet issue 2017-03-10 11:25:58 -06:00
clint shryock 87c91f5bc8 provider/aws: annoymize tags in VPC data source test 2017-03-10 10:48:35 -06:00
André Cruz 91db3e175d Corrected variable reference
This is a pointer.
2017-03-10 14:35:27 +00:00
Andy Lindeman fa18174713 Updates heroku-go to the latest revision (#12575) 2017-03-10 14:00:03 +02:00
Brandon Tosch a2716f76db Lowered data disk size to decrease provisioning time and cost 2017-03-09 19:33:09 -08:00