Commit Graph

7481 Commits

Author SHA1 Message Date
Paul Stack 8b7f17c039 provider/aws: Change of aws_subnet ipv6 causing update failure (#14545)
Fixes: #14530

When we found an update of IPv6 cidr block, we first tried to
disassociate the old cidr block association. This caused errors if there
was none, it threw an error, as we passed an empty associationId:

```
* aws_subnet.public_subnet.0: InvalidSubnetCidrBlockAssociationId.Malformed: The subnet CIDR block with association ID  is malformed
    status code: 400, request id: f438f468-9ca4-4000-ba78-63a0f25d390a
* aws_subnet.public_subnet[1]: 1 error(s) occurred:
```

```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSSubnet_'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/05/16 18:28:45 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSSubnet_ -timeout 120m
=== RUN   TestAccAWSSubnet_importBasic
--- PASS: TestAccAWSSubnet_importBasic (55.40s)
=== RUN   TestAccAWSSubnet_basic
--- PASS: TestAccAWSSubnet_basic (53.62s)
=== RUN   TestAccAWSSubnet_ipv6
--- PASS: TestAccAWSSubnet_ipv6 (125.87s)
=== RUN   TestAccAWSSubnet_enableIpv6
--- PASS: TestAccAWSSubnet_enableIpv6 (88.88s)
PASS
ok  	github.com/hashicorp/terraform/builtin/providers/aws	323.787s
```
2017-05-16 23:06:28 +03:00
Paul Stack 055c18e302 core/provider-split: Split out the Oracle OPC provider to new structure (#14362)
* core/providersplit: Split OPC Provider to separate repo

As we march towards Terraform 0.10.0, we are going to start building the
terraform providers as separate binaries - this will allow us to
continually release them. Before we go to 0.10.0, we need to be able to
continue building providers in the same manner, therefore, we have
hardcoded the path of the provider in the generate-plugins.go file

The interim solution will require us to vendor the opc provider and any
child dependencies, but when we get to 0.10.0, we will no longer have to
do this - the core will auto download the plugin binary. The plugin
package will have it's own dependencies vendored as well.

* core/providersplit: Removing the builtin version of OPC provider

* core/providersplit: Vendoring the OPC plugin

* core/providersplit: update internal plugin list

* core/providersplit: remove unused govendor item
2017-05-16 19:53:25 +03:00
Jake Champlin e4a50f2bae Merge pull request #14543 from hashicorp/b-opc-ip-addr-res
provider/opc: Correctly export `ip_address` in IP Addr Reservation
2017-05-16 10:43:13 -04:00
Paul Stack f351de9758 provider/aws: Set aws_subnet ipv6_cidr_block to computed (#14542)
Fixes: #14361

An IPv6 CIDR block is option and can be added *after* a subnet has been
created. Therefore, we should set it to `Computed: true`

Otherwise, a manually created IPv6 association will be removed on the
next terraform run
2017-05-16 17:34:16 +03:00
yanndegat 21d8125d5c provider/ovh: new provider (#12669)
* vendor: add go-ovh

* provider/ovh: new provider

* provider/ovh: Adding PublicCloud User Resource

* provider/ovh: Adding VRack Attachment Resource

* provider/ovh: Adding PublicCloud Network Resource

* provider/ovh: Adding PublicCloud Subnet Resource

* provider/ovh: Adding PublicCloud Regions Datasource

* provider/ovh: Adding PublicCloud Region Datasource

* provider/ovh: Fix Acctests using project's regions
2017-05-16 17:26:43 +03:00
Jake Champlin bc1a6b0261
provider/opc: Correctly export `ip_address` in IP Addr Reservation
Correctly sets the attribute `ip_address` in the `opc_compute_ip_address_reservation` resource.
Also updates documentation for the `ip_address_pool` attribute.

```
$ make testacc TEST=./builtin/providers/opc TESTARGS="-run=TestAccOPCIPAddressReservation_Basic"
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/05/16 10:15:53 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/opc -v -run=TestAccOPCIPAddressReservation_Basic -timeout 120m
=== RUN   TestAccOPCIPAddressReservation_Basic
--- PASS: TestAccOPCIPAddressReservation_Basic (22.60s)
PASS
ok      github.com/hashicorp/terraform/builtin/providers/opc    22.604s
```
2017-05-16 10:19:29 -04:00
Jake Champlin b9e188c5e0 Merge pull request #14528 from ewbankkit/issue-14527
Create rule(s) for prefix-list-only AWS security group ingress/egress permissions on 'terraform import'
2017-05-16 08:38:22 -04:00
mjsteger 9c0888ca88 Fix parsing of digitalocean dns records (#14215)
This changeset fixes how some digitalocean dns records were getting
parsed. In particular, it allows for understanding "@" as shorthand for
the domain itself, preventing terraform from suggesting changes that
wouldn't have any actual effect. This changeset also adds a trailing "."
to certain record types which are required to be submitted with a
trailing dot, but which digitalocean does not return with a trailing
dot, again preventing changes that wouldn't have an effect.

Tests have been added for the above, and with just adding the tests, the
current code is failing, as it is handling some records(e.g. MX)
incorrectly
2017-05-16 12:10:34 +03:00
Raphael Randschau 2c3d54b671 provider/scaleway: allow public_ip to be set (#14515)
this allows the IP <-> server relationship to be inverted as requested by #14175.
2017-05-16 11:59:39 +03:00
Christopher Elkins e1c4194dea Propagate AWS CodePipeline action roles (#14263)
* Propagate AWS CodePipeline action roles

* Add acceptance test for AWS CodePipeline action roles

* Isolate AWS CodePipeline service role acceptance test
2017-05-16 11:55:42 +03:00
Stephen Weatherford b65df9b5ac [MS] 14058 single placement group tf (#14510)
* Add single_placement_group to VMSS

* Add test, plus fixes

* Fix tests
2017-05-16 11:46:07 +03:00
Kit Ewbank 36888278b5 Add 'aws_default_vpc_dhcp_options' resource. (#14475) 2017-05-16 11:44:23 +03:00
Kit Ewbank 534dca00b2 Add 'aws_default_subnet' resource. (#14476) 2017-05-16 11:40:56 +03:00
Sergiusz Urbaniak 399830f1b7 providers/aws: add tags for resource_aws_autoscaling_group (#13574)
The existing "tag" field on autoscaling groups is very limited in that it
cannot be used in conjunction with interpolation preventing from adding
dynamic tag entries.

Other AWS resources don't have this restriction on tags because they work
directly on the map type.

AWS autoscaling groups on the other hand have an additional field
"propagate_at_launch" which is not usable with a pure map type.

This fixes it by introducing an additional field called "tags" which
allows specifying a list of maps. This preserves the possibility to
declare tags as with the "tag" field but additionally allows to
construct lists of maps using interpolation syntax.
2017-05-16 10:39:41 +02:00
Joe Topjian 5842642643 provider/openstack: Handle Deleted Resources in Floating IP Association (#14533)
This commit modifies the openstack_compute_floatingip_associate_v2 resource
to handle cases where the floating IP or instance were deleted outside of
Terraform.
2017-05-16 11:36:50 +03:00
Radek Simko ba7f1aec1e provider/aws: Avoid IP space overlap in EIP acc test (#14519) 2017-05-16 07:06:53 +02:00
Radek Simko 30ea3aee12 provider/aws: Only catch 'terminated' if we're not terminating instance (#14517) 2017-05-16 07:04:56 +02:00
Kit Ewbank f81dfbcf8b Create rule(s) for prefix-list-only AWS security group ingress/egress permissions on 'terraform import'. 2017-05-15 19:21:28 -04:00
Riley Karson 229b926d63 provider/google: Fix the health check default values for http and https so they match the expected value in the documentation and specific health check instances. (#14441) 2017-05-15 12:59:44 -07:00
Paul Stack 0a645294a0 provider/aws: ForceNew aws_launch_config when root_block_device changes (#14507)
Fixes: #14503

Changes to root_block_device were not picked up as we had a hash func to
return 0. We changed from set -> list as we only allow 1 value and
immediately we can get changes propagating

```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSLaunchConfiguration_updateRootBlockDevice'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/05/15 19:27:39 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSLaunchConfiguration_updateRootBlockDevice -timeout 120m
=== RUN   TestAccAWSLaunchConfiguration_updateRootBlockDevice
--- PASS: TestAccAWSLaunchConfiguration_updateRootBlockDevice (51.12s)
PASS
ok  	github.com/hashicorp/terraform/builtin/providers/aws	51.140s
```
2017-05-15 20:18:40 +03:00
Paul Stack 2276e981ee provider/aws: Add new aws_db_snapshot data source (#10291)
* provider/aws: Add ability to create AWS DB Snapshots

* provider/aws: Add AWS DB Snapshot resource acceptance tests

```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSDBSnapshot_
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2016/11/22 18:24:05 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSDBSnapshot_ -timeout 120m
=== RUN   TestAccAWSDBSnapshot_basic
--- PASS: TestAccAWSDBSnapshot_basic (892.75s)
PASS
ok  	github.com/hashicorp/terraform/builtin/providers/aws	892.773s
```

* provider/aws: Add new aws_db_snapshot data source

* docs/aws: Add documentation for aws_db_snapshot resource

* provider/aws: Add datasource for aws_db_snapshot acceptance tests

```
% make testacc TEST=./builtin/providers/aws
% TESTARGS='-run=TestAccAWSDbSnapshotDataSource_'     2 ↵ ✭
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2016/11/22 18:55:08 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v
-run=TestAccAWSDbSnapshotDataSource_ -timeout 120m
=== RUN   TestAccAWSDbSnapshotDataSource_basic
--- PASS: TestAccAWSDbSnapshotDataSource_basic (966.68s)
PASS
ok      github.com/hashicorp/terraform/builtin/providers/aws966.699s
```

* docs/aws: Adding documentation for aws_db_snapshot datasource
2017-05-15 20:17:26 +03:00
emily 2ad2af0c09 Make google resource storage bucket importable (#14455) 2017-05-15 19:38:32 +03:00
clint shryock 6d0786cccb provider/aws: Improve Checkdestroy to not fail if the ami is not found (it's deleted afterall) and improve tagging 2017-05-15 10:24:43 -05:00
cmorent 589febdc26 providers/heroku: import heroku_pipeline resource (#14486) 2017-05-15 09:12:29 -05:00
Radek Simko 65af35fb25 Merge pull request #14460 from hashicorp/b-github-test-repo
provider/github: Randomize acceptance tests
2017-05-15 14:54:49 +02:00
Paul Stack d5bb844684 provider/aws: Allow Internet Gateway IPv6 routes (#14484)
Fixes: #14006
Fixes: #14464

IPv6 wasn't supported for adding routes to the internet gateway.
Resulted in a message as follows:

```
Error creating route: MissingParameter: The request must contain the parameter destinationCidrBlock or destinationIpv6CidrBlock
```

```
% 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/05/15 11:50:43 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 (67.27s)
=== RUN   TestAccAWSRoute_ipv6Support
--- PASS: TestAccAWSRoute_ipv6Support (59.35s)
=== RUN   TestAccAWSRoute_ipv6ToInternetGateway
--- PASS: TestAccAWSRoute_ipv6ToInternetGateway (67.39s)
=== RUN   TestAccAWSRoute_changeCidr
--- PASS: TestAccAWSRoute_changeCidr (103.68s)
=== RUN   TestAccAWSRoute_noopdiff
--- PASS: TestAccAWSRoute_noopdiff (194.32s)
=== RUN   TestAccAWSRoute_doesNotCrashWithVPCEndpoint
--- PASS: TestAccAWSRoute_doesNotCrashWithVPCEndpoint (71.36s)
PASS
ok  	github.com/hashicorp/terraform/builtin/providers/aws	563.397s
```
2017-05-15 15:48:38 +03:00
Malte Brodersen 994284f535 Allow Windows Docker containers to map volumes (#13584)
* fix regex for windows path

* Fix escaping

* move validate function out and create test
2017-05-15 13:09:50 +03:00
Paul Stack 59955a7523 provider/aws: Override spot_instance_requests volume_tags schema (#14481)
The acceptance tests for spot_instance_requests were showing falures as
follows:

```
------- Stdout: -------
=== RUN   TestAccAWSSpotInstanceRequest_basic
--- FAIL: TestAccAWSSpotInstanceRequest_basic (100.40s)
    testing.go:280: Step 0 error: After applying this step, the plan was not empty:

        DIFF:

        UPDATE: aws_spot_instance_request.foo
          volume_tags.%: "" => "<computed>"
```

This was because we were setting volume_tags as computed and thus the
diff. We needed to override the schema to make sure that it was not
being computed - it's only aws_instance that needs computed tags because
of EBS volumes

```
% make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSSpotInstanceRequest_'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/05/15 10:41:36 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSSpotInstanceRequest_ -timeout 120m
=== RUN   TestAccAWSSpotInstanceRequest_basic
--- PASS: TestAccAWSSpotInstanceRequest_basic (86.93s)
=== RUN   TestAccAWSSpotInstanceRequest_withBlockDuration
--- PASS: TestAccAWSSpotInstanceRequest_withBlockDuration (97.47s)
=== RUN   TestAccAWSSpotInstanceRequest_vpc
--- PASS: TestAccAWSSpotInstanceRequest_vpc (234.56s)
=== RUN   TestAccAWSSpotInstanceRequest_SubnetAndSG
--- PASS: TestAccAWSSpotInstanceRequest_SubnetAndSG (146.16s)
PASS
ok  	github.com/hashicorp/terraform/builtin/providers/aws	565.131s
```
2017-05-15 11:55:56 +03:00
Radek Simko 2964f7bc78 provider/aws: Show state reason when EC2 instance fails to launch (#14479) 2017-05-15 10:31:12 +02:00
Radek Simko 9c2a3d6248 provider/aws: Show last scaling activity when ASG creation/update fails (#14480) 2017-05-15 10:30:10 +02:00
Joe Topjian 0d930618ad Merge pull request #14307 from takaishi/support-to-create-seccgorup-rule-with-protocol-name
provider/openstack: Add to support protocols for resourceNetworkingSecGroupRuleV2
2017-05-14 22:33:30 -06:00
Jay Wang 6ca50dd81d [MS] provider/azurerm: New resource - Express Route Circuit (#14265)
* Adds ExpressRoute circuit documentation

* Adds tests and doc improvements

* Code for basic Express Route Circuit support

* Use the built-in validation helper

* Added ignoreCaseDiffSuppressFunc to a few fields

* Added more information to docs

* Touchup

* Moving SKU properties into a set.

* Updates doc

* A bit more tweaks

* Switch to Sprintf for test string

* Updating the acceptance test name for consistency
2017-05-14 19:30:14 +01:00
r_takaishi 773d7bf4f0 fix test and const name 2017-05-14 21:00:36 +09:00
r_takaishi 848176588c add test 2017-05-14 20:59:18 +09:00
r_takaishi 7ec662b243 provider/openstack: Add to support protocols for resourceNetworkingSecGroupRuleV2 2017-05-14 20:59:18 +09:00
Yusuke Goto 3b14fc90d9 provider/aws: AWS WAF Regional IPSet + ByteMatchSet support (#13705)
* provider/aws: AWS WAF Regional ByteMatchSet support

* providor/aws: AWS WAF Regional IPSet support

* fix typo

* Nested ByteMatchTuples of WAF Regional support

* fix name byte_match_tuple singular WAF Regional

* update wafregional_byte_match_set doc

* fix wafregional ipset to look descriptor

* Add wafregional_byte_match_set test

* fix wafregional_ipset_descriptor to be singular

* fix newWafRegionalRetryer to receive region

* fix updateSetWR argument

* fix wafregional_ipset_descriptor doc

* Separate out logic into flatteners

* Fix failing test
2017-05-13 22:01:27 +02:00
Radek Simko 4041db698c
provider/github: Randomize repository collaborator acc tests 2017-05-13 11:11:41 +02:00
Radek Simko 23bb27e5f5
provider/github: Randomize team repository acc tests 2017-05-13 11:11:39 +02:00
Radek Simko af47810e30
provider/github: Randomize issue label acc tests 2017-05-13 11:11:38 +02:00
Radek Simko b6edff80d8
provider/github: Randomize branch protection acc tests 2017-05-13 11:08:51 +02:00
Chris Marchesi f63ad1dbd1 providers/test: Add count resource <-> data source dep count scale tests
These tests cover the new refresh behaviour and would fail with "index
out of range" if the refresh graph is not expanded to take new resources
into account as well (scale out), or if it does not with expanded count
orphans in a way that makes sure they don't get interpolated when walked
(scale in).
2017-05-12 15:45:06 -07:00
Paul Stack f383167712 provider/vault: Prevent panic when no secret found (#14435)
Fixes: #14408

Just a simple guard clause that returns an error if no
secret found
2017-05-13 01:14:14 +03:00
Clint c159c48f5e provider/heroku: Correct issue with setting CName in heroku_domain (#14443) 2017-05-12 15:13:21 -05:00
Andres Koetsier 3266da055a Do not fail on non-existent pipeline (#14431) 2017-05-12 16:14:07 +03:00
Roman Laguta cb590e516d Added new evaluation_delay parameter (#14433)
* Added new evaluation_delay field

Added new evaluation_delay parameter to pass it through the datadog monitor api

* Changed tests for new evaluation_delay field

* changed documentation
2017-05-12 16:12:21 +03:00
Sertaç Özercan e0cd380814 [MS] provider/azurerm: Virtual Machine Scale Sets with managed disk support (#13717)
* added vmss with managed disk support

* Update vmss docs

* update vmss test

* added vmss managed disk import test

* update vmss tests

* remove unused test resources

* reverting breaking changes on storage_os_disk and storage_image_reference

* updated vmss tests and documentation

* updated vmss flatten osdisk

* updated vmss resource and import test

* update name in vmss osdisk

* update vmss test to include a blank name

* update vmss test to include a blank name
2017-05-12 15:58:00 +03:00
Dan Thagard 0a37f35865 Allowed method on aggregator is `avg` ! `average` (#14414)
* Allowed method on aggregator is `avg` ! `average`

While Datadog will accept the value of `average` when creating the query graph, the resultant graph will be empty. Passing the value of `avg` instead correctly renders the graph.

* Fixed gofmt

* Updated test to match new aggregator method
2017-05-12 13:37:32 +03:00
Martin Atkins e67c359b2d provider/test: allow assigning a label to each instance
When testing the behavior of multiple provider instances (either aliases
or child module overrides) it's convenient to be able to label the
individual instances to determine which one is actually being used for
the purpose of making test assertions.
2017-05-11 10:52:51 -07:00
Radek Simko 68aebee1e5 provider/aws: Fix Content-Encoding for S3 object acc test (#14400) 2017-05-11 18:35:50 +02:00
Radek Simko d00d0bdfe9 provider/aws: Increase timeout for (dis)associating IPv6 addr to a subnet (#14401) 2017-05-11 18:33:56 +02:00