Commit Graph

3239 Commits

Author SHA1 Message Date
Paul Hinze a83d1bab23 mailgun: fixup go vet problem in test 2016-01-21 13:02:26 -06:00
Paul Hinze 3380f5bf7c Merge pull request #4776 from hashicorp/phinze/heroku-tests-randnames
heroku: randomize names in acctests
2016-01-21 11:57:27 -06:00
Paul Hinze 8d2e18234e Merge pull request #4777 from hashicorp/phinze/mailgun-domain-destroy-takes-a-sec
mailgun: poll until domain destroy takes effect
2016-01-21 11:56:37 -06:00
Sander van Harmelen e3d530aaa2 Merge pull request #4772 from svanharmelen/b-fix-panic
provider/cloudstack: add a check to see if the port value is valid
2016-01-21 17:05:03 +01:00
Sander van Harmelen cfa9661ffa Merge pull request #4687 from Carles-Figuerola/master
Add vlan, startip, endip and gateway for network creation
2016-01-21 17:02:56 +01:00
Carles Figuerola e2d6f7c5e9 Specify that the vlan attribute in cloudstack is only usable for ROOT admins and stop reading it back 2016-01-21 09:52:27 -06:00
Paul Hinze be59831847 mailgun: poll until domain destroy takes effect
Test failures indicate that this operation doesn't always take effect
immediately:

https://travis-ci.org/hashicorp/terraform/builds/103764466

Add a simple poll to retry a few times until it does.

```
--- PASS: TestAccMailgunDomain_Basic (1.51s)
```

Verified that this does the trick by looping the test and watching the
logs for the retry behavior to kick in.
2016-01-21 09:51:08 -06:00
Paul Hinze d1010f40c5 heroku: randomize names in acctests
Should fix build failures seen here:

https://travis-ci.org/hashicorp/terraform/builds/103764448
2016-01-21 09:31:48 -06:00
James Nugent c8461eae32 Merge pull request #4698 from hashicorp/f-azurerm-storage-account
provider/azurerm: Add `azurerm_storage_account`
2016-01-21 07:25:04 -05:00
Colin Hebert f6d80f2215 provider/digitalocean: allow reassignment of floating IPs
Do not force the creation of a new IP when the droplet_id changes, and
unassignment of the the floating IP without destroying it.
2016-01-21 07:16:59 -05:00
Sander van Harmelen 20901a6478 Add a check to see if the port value is valid
Without this additional check it could happen that one of the firewall
resources would panic is given an unexpected port value.
2016-01-21 09:38:14 +01:00
Mat Davies 45b3b9d181 provider/dme: Add support for `gtdLocation`
Add support for GTD (Global Traffic Director) enabled domains to the DME
provider. Specifically add `gtdLocation` to the `dme_record` resource.
2016-01-20 20:23:29 -05:00
James Nugent 53c23511ef provider/azurerm: Add `azurerm_storage_account`
This is an unusual resource (so far) in that it cannot be created in one
call, and instead must be created and the modified to set some of the
parameters.

We use the pollIndefinitelyWhileNeeded function which will continue to
poll Azure RM operation monitoring endpoints until an error is reported
or the operation meets one of the given status codes. The function was
originally part of this feature but was separated out in order to
unblock other work.

Currently there is no support for the "custom_domain" section of the
storage account API. This was originally present and was later taken out
of the scope of the storage account resource in order that the following
workflow can be used:

