Commit Graph

21294 Commits

Author SHA1 Message Date
Martin Atkins 59a49c6b3f vendor: update hcl2 and cty
This is largely minor bugfixes for issues found since we last updated the
vendoring. There are some new features here that Terraform is not yet
using and thus present little risk.

In particular this includes the HCL-JSON spec change where arrays can now
be used at any level in a block label structure, to allow for preserving
the relative order of blocks.
2018-03-08 11:10:34 -08:00
Paul Tyng a61b40c7a2
Merge pull request #17517 from ivanovteo/ivanovteo/docs-providers-small-typo
Trivial documentation fix
2018-03-07 11:15:23 -05:00
Andrei Ivanov 53110e5c1f - fixed a trivial typo 2018-03-07 17:57:25 +02:00
Martin Atkins ea50f455ed
Update CHANGELOG.md 2018-03-05 16:00:19 -08:00
Kristiyan Nikolov 999f9096c1 provisioner/local-exec: Allow passing environment variables 2018-03-05 15:58:49 -08:00
Chris Griggs 6f98b4d4be website: two more community providers 2018-03-05 15:40:08 -08:00
Anthony Galea 664391c254 website: fix various typos 2018-03-02 09:16:01 -08:00
Paul Tyng 26058acdef
Merge pull request #17467 from paultyng/pt/useragent
Standardize on User-Agent usage for registry, provider downloads, etc.
2018-03-01 09:13:39 -05:00
Chris Griggs 1da2152482 website: Link to MongoDB Atlas community provider 2018-02-28 16:47:56 -08:00
Paul Tyng c868092d2d
Standardize http.Client creation with User-Agent 2018-02-28 12:09:50 -05:00
Paul Tyng 344e8fca05
Relax typing to allow for http.RoundTripper 2018-02-28 11:40:17 -05:00
Nick Fagerlund 66ff8f8bed website: Deprecation notes about "terraform push"
Also:

- In the getting started guide, the TFE content was all tailored to the older
  run-locally workflow. I've replaced it with some brief explanation and a link
  to the dedicated TFE getting started guide.
- Fixed a sidebar link glitch in the configuration section. (Both "Terraform"
  and "Terraform Enterprise" were marked as active if you were on the TFE page.)
- Renamed the "Terraform Enterprise" page "Terraform Push." (Some people have
  gotten confused and landed on this page when trying to set up the `atlas`
  remote backend.)
2018-02-27 14:48:04 -08:00
James Bardin dc8036636a
Merge pull request #17422 from hashicorp/jbardin/state-locking
Add StateLocker interface to backend operations
2018-02-27 11:38:55 -05:00
James Bardin 2b97585d46 improve clistate.Locker docs 2018-02-27 10:49:06 -05:00
azban 3f2f07d5d0 website: don't document unimplemented salt-masterless grains_file 2018-02-26 11:06:25 -08:00
Martin Atkins fe3a5f100d
Update CHANGELOG.md 2018-02-26 10:55:45 -08:00
Uriel Corfa 07a20365de cli: "terraform state list" -id argument
A new -id option to "terraform state list" which constraints the output of the command to resources whose id is equal to the flag value.
2018-02-26 10:54:48 -08:00
James Bardin 81dc23c65d
Merge pull request #17434 from NikkeiFTLearning/saltstack-race-problem
fix ssh problem with communicator.Retry
2018-02-26 09:56:13 -05:00
Paweł Socha be8d39210d Wait for ssh connection 2018-02-26 15:40:26 +01:00
Brian Flad 7bb2c17630
Merge pull request #17428 from hashicorp/v-terraform-provider-aws-v1.10.0
Deps: Bump terraform-provider-aws@v1.10.0 and aws-sdk-go@v1.12.75
2018-02-26 03:37:00 -08:00
Paweł Socha 627bb24ea6 fix ssh problem with communicator.Retry 2018-02-26 10:27:14 +01:00
Brian Flad 8ee936a068 Deps: Bump terraform-provider-aws@v1.10.0 and aws-sdk-go@v1.12.75 2018-02-24 19:52:10 -08:00
James Bardin bdd475e149 use the new clistate.Locker in commands
Use the new StateLocker field to provide a wrapper for locking the state
during terraform.Context creation in the commands that directly
manipulate the state.
2018-02-23 16:48:15 -05:00
James Bardin e9a76808df create clistate.Locker interface
Simplify the use of clistate.Lock by creating a clistate.Locker
instance, which stores the context of locking a state, to allow unlock
to be called without knowledge of how the state was locked.

This alows the backend code to bring the needed UI methods to the point
where the state is locked, and still unlock the state from an outer
scope.

Provide a NoopLocker as well, so that callers can always call Unlock
without verifying the status of the lock.

Add the StateLocker field to the backend.Operation, so that the state
lock can be carried between the different function scopes of the backend
code. This will allow the backend context to lock the state before it's
read, while allowing the different operations to unlock the state when
they complete.
2018-02-23 16:48:15 -05:00
Martin Atkins 9cf5350590
Update CHANGELOG.md 2018-02-23 10:50:18 -08:00
James Bardin 12bda53558 Revert "create clistate.Locker interface"
This reverts commit e88bd74bb7.
2018-02-23 11:31:13 -05:00
James Bardin 626c5ed672 Revert "add backend.Operation.StateLocker"
This reverts commit d3f7edeb27.
2018-02-23 11:31:12 -05:00
James Bardin 1d9adc3b72 Revert "use the new clistate.Locker in the local backend"
This reverts commit 0b804a9686.
2018-02-23 11:31:10 -05:00
James Bardin 3de0d24554 Revert "use the new clistate.Locker in commands"
This reverts commit 400f6ca4c5.
2018-02-23 11:31:06 -05:00
James Bardin 400f6ca4c5 use the new clistate.Locker in commands
Use the new StateLocker field to provide a wrapper for locking the state
during terraform.Context creation in the commands that directly
manipulate the state.
2018-02-23 11:28:47 -05:00
James Bardin 0b804a9686 use the new clistate.Locker in the local backend
Use the new StateLocker field to provide a wrapper for locking the state
during terraform.Context creation. We can then remove all the state
locking code from individual operations, and unlock them in one place
inside the main Operation method.
2018-02-23 11:28:13 -05:00
James Bardin d3f7edeb27 add backend.Operation.StateLocker
Add the StateLocker field so that the state lock can be carried between
the different function scopes of the backend code. This will allow the
backend context to lock the state before it's read, while allowing the
different operations to unlock the state when they complete.
2018-02-23 11:22:28 -05:00
James Bardin e88bd74bb7 create clistate.Locker interface
Simplify the use of clistate.Lock by creating a clistate.Locker
instance, which stores the context of locking a state, to allow unlock
to be called without knowledge of how the state was locked.

This alows the backend code to bring the needed UI methods to the point
where the state is locked, and still unlock the state from an outer
scope.
2018-02-23 11:21:21 -05:00
James Bardin 7c6072c2a0
Merge pull request #17397 from hashicorp/jbardin/gcs-lock-info
Fix reported GCS state lock ID
2018-02-21 16:06:03 -05:00
James Bardin e5392a194e
Merge pull request #17408 from hashicorp/jbardin/makefile
finish removing vet from the makefile
2018-02-21 16:05:14 -05:00
James Bardin ec339a228e update CHANGELOG.md 2018-02-21 15:36:29 -05:00
James Bardin ec62819b3a finish removing vet from the makefile
The test target will already cover vet, since it's run as part of the
test command now.

Also remove the `go test -i` since it's no longer needed with the new
build cache.
2018-02-21 15:30:29 -05:00
James Bardin 6ebb7aab56
Merge pull request #17401 from hashicorp/jbardin/go1.10
update to go1.10
2018-02-21 15:27:39 -05:00
Michael Sambol abac457033 website: Fix typo in Getting Started guide 2018-02-21 11:42:22 -08:00
James Bardin d4415bdd7d try travis go version as string 2018-02-21 11:37:06 -05:00
James Bardin 3bc1dcf21a update travis to build with go1.10
Remove the vet target too, since vet is now always run with every test.
2018-02-21 11:27:46 -05:00
James Bardin a37acb1837 gofmt with go1.10 2018-02-21 10:22:08 -05:00
James Bardin 8242c773b8 missed the local state backend 2018-02-20 22:09:54 -05:00
James Bardin 57cbcbe99d update remote state tests to use new test helpers 2018-02-20 21:05:58 -05:00
James Bardin 112c37458f report the proper lock id from a state lock error
Fix the now failing state unlock test by reporting the correct ID.

The ID used by GCS is the generation number of the info object, which
isn't known until the info is already written out. While we can't get
the correct ID from the info data for the error rmessage, we can update
it with the generation number after it's read.
2018-02-20 20:54:01 -05:00
James Bardin 1fee5ae172 update gcs to use the new backend tests 2018-02-20 20:36:08 -05:00
James Bardin 85d6b1d9cc add test for lock error and force-unlock
This adds a general test to verify that a remote state backend returns
the expected error type when it cannot lock a state. It then extracts
the ID reported in the error, and attempts to unlock the state using
that ID, which simulated the force-unlock scenario. This is a separate
test, since not all backends have persistent locks that can be unlocked
later.

We also split out the backend test to be called individually as needed.
2018-02-20 20:32:07 -05:00
James Bardin 1d0f5fdac9 update CHANGELOG.md 2018-02-16 14:43:16 -05:00
Stuart Auld 7d1f594f54 helper/resource: don't panic if a requested module does not exist 2018-02-16 11:32:49 -08:00
chrisjob1021 10bb21e9c4 provisioner/local-exec: Optional "working_dir" argument
This new argument allows overriding of the working directory of the child process, with the default still being the working directory of Terraform itself.
2018-02-16 11:31:11 -08:00