Commit Graph

11852 Commits

Author SHA1 Message Date
James Bardin cdb80f68a8 Ensure better state normalization
Fix checksum issue with remote state

If we read a state file with "null" objects in a module and they become
initialized to an empty map the state file may be written out with empty
objects rather than "null", changing the checksum. If we can detect
this, increment the serial number to prevent a conflict in atlas.

Our fakeAtlas test server now needs to decode the state directly rather
than using the ReadState function, so as to be able to read the state
unaltered.

The terraform.State data structures have initialization spread out
throughout the package. More thoroughly initialize State during
ReadState, and add a call to init() during WriteState as another
normalization safeguard.

Expose State.init through an exported Init() method, so that a new State
can be completely realized outside of the terraform package.
Additionally, the internal init now completely walks all internal state
structures ensuring that all maps and slices are initialized.  While it
was mentioned before that the `init()` methods are problematic with too
many call sites, expanding this out better exposes the entry points that
will need to be refactored later for improved concurrency handling.

The State structures had a mix of `omitempty` fields. Remove omitempty
for all maps and slices as part of this normalization process. Make
Lineage mandatory, which is now explicitly set in some tests.
2016-08-12 11:09:50 -04:00
Radek Simko 97fcd5f4cc Update CHANGELOG.md 2016-08-11 12:13:35 +01:00
Radek Simko 69f8a03ddd
aws/docs: Fix a few nitpicks after merging #7794 2016-08-11 12:11:15 +01:00
Paul Stack 78b4923f7d Update CHANGELOG.md 2016-08-11 20:59:31 +10:00
Guido Bakker ee9ebe849f Support setting datacenter when using consul remote state (#8102)
* Support setting datacenter when using consul remote state

Change-Id: I8c03f4058e9373f0de8fde7ce291ec552321cc60

* Add documentation for setting datacenter when using consul remote state

Change-Id: Ia62feea7a910a76308f0a5e7f9505c9a210e0339
2016-08-11 22:58:20 +12:00
Raphael Randschau 66a14cb3b7 provider/aws: Re-implement api gateway parameter handling (#7794)
* provider/aws: Re-implement api gateway parameter handling

this PR cleans up some left overs from PR #4295, namely the parameter handling.

now that GH-2143 is finally closed this PR does away with the ugly
`request_parameters_in_json` and `response_parameters_in_json` hack.

* Add deprecation message and conflictsWith settings

following @radeksimko s advice, keeping the old code around with a deprecation
warning.

this should be cleaned up in a few releases

* provider/aws: fix missing append operation

* provider/aws: mark old parameters clearly as deprecated

* provider/aws work around #8104

following @radeksimko s lead

* provider/aws fix cnp error
2016-08-11 11:49:58 +01:00
Peter McAtominey d7285d1b14 provider/azurerm: fix; add tests for importing traffic manager resources (#8111)
* provider/azurerm: add test for importing traffic manager profile resource

TF_ACC=1 go test ./builtin/providers/azurerm -v -run TestAccAzureRMTrafficManagerProfile_import -timeout 120m
=== RUN   TestAccAzureRMTrafficManagerProfile_importBasic
--- PASS: TestAccAzureRMTrafficManagerProfile_importBasic (84.50s)
PASS
ok  	github.com/hashicorp/terraform/builtin/providers/azurerm	84.722s

* provider/azurerm: fix; add test for importing traffic_manager_endpoint resource

TF_ACC=1 go test ./builtin/providers/azurerm -v -run TestAccAzureRMTrafficManagerEndpoint -timeout 120m
=== RUN   TestAccAzureRMTrafficManagerEndpoint_importBasic
--- PASS: TestAccAzureRMTrafficManagerEndpoint_importBasic (130.66s)
=== RUN   TestAccAzureRMTrafficManagerEndpoint_basic
--- PASS: TestAccAzureRMTrafficManagerEndpoint_basic (152.87s)
=== RUN   TestAccAzureRMTrafficManagerEndpoint_basicDisableExternal
--- PASS: TestAccAzureRMTrafficManagerEndpoint_basicDisableExternal (151.55s)
=== RUN   TestAccAzureRMTrafficManagerEndpoint_updateWeight
--- PASS: TestAccAzureRMTrafficManagerEndpoint_updateWeight (199.33s)
=== RUN   TestAccAzureRMTrafficManagerEndpoint_updatePriority
--- PASS: TestAccAzureRMTrafficManagerEndpoint_updatePriority (113.15s)
=== RUN   TestAccAzureRMTrafficManagerEndpoint_nestedEndpoints
--- PASS: TestAccAzureRMTrafficManagerEndpoint_nestedEndpoints (97.05s)
PASS
ok  	github.com/hashicorp/terraform/builtin/providers/azurerm	844.740s
2016-08-11 16:00:23 +12:00
Paul Stack 605dfada51 Update CHANGELOG.md 2016-08-11 15:20:06 +12:00
stack72 313ec1252c
Merge branch 'master' of github.com:hashicorp/terraform 2016-08-11 15:15:51 +12:00
stack72 c95bf296d4
Merge branch 'Ticketmaster-5637-conflict-resolution' 2016-08-11 15:15:34 +12:00
stack72 ec3e442f26
provider/aws: change the test to be us-west-2a 2016-08-11 15:15:23 +12:00
stack72 cdda4d76d4
Merge branch '5637-conflict-resolution' of https://github.com/Ticketmaster/terraform into Ticketmaster-5637-conflict-resolution 2016-08-11 11:23:04 +12:00
James Bardin a1a501a26a Merge pull request #8053 from hashicorp/jbardin/atlas-retry-policy
don't retry the atlas requests with the wrong cert
2016-08-10 17:09:00 -04:00
James Bardin ea2e875ea1 Merge pull request #8081 from hashicorp/jbardin/input-hcl
Allow the HCL input when prompted
2016-08-10 17:08:52 -04:00
Clint c9de6a4173 provider/aws: Change a few policy test docs to use heredoc format, to prevent regressions (#8118) 2016-08-10 15:34:38 -05:00
James Bardin c48a1423a1 Collapse nested if with an && 2016-08-10 16:34:21 -04:00
Kraig Amador 742089f10c Fixing the certs, test now passes 2016-08-10 13:31:36 -07:00
ldanz 8bba3d4e6e Documentation: explain the role of to_port in a security group rule when protocol is "icmp" (#8093) 2016-08-10 14:32:18 -05:00
James Bardin df0c795b39 Don't retry the atlas requests with the wrong cert
This probably won't recover, so abort immediately.
Requires retryablehttp CheckRetry patch.
2016-08-10 13:45:30 -04:00
James Bardin ee6159cd9d update github.com/hashicorp/go-retryablehttp 2016-08-10 13:45:29 -04:00
Clint 3fc119923e Revert "provider/aws: Added the ability to import aws_iam_role's" (#8112) 2016-08-10 11:18:03 -05:00
James Bardin d6c8b40201 unify some of the test code
Have all the values in the testDiffFn go through the same code path
2016-08-10 11:37:55 -04:00
James Bardin 2e5791ab2b Allow the HCL input when prompted
We already accept HCL encoded input for -vars, and this expands that to
accept HCL when prompted for a value on the command line as well.
2016-08-10 11:14:31 -04:00
Joe Topjian 5d9fa90005 Update CHANGELOG.md 2016-08-10 09:04:40 -06:00
Joe Topjian 38f0e62430 Merge pull request #8070 from fatmcgav/openstack_router_update_external_gw
provider/openstack: Add support for updating the External GW assigned to a Neutron router
2016-08-10 09:03:52 -06:00
Joe Topjian 59cab2f198 Merge pull request #8101 from GiovanniPaoloGibilisco/master
provider/openstack: add acceptance test for Issue #8040
2016-08-10 08:55:58 -06:00
Joe Topjian 1c09918191 provider/openstack: Fixing acc test for external gw update 2016-08-10 15:54:31 +01:00
Gavin Williams b9eaa23f60 Add support for updating the External Gateway assigned to a Neutron router.
Added a simple acceptance test, but doesn't work.
2016-08-10 15:54:31 +01:00
Radek Simko b98e5f2073 Update CHANGELOG.md 2016-08-10 15:12:47 +01:00
Renier Morales c2bcb5fbe5 Skip IAM/STS validation and metadata check (#7874)
* Skip IAM/STS validation and metadata check

* Skip IAM/STS identity validation - For environments or other api
  implementations where there are no IAM/STS endpoints available, this
  option lets you opt out from that provider initialization step.
* Skip metdata api check - For environments in which you know ahead of
  time there isn't going to be a metadta api endpoint, this option lets
  you opt out from that check to save time.

* Allow iam/sts initialization even if skipping account/cred validation

(#7874)

* Split out skip of IAM validation into credentials and account id

(#7874)
2016-08-10 15:10:34 +01:00
Giovanni Paolo Gibilisco 7bb7508c86 Merge branch 'master' of https://github.com/GiovanniPaoloGibilisco/terraform 2016-08-10 14:10:29 +02:00
Giovanni Paolo Gibilisco ba42737e26 add acceptance test for issue #8040 2016-08-10 12:35:53 +02:00
Paul Stack 6b477e888a Update CHANGELOG.md 2016-08-10 16:07:32 +12:00
Krzysztof Wilczynski f5b46b80e7 Add ability to set canned ACL in aws_s3_bucket_object. (#8091)
An S3 Bucket owner may wish to set a canned ACL (as opposite to explicitly set
grantees, etc.) for an object. This commit adds an optional "acl" attribute to
the aws_s3_bucket_object resource so that the owner of the S3 bucket can
specify an appropriate pre-defined ACL to use when creating an object.

Signed-off-by: Krzysztof Wilczynski <krzysztof.wilczynski@linux.com>
2016-08-10 16:05:39 +12:00
f440 a82f96f939 Fix invalid markdown syntax (#8089) 2016-08-10 13:16:31 +12:00
Kraig Amador 6c2949fdac Added aws_iam_role import. Now that we read the assume_role_policy it highlights all of the tests that change this, so I've fixed a bunch of those while i'm in here. (#7617) 2016-08-10 12:16:59 +12:00
Paul Stack 25f1c6dc02 Update CHANGELOG.md 2016-08-10 12:07:46 +12:00
Chris Marchesi 41c23b2f04 provider/aws: Various IAM policy normalizations for IAM data source (#6956)
* Various string slices are sorted and truncated to strings if they
   only contain one element.
 * Sids are now included if they are empty.

This is to ensure what is sent to AWS matches what comes back, to
prevent recurring diffs even when the policy has changed.
2016-08-10 12:06:38 +12:00
Paul Stack 8925235ef1 Update CHANGELOG.md 2016-08-10 11:06:01 +12:00
Krzysztof Wilczynski 92d75b263c Add ability to set Requests Payer in aws_s3_bucket. (#8065)
Any S3 Bucket owner may wish to share data but not incur charges associated
with others accessing the data. This commit adds an optional "request_payer"
attribute to the aws_s3_bucket resource so that the owner of the S3 bucket can
specify who should bear the cost of Amazon S3 data transfer.

Signed-off-by: Krzysztof Wilczynski <krzysztof.wilczynski@linux.com>
2016-08-10 11:01:17 +12:00
Mosley, Franklin 4d55b8e9ea Corrected printf verb of wrong type
Corrected printf verb by changing it from a string type to an int type.
2016-08-09 15:29:50 -07:00
Mosley, Franklin 6d7933b41a Added tests for expandPolicyAttributes/flattenPolicyAttributes 2016-08-09 15:29:50 -07:00
Mosley, Franklin eb0cd14f41 Changed `attribute` argument to be optional.
Changed the `attribute` argument of the resource to be optional vs.
required.
2016-08-09 15:29:50 -07:00
Mosley, Franklin 8a24dd8efe Added resource documentation.
Updated the Terraform documentation to add a new page, and a link in
the sidebar, for the aws_lb_ssl_negotiation_policy resource.
2016-08-09 15:29:50 -07:00
Mosley, Franklin a6de088375 Add new resource aws_lb_ssl_negotiation_policy
Added new resource to create an AWS ELB SSL negotiation policy, and an
acceptance test.
2016-08-09 15:29:13 -07:00
James Nugent f18e2546b3 Merge pull request #8080 from hashicorp/docs-mapkeys
docs: Fix map key interpolation documentation
2016-08-09 16:12:05 -04:00
James Nugent 9fa978a45f docs: Fix map key interpolation documentation
Previously was recommending the now-invalid dot syntax for map keys,
change to using HIL indexing.
2016-08-09 16:03:05 -04:00
Clint e4f1d879d9 Update CHANGELOG.md 2016-08-09 14:19:58 -05:00
Clint 22684200b5 provider/aws: Fix line ending errors/diffs with IAM Server Certs (#8074)
* provider/aws: Failing IAM Server Cert test with windows line endings

* provider/aws: Fix IAM Server Cert issue with line encodings
2016-08-09 14:19:12 -05:00
James Nugent e181d753fe build: Fix ordering of plugin list 2016-08-09 15:03:24 -04:00