1. Create storage account
2. Create DNS CNAME entry once the account name is known
3. Create custom domain mapping
2016-01-20 19:47:23 -05:00
James Nugent fda9b0f1ed Merge pull request #4759 from stack72/azurerm-cdn-endpoint
provider/azurerm: add CDN Endpoint resource
2016-01-20 14:05:22 -05:00
stack72 d91c7080e0 Scaffold the AzureRM CDN Endpoint resource 2016-01-20 16:47:41 +00:00
James Nugent 644a52c473 Merge pull request #4757 from hashicorp/f-cloudinitconfig-update
provider/template: Allow update in `template_cloudinit_config`
2016-01-20 11:22:57 -05:00
James Nugent 734d5698d7 provider/azurerm: Poll indefinitely if no error
This adds a pollIndefinitelyWhileNeeded function which will continue to
poll Azure RM operation monitoring endpoints until an error is reported
or the operation meets one of the given status codes. This may need
revisiting at some point in the future.
2016-01-20 10:25:26 -05:00
James Nugent b0f9eb5c13 provider/template: Allow update in `template_cloudinit_config` 2016-01-20 09:58:20 -05:00
chris 9aa8bbda93 provider/google: Support named_port on instance_group_manager
This allows HTTP and HTTPs load-balancers to direct traffic to ports other than tcp/80 and tcp/443.
2016-01-20 09:15:30 -05:00
Paul Hinze 7d10d454e2 Merge pull request #4749 from hashicorp/b-1752
core: fix diff mismatch when RequiresNew field and list both change
2016-01-19 18:29:10 -06:00
Paul Hinze 4af2c5f5dd core: fix diff mismatch when RequiresNew field and list both change
fixes #1752

Includes AccTest reproducing example from the issue as well as a bunch
of explanatory comments in the tests and impls.
2016-01-19 15:38:04 -06:00
stack72 183eb248df Scaffold the Azure RM CDN Profile 2016-01-19 17:37:28 +00:00
James Nugent a4abb0e66c Merge pull request #4739 from hashicorp/b-azurerm-resource-id-parsing
provider/azurerm: Parse "resourcegroups" in IDs
2016-01-19 11:42:45 -05:00
James Nugent c3ce8b81ef provider/azurerm: Parse "resourcegroups" in IDs
When parsing resource IDs (probably incorrectly since they are URIs and
should therefore be opaque), we need to look for "resourcegroups" in
addition to "resourceGroups" because the Azure CDN resources return that
in their URIs.

Unfortunately the casing semantics of the rest of the string are not
clear, so downcasing the entire URI is probably best avoided. This is a
fix for a single case.
2016-01-19 11:32:16 -05:00
Clint 569e74c2e7 Merge pull request #4481 from ElliotG/feature/encryptedBlockDevice
provider/aws: Added support for the encryption flag on ebs_block_devices in launch configurations
2016-01-19 10:26:11 -06:00
stack72 a9afb489f6 Adds the ability to tag more of the Azure RM Network resources 2016-01-18 20:55:28 +00:00
stack72 2ebe2c01f1 Add acceptance tests and docs update to allow the tagging of AzureRM resource & 2016-01-18 18:35:41 +00:00
James Nugent 2ff0c65c3c provider/azurerm: Support tagging `azurerm_resource_group` 2016-01-18 13:13:28 -05:00
James Nugent d5e3db9deb provider/azurerm: Add tags to `azurerm_virtual_network` 2016-01-18 13:13:28 -05:00
stack72 d7a7eb4644 Adds an acceptance test to the ARM Availability Set to show that tagging
and updating of tags work as expected

Also updated the documentation for azure rm availability set to
demonstrate this
2016-01-18 17:47:37 +00:00
James Nugent a640ef9f16 provider/azurerm: Add tests for tag scaffolding 2016-01-18 12:28:04 -05:00
James Nugent f374ca77e7 provider/azurerm: Add scaffolding to tags 2016-01-18 11:48:01 -05:00
Paul Hinze 475c0c8549 Merge pull request #4694 from hashicorp/phinze/template-func-race
provider/template: fix race causing panic in template_file
2016-01-16 12:43:57 -05:00
stack72 acabd4d407 Change ASG Lifecycle Default Result to be computed and added a test to record what the default value is 2016-01-15 22:34:16 +00:00
James Nugent 4b7a98584a provider/docker: Mount named volumes in containers
This adds support for specifying named volumes for mounting in a
`docker_container` resource.
2016-01-15 21:59:33 +00:00
Paul Hinze 0739cf2348 provider/template: fix race causing panic in template_file
The render code path in `template_file` was doing unsynchronized access
to a shared mapping of functions in `config.Func`.

