Commit Graph

15254 Commits

Author SHA1 Message Date
Paul Stack d214a9a786 Update CHANGELOG.md 2016-11-21 10:18:58 +02:00
Richard Henning 2a5e1d400d provider/aws: Remove IAM user's MFA devices with `force_destroy` #5908 (#10262)
When `force_destroy` was specifed on an `aws_iam_user` resource, only IAM
access keys and the login profile were destroyed. If a multi-factor auth
device had been activated for that user, deletion would fail as follows:

```
* aws_iam_user.testuser1: Error deleting IAM User testuser1: DeleteConflict: Cannot delete entity, must delete MFA device first.
    status code: 409, request id: aa41b1b7-ac4d-11e6-bb3f-3b4c7a310c65
```

This commit iterates over any of the user's MFA devices and deactivates
them before deleting the user. It follows a pattern similar to that used
to remove users' IAM access keys before deletion.

```
$ make testacc TEST=./builtin/providers/aws TESTARGS='-run=TestAccAWSUser_'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2016/11/20 17:09:00 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws -v -run=TestAccAWSUser_ -timeout 120m
=== RUN   TestAccAWSUser_importBasic
--- PASS: TestAccAWSUser_importBasic (5.70s)
=== RUN   TestAccAWSUser_basic
--- PASS: TestAccAWSUser_basic (11.12s)
PASS
ok  	github.com/rhenning/terraform/builtin/providers/aws	20.840s
```
2016-11-21 10:17:27 +02:00
Mitchell Hashimoto e7d59ab245
terraform: test for interpolation escapes 2016-11-20 21:14:16 -08:00
James Nugent 943b41b90f Merge pull request #10258 from jagregory/patch-1
Use RDS::CreateDBInstance docs for more info on parameter values
2016-11-21 02:19:05 +02:00
James Gregory ea658635fe Point to CreateDBInstance docs for more info
The docs for the CreateDBInstance API call include quite a bit more information about each individual option, (for example `Engine` has each of the possible options listed, whilst the cli reference doesn't).
2016-11-21 10:01:17 +11:00
Joe Topjian 24d7ada0e4 provider/openstack: openstack_compute_volume_attach_v2 resource
This commit adds the openstack_compute_volume_attach_v2 resource. This
resource enables a volume to be attached to an instance by using the
OpenStack Compute (Nova) v2 volumeattach API.
2016-11-20 21:22:07 +00:00
Joe Topjian 22dd265132 vendor: updating gophercloud for block storage attachment support 2016-11-20 21:19:12 +00:00
Joe Topjian 672d4d20d7 provider/openstack: openstack_blockstorage_volume_attach_v2 resource
This commit adds the openstack_blockstorage_volume_attach_v2 resource. This
resource enables a volume to be attached to an instance by using the OpenStack
Block Storage (Cinder) v2 API.
2016-11-20 21:19:11 +00:00
James Bardin 9616618de1 Make sure test has a valid ResourceState
Empty resources are now pruned more aggressively, so make sure there is
a valid ResourceState in the test ModuleState.
2016-11-20 13:13:43 -05:00
James Bardin 7715bc8423 change failing test to use subtests 2016-11-20 13:02:48 -05:00
James Bardin a5cb530571 Move the state module cleanup from init to prune
It makes for sense for this to happen in State.prune(). Also move a
redundant pruning from ResourceState.init, and make sure
ResourceState.prune is called from the parent's prune method.
2016-11-20 11:33:41 -05:00
Kit Ewbank fd8d41f6a5 Add note to aws_security_group data source describing the default security group for a VPC. (#10247)
Add a corresponding acceptance test.
2016-11-20 16:28:11 +02:00
Paul Stack 44885f45d3 Update CHANGELOG.md 2016-11-20 16:23:21 +02:00
Kit Ewbank 3255921b6e aws_prefix_list data source - Add ability to select PL by name. (#10248) 2016-11-20 16:21:55 +02:00
Ryan Eschinger 7619d66002 fix aws_availability_zone data source doc example (#10249)
existing example returns an error like the following should you try to
run `terraform plan` against it:

Error reading config for aws_subnet[example]: data.aws_availability_zone.name_suffix: data variables must be four parts: data.TYPE.NAME.ATTR in:

${cidrsubnet(aws_vpc.example.cidr_block, 4, var.az_number[data.aws_availability_zone.name_suffix])}
2016-11-20 16:10:59 +02:00
Mitchell Hashimoto 58013b5a2e Update CHANGELOG.md 2016-11-19 22:18:41 -08:00
Mitchell Hashimoto 656b75711c Merge pull request #10251 from hashicorp/update-hil
vendir: update HIL
2016-11-19 22:17:51 -08:00
Mitchell Hashimoto 784bc25847
vendir: update HIL
Fixes #10236
2016-11-19 22:15:50 -08:00
Ninir 72a2be756a Bumped AWS to 1.5.8 2016-11-19 19:47:50 +01:00
Mitchell Hashimoto 4406e27eaa
providers/nomad: use DefaultConfig to intialize all fields 2016-11-19 10:20:54 -08:00
Chris Marchesi 8d06d68d0f core: Backport NewComputed change to nested list/set tests
Needed due to work done in 95d37ea, we may need to adjust
hasComputedSubKeys to propagate NewComputed in the same way that we
have added "~", however will wait for comment from @mitchellh.
2016-11-19 09:29:48 -08:00
Chris Marchesi f258056731 core: Tests for hasComputedSubKeys fix
This covers:

 * Complex sets with computed fields in a set
 * Complex lists with computed fields in a set

Adding a test to test basic lists with computed fields seemed to fail,
but possibly for an unrelated reason (the list returned as nil). The fix
to this inparticular case may be out of the scope of this specific
issue.

Reference gist and details in hashicorp/terraform#9171.
2016-11-19 08:56:16 -08:00
Chris Marchesi 4d8208d840 core: Ensure hasComputedSubKeys iterates over Sets and Lists properly
This fixes some edge-ish cases where a set in a config has a set or list
in it that contains computed values, but non-set or list values in the
parent do not.

This can cause "diffs didn't match during apply" errors in a scenario
such as when a set's hash is calculated off of child items (including
any sub-lists or sets, as it should be), and the hash changes between
the plan and apply diffs due to the computed values present in the
sub-list or set items. These will be marked as computed, but due to the
fact that the function was not iterating over the list or set items
properly (ie: not adding the item number to the address, so
set.0.set.foo was being yielded instead of set.0.set.0.foo), these
computed values were not being properly propagated to the parent set to
be marked as computed.

Fixes hashicorp/terraform#6527.
Fixes hashicorp/terraform#8271.

This possibly fixes other non-CloudFront related issues too.
2016-11-19 08:56:16 -08:00
Mitchell Hashimoto 283d49f12f Update CHANGELOG.md 2016-11-18 21:34:58 -08:00
Mitchell Hashimoto 178355fc43 Merge pull request #10235 from hashicorp/b-update-nomad
vendor: update to Nomad 0.5
2016-11-18 21:33:52 -08:00
Mitchell Hashimoto f0be9675b5
vendor: update to Nomad 0.5 2016-11-18 21:18:49 -08:00
Evan Brown d357e75201 Merge pull request #10117 from cblecker/f-gke-node-scopes
provider/google: Add support for scope aliases to google_container_cluster
2016-11-18 20:19:26 -08:00
James Bardin def55e52ca An empty module in state can panic
An empty module, or a module with an empty path can panic during graph
traversal. Make sure we clear these out when reading and writing the
state.
2016-11-18 17:59:07 -05:00
Christian Karlsen 50b859ba9a provider/azurerm: make DiskSizeGB optional for data disks 2016-11-18 23:08:49 +01:00
James Bardin 68ba2d6ff0 ResourceConfig.get should never return (nil, true)
Fixes a case where ResourceConfig.get inadvertently returns a nil value.

Add an integration test where assigning a map to a list via
interpolation would panic.
2016-11-18 16:24:40 -05:00
Paul Stack ec4c00ff92 Update CHANGELOG.md 2016-11-18 19:10:27 +02:00
Martin Atkins 399542a168 core: allow outputs to have descriptions (#9722)
We allow variables to have descriptions specified, as additional context
for a module user as to what should be provided for a given variable.

We previously lacked a similar mechanism for outputs. Since they too are
part of a module's public interface, it makes sense to be able to add
descriptions for these for symmetry's sake.

This change makes a "description" attribute valid within an "output"
configuration block and stores it within the configuration data structure,
but doesn't yet do anything further with it. For now this is useful only
for third-party tools that might parse a module's config to generate
user documentation; later we could expose the descriptions as part of
the "apply" output, but that is left for a separate change.
2016-11-18 19:09:43 +02:00
Paul Stack 44cc380bd7 Update CHANGELOG.md 2016-11-18 17:26:53 +02:00
Peter McAtominey 507efcb180 state/azure: support passing of lease ID when writing storage blob (#10115)
Also fixed tests failing auth caused by getStorageAccountAccessKey returning the
key name rather than the value

TF_ACC= go test ./state/remote -v -run=TestAz -timeout=10m -parallel=4
=== RUN   TestAzureClient_impl
--- PASS: TestAzureClient_impl (0.00s)
=== RUN   TestAzureClient
2016/11/18 13:57:34 [DEBUG] New state was assigned lineage "96037426-f95e-45c3-9183-6c39b49f590b"
2016/11/18 13:57:34 [TRACE] Preserving existing state lineage "96037426-f95e-45c3-9183-6c39b49f590b"
--- PASS: TestAzureClient (130.60s)
=== RUN   TestAzureClientEmptyLease
2016/11/18 13:59:44 [DEBUG] New state was assigned lineage "d9997445-1ebf-4b2c-b4df-15ae152f6417"
2016/11/18 13:59:44 [TRACE] Preserving existing state lineage "d9997445-1ebf-4b2c-b4df-15ae152f6417"
--- PASS: TestAzureClientEmptyLease (128.15s)
=== RUN   TestAzureClientLease
2016/11/18 14:01:55 [DEBUG] New state was assigned lineage "85912a12-2e0e-464c-9886-8add39ea3a87"
2016/11/18 14:01:55 [TRACE] Preserving existing state lineage "85912a12-2e0e-464c-9886-8add39ea3a87"
--- PASS: TestAzureClientLease (138.09s)
PASS
ok  	github.com/hashicorp/terraform/state/remote	397.111s
2016-11-18 17:26:25 +02:00
Kit Ewbank 9aba1b4238 Better explanation of the description attribute (#10221) 2016-11-18 17:20:45 +02:00
Clint 10632ad6cf Merge pull request #10219 from ewbankkit/patch-1
Correct the name of the notes section mentioned
2016-11-18 09:10:58 -06:00
Kit Ewbank 2b39f5afdd Correct the name of the notes section mentioned 2016-11-18 09:55:37 -05:00
Ben Abrams 6dd2fb947c closes #5880 (#9970)
Adding doc how to setup azure auth with cli
2016-11-18 14:30:54 +02:00
Paul Stack dc0cb70e95 provider/github: Creating a github repository before adding a label (#10213) 2016-11-18 13:38:46 +02:00
Paul Stack fc3d0f7216 Update CHANGELOG.md 2016-11-18 13:36:44 +02:00
Ian L f584d53ba9 provider/github: add GitHub labels resource (#10142)
* provider/github: add GitHub labels resource

Provides a GitHub issue label resource.

This resource allows easy management of issue labels for an
organisation's repositories. A name, and a color can be set.
These attributes can be updated without creating a new resource.

* provider/github: add documentation for GitHub issue labels resource
2016-11-18 13:24:37 +02:00
Paul Stack d80a7a0cb0 Update CHANGELOG.md 2016-11-18 13:07:57 +02:00
Paul Stack 0d98d581a6 Update CHANGELOG.md 2016-11-18 13:02:54 +02:00
Chris Marchesi 3ac05a539b provider/aws: Add aws_alb_listener data source (#10181)
* provider/aws: Add aws_alb_listener data source

This adds the aws_alb_listener data source to get information on an AWS
Application Load Balancer listener.

The schema is slightly modified (only option-wise, attributes are the
same) and we use the aws_alb_listener resource read function to get the
data.

Note that the HTTPS test here may fail due until
hashicorp/terraform#10180 is merged.

* provider/aws: Add aws_alb_listener data source docs

Now documented.
2016-11-18 13:01:21 +02:00
Paul Stack 80e033eb16 provider/chef: Updating the provider_test comments to remove a company name (#10197) 2016-11-18 10:53:21 +02:00
Sander van Harmelen fbf27714e3 Remove the need for specifying a network ID (#10204)
When using the static NAT resource, you no longer have to specify a `network_id`. This can be inferred from the choosen `virtual_machine_id` and/or the `vm_guest_ip`.
2016-11-18 08:20:31 +01:00
Justin Nauman bf48d0132c Checkpoint signature fixes
- Currently the disable_checkpoint setting from $HOME/.terraformrc is never
respsected due to:
-- The runCheckpoint go routine being fired off prior to loading configuration
-- The config.Merge method not actually merging in the c2s settings
2016-11-17 17:54:14 -06:00
Evan Brown 3920460220 Merge pull request #10081 from aditya87/google_compute_image_timeout
Added create timeout for compute images and instances
2016-11-17 12:56:02 -08:00
James Bardin c4eefd4b5e Allow primitive type in maps via all FieldReaders
Now that we can read primitive type out of a map, each field reader
needs to be able to set the proper type as expected.
2016-11-17 15:35:08 -05:00
James Bardin 730014b33e Convert the map fields values when reading diff
Convert the value to the correct type when reading a diff and the map
schema has an primitive Elem type.
2016-11-17 14:34:18 -05:00