Commit Graph

24047 Commits

Author SHA1 Message Date
Martin Atkins 6adcc7ab73 vendor: go get github.com/zclconf/go-cty@master
cty now guarantees that sets of primitive values will iterate in a
reasonable order. Previously it was the caller's responsibility to deal
with that, but we invariably neglected to do so, causing inconsistent
ordering. Since cty prioritizes consistent behavior over performance, it
now imposes its own sort on set elements as part of iterating over them so
that calling applications don't have to worry so much about it.

This change also causes cty to consistently push unknown and null values
in sets to the end of iteration, where before that was undefined. This
means that our diff output will now consistently list additions before
removals when showing sets, rather than the ordering being undefined as
before.

The ordering of known, non-null, non-primitive values is still not
contractually fixed but remains consistent for a particular version of
cty.
2019-04-30 15:49:28 -07:00
James Bardin 4b83ddb025
Merge pull request #21165 from hashicorp/jbardin/go-plugin
update go-plugin
2019-04-30 17:40:34 -04:00
James Bardin bf0fb89a2a update go-plugin
Includes fix for correct plugin server log levels, preventing everything
from logging to Debug.
2019-04-30 17:20:10 -04:00
Kristin Laemmert 66068a5462
Update CHANGELOG.md 2019-04-30 15:59:18 -04:00
Kristin Laemmert d7dda4e436
states/statefile: upgrade legacy dependency syntax (#21159)
We used to allow "foo.1" etc as a reference, but now it's "foo[1]".
2019-04-30 14:34:01 -04:00
Pam Selle 02850111b9
Merge pull request #21156 from jweissig/patch-2
Fixed typo
2019-04-30 10:45:34 -04:00
Radek Simko 0471a92865
Update CHANGELOG.md 2019-04-30 13:08:08 +01:00
Justin Weissig 299e0432bc
Fixed typo
Fixed typo: cafeful/careful.
2019-04-30 00:06:01 -07:00
Sander van Harmelen fc5f74a7d5
Update CHANGELOG.md 2019-04-29 21:38:00 +02:00
Sander van Harmelen 36b03b7a13
Merge pull request #21148 from hashicorp/svh/f-locks
backend/remote: do not unlock after a failed upload
2019-04-29 21:36:57 +02:00
Sander van Harmelen 394f20f59c backend/remote: do not unlock after a failed upload
When changes are made and we failed to upload the state, we should not
try to unlock the workspace. Leaving the workspace locked is a good
indication something went wrong and also prevents other changes from
being applied before the newest state is properly uploaded.

Additionally we now output the lock ID when a lock or force-unlock
action failed.
2019-04-29 21:23:33 +02:00
James Bardin 30199600eb
Merge pull request #21146 from hashicorp/jbardin/grpc-test-server
Stop grpc server when running ACC tests
2019-04-29 14:33:44 -04:00
James Bardin 9a2a6d14bd Stop grpc server when running ACC tests
The grpc server does not shutdown when the listener is closed. Since
tests aren't run through go-plugin, which has a separate RPC Shutdown
channel to stop the server, we need to track and stop the server
directly.
2019-04-29 14:14:04 -04:00
Kristin Laemmert 394cf7f25e
lang/funcs: add acc tests for functions (#21112)
* lang/funcs: testing of functions through the lang package API
The function-specific unit tests do not cover the HCL conversion that happens when the functions are called in a terraform configuration. For e.g., HCL converts sets to lists before passing it to the function. This means that we could not test passing a set in the function _unit_ tests.
This adds a higher-level acceptance test, plus a check that every (pure) function has a test.

* website/docs: update function documentation
2019-04-29 13:11:28 -04:00
Martin Atkins eed605ac05 [WIP] Re-enable the end-to-end tests (#20044)
* internal/initwd: Allow deprecated relative module paths

In Terraform 0.11 we deprecated this form but didn't have any explicit
warning for it. Now we'll still accept it but generate a warning. In a
future major release we will drop this form altogether, since it is
ambiguous with registry module source addresses.

This codepath is covered by the command/e2etest suite.

* e2e: Skip copying .exists file, if present

We use this only in the "empty" test fixture in order to let git know that
the directory exists. We need to skip copying it so that we can test
"terraform init -from-module=...", which expects to find an empty
directory.

* command/e2etests: Re-enable and fix up the e2etest "acctests"

We disabled all of the tests that accessed remote services like the
Terraform Registry while they were being updated to support the new
protocols we now expect. With those services now in place, we can
re-enable these tests.

Some details of exactly what output we print, etc, have intentionally
changed since these tests were last updated.

* e2e: refactor for modern states and plans

* command/e2etest: re-enable e2etests and update for tf 0.12 compatibility
plugin/discovery: mkdirAll instead of mkdir when creating cache dir
2019-04-29 13:03:24 -04:00
Martin Atkins 4e78d97f8f vendor: go get github.com/zclconf/go-cty@master
This fixes a bug in the formatlist function where it would panic if given
an unknown list as an argument.
2019-04-29 09:02:58 -07:00
Sander van Harmelen 9adcf1d700
Update CHANGELOG.md 2019-04-29 18:00:00 +02:00
Sander van Harmelen e41c2ecdce
Merge pull request #21139 from hashicorp/svh/b-stdin
Make sure UIInput keeps working after being canceled
2019-04-29 17:58:29 +02:00
James Bardin 54a3e9124e
Merge pull request #21143 from hashicorp/jbardin/format-sequence-diff
command/format: take noop changes from lcs
2019-04-29 11:53:46 -04:00
Justin Weissig 3d80aed6fe website/docs: Fixed Typo (#21137)
Fixed typo: separtely/separately.
2019-04-29 09:19:10 -04:00
Sander van Harmelen 9ab2e9d8b2 Make sure UIInput keeps working after being canceled
Once you start reading from stdin, that is a blocking call that will
never finish. So when a context is canceled causing the input method to
return, the read will remain blocking in the running goroutine.

There isn't a real solution for it (e.g. its not possible to unblock the
read) so the only solution is to make the reader reusable.
2019-04-29 15:15:26 +02:00
James Bardin f79a768a4e command/format: take noop changes from lcs
When rendering the diff, the NoOp changes should come from the LCS
sequence, rather than the new sequence. The two indexes will not align
in many cases, adding the wrong new object or indexing out of bounds.
2019-04-27 11:28:02 -04:00
Radek Simko 27db8d0e3c
Update CHANGELOG.md 2019-04-26 23:42:06 +01:00
Radek Simko fa67cad93a
Merge pull request #21103 from hashicorp/configuograde-splat-idx
configupgrade: Upgrade indexing of splat syntax
2019-04-26 23:40:20 +01:00
Radek Simko 12079ee2ee
Update CHANGELOG.md 2019-04-26 23:30:18 +01:00
Radek Simko 42ba7a3e00
configupgrade: Upgrade indexing of splat syntax 2019-04-26 23:27:32 +01:00
Radek Simko 1f5cadeec0
0.12upgrade: Return error for invalid reference 2019-04-26 23:27:31 +01:00
Chris Griggs 64b8751c69
Merge pull request #21126 from hashicorp/cgriggs01-guide-update
[Website] Update TPDP guide contractor listings
2019-04-26 11:57:22 -07:00
cgriggs01 c7dc988741 update contactor listing 2019-04-26 11:28:43 -07:00
Paul Thrasher 6183ca44c8
Merge pull request #21102 from hashicorp/pault/remote-backend-go-tfe-update
update to latest go-tfe
2019-04-26 10:05:00 -07:00
Brian Flad c70c198f10
Update CHANGELOG for #21117 2019-04-25 20:09:24 -04:00
Brian Flad 13bc60cf4f
Merge pull request #21117 from hashicorp/v-aws-sdk-go-v1.19.18
deps: github.com/aws/aws-sdk-go@v1.19.18
2019-04-25 20:07:45 -04:00
Brian Flad f1d7196d10
deps: github.com/aws/aws-sdk-go@v1.19.18
Enables automatic validation for the new `ap-east-1` region. See also: https://github.com/terraform-providers/terraform-provider-aws/pull/8440#pullrequestreview-230896877

Updated via:

```console
$ go get github.com/aws/aws-sdk-go@v1.19.18
$ go mod tidy
$ go mod vendor
```
2019-04-25 18:01:11 -04:00
Martin Atkins 3309be9721 core: Allow data resource count to be unknown during refresh
The count for a data resource can potentially depend on a managed resource
that isn't recorded in the state yet, in which case references to it will
always return unknown.

Ideally we'd do the data refreshes during the plan phase as discussed in
#17034, which would avoid this problem by planning the managed resources
in the same walk, but for now we'll just skip refreshing any data
resources with an unknown count during refresh and defer that work to the
apply phase, just as we'd do if there were unknown values in the main
configuration for the data resource.
2019-04-25 14:22:57 -07:00
Martin Atkins 95e5ef13a7 vendor: go get github.com/zclconf/go-cty@master
This includes a more comprehensive implementation of Value.GoString, along
with various other changes that don't affect Terraform.
2019-04-25 14:22:57 -07:00
Paul Thrasher 151c91ffda
use scanner for reading logs
Signed-off-by: Paul Thrasher <pthrasher@hashicorp.com>
2019-04-25 11:17:08 -07:00
Paul Thrasher 0e27a8862f
remove duplicate remote output line
Signed-off-by: Paul Thrasher <pthrasher@hashicorp.com>
2019-04-25 10:52:19 -07:00
Sander van Harmelen bb12206bca Fixup the tests 2019-04-25 10:32:00 +02:00
Sander van Harmelen 7cf744241a Do not use a scanner to read the logs
Using a scanner can cause issues when reading long lines. Also make sure we return the error correctly while planning.
2019-04-25 09:51:52 +02:00
Sander van Harmelen cc38debace Fixup the `go-tfe` update
```
go get github.com/hashicorp/go-tfe
go mod tidy
go mod vendor
```
2019-04-25 09:29:52 +02:00
Paul Thrasher c7a023a95c
update test for new go-tfe version
Signed-off-by: Paul Thrasher <pthrasher@hashicorp.com>
2019-04-24 16:46:17 -07:00
Paul Thrasher aece05320b
update go-tfe to v0.3.16
Signed-off-by: Paul Thrasher <pthrasher@hashicorp.com>
2019-04-24 16:46:16 -07:00
Paul Thrasher 53f977bee2
TFCE api correct pluralization
Signed-off-by: Paul Thrasher <pthrasher@hashicorp.com>
2019-04-24 16:44:00 -07:00
Paul Thrasher e479bd5dc3
update to latest go-tfe
same version number but pointing to a new sha

Signed-off-by: Paul Thrasher <pthrasher@hashicorp.com>
2019-04-24 16:44:00 -07:00
Chris Griggs b7705d20a0
Merge pull request #21098 from hashicorp/cgriggs01-add-gridscale
[Website] Add Gridscale provider
2019-04-24 15:02:12 -07:00
Chris Griggs 103f56e0a3
Merge pull request #21090 from hashicorp/cgriggs01-name-update
[Website] Fix FortiOS typo
2019-04-24 14:54:05 -07:00
cgriggs01 bad3c57f00 [Website] Add Gridscale provider 2019-04-24 14:46:22 -07:00
Martin Atkins 4897c0554d vendor: go get github.com/hashicorp/go-msgpack@v0.5.4
By upgrading this to a version that supports Go Modules, we can avoid
the redundant dependencies labix.org/v2/mgo and launchpad.net/gocheck.

These dependencies come via hashicorp/consul, which we have vendored for
the Consul backend.

There are no changes to the go-msgpack code here; we're just adopting a
newer version that has a go.mod present so that its dependencies can be
determined more accurately.
2019-04-24 13:41:33 -07:00
Radek Simko e8ee3f14a4
Merge pull request #21094 from hashicorp/fix-plugin-discovery-quoting
plugin/discovery: Fix quoting of provider name
2019-04-24 21:03:26 +01:00
Radek Simko b171997b39
plugin/discovery: Fix quoting of provider name 2019-04-24 20:47:32 +01:00