This caused a race condition that was most often triggered when a
`template_file` had a `count` of more than one, and expressed itself as
a panic in the plugin followed by a cascade of "unexpected EOF" errors
through the plugin system.

Here, we simply turn the FuncMap from shared state into a generated
value, which avoids the race. We do more re-initialization of the data
structure, but the performance implications are minimal, and we can
always revisit with a perf pass later now that the race is fixed.
2016-01-15 16:34:46 -05:00
Carles Figuerola fab9b16de5 Move tests to ParseCIDR in resource_cloudstack_network and add items in read section 2016-01-15 14:24:18 -06:00
Sander van Harmelen 52d1e214fb Merge pull request #4661 from jason-riddle/patch-1
Add ENV['no_proxy'] to chef provisioner if no_proxy is detected
2016-01-15 20:32:48 +01:00
Colin Hebert e887ac2523 provider/docker: Add `docker_volume` resource 2016-01-15 17:34:53 +00:00
Carles Figuerola c80ddccc12 Add vlan, startip, endip and gateway for network creation 2016-01-14 22:59:04 -06:00
James Nugent 5834e65db9 Merge branch 'paulbellamy-docker-extra-hosts' 2016-01-15 03:05:25 +00:00
James Nugent 3380f08e5a provider/docker: Tweak and test `host_entry`
This adds acceptance tests for specifying extra hosts on Docker
containers. It also renames the repeating block from `hosts` to `host`,
which reads more naturally in the schema when multiple instances of the
block are declared.
2016-01-15 03:02:20 +00:00
Clint 79c32ddbe9 Merge pull request #4627 from ColinHebert/patch-1
provider/aws: EBS optimised to force new resource
2016-01-14 14:57:13 -06:00
Clint 8e6fba43ef Merge pull request #4564 from hashicorp/pr-3741
provider/aws: Supporting New AWS Route53 HealthCheck additions (supersedes #3741)
2016-01-14 14:41:19 -06:00
Jason Riddle ca39512fa7 Fix the failing chef provisioner test 2016-01-14 13:51:23 -05:00
James Nugent 6acc7a14e4 Merge pull request #4632 from hashicorp/f-aws-profile
provider/aws: Add profile to provider config
2016-01-14 17:08:04 +00:00
Andrew Hodges a1935a135d Handle external state changes for Packet resources gracefully.
When a Packet provision exceeds our time limit, we move the device to an
internal project for Packet staff to investigate. When this happens, the
original user no longer has access to the device, and they get a 403.

These changes make that and other external state changes more pleasant for
users of Terraform.
2016-01-14 10:50:15 -05:00
James Nugent 35c21cb808 Merge branch 'docker-extra-hosts' of https://github.com/paulbellamy/terraform into paulbellamy-docker-extra-hosts 2016-01-14 15:48:51 +00:00
James Nugent ace215481a provider/aws: Add profile to provider config
This allows specification of the profile for the shared credentials
provider for AWS to be specified in Terraform configuration. This is
useful if defining providers with aliases, or if you don't want to set
environment variables. Example:

$ aws configure --profile this_is_dog
... enter keys

$ cat main.tf
provider "aws" {
    profile = "this_is_dog"

    # Optionally also specify the path to the credentials file
    shared_credentials_file = "/tmp/credentials"
}

This is equivalent to specifying AWS_PROFILE or
AWS_SHARED_CREDENTIALS_FILE in the environment.
2016-01-14 15:39:35 +00:00
James Nugent ea4595840c Merge pull request #4674 from stack72/carl-youngblood/master
Fix recurrence on `aws_autoscaling_schedule` resource
2016-01-14 12:22:43 +00:00