Commit Graph

24682 Commits

Author SHA1 Message Date
James Bardin
a94f5ee132 prevent panics when encountering nil diffs
While we can't change the behavior of helper/schema at this point, we
can protect against panics in the case of unexpected nils in the
instance diff.
2019-09-04 16:51:42 -04:00
HashiBot
481b25b5d2
Update CHANGELOG.md 2019-09-04 07:47:53 -07:00
Brian Flad
d9704d40bb
Merge pull request #22621 from hashicorp/f-lang-funcs-fileset-enhancements
lang/funcs: Various fileset() function updates for usability and consistency
2019-09-03 23:10:37 -04:00
Pam Selle
3b0de1aa88
Update CHANGELOG.md 2019-09-03 12:29:18 -04:00
Pam Selle
555ed961b2
Merge pull request #22597 from pselle/for-each-wholly-known
Ensure for_each values wholly known for sets
2019-09-03 12:27:24 -04:00
Radek Simko
c4e508ffed
Merge pull request #22654 from hashicorp/plugin-pass
plugin: Pass TerraformVersion from ConfigureRequest
2019-08-31 07:20:30 +01:00
Brian Flad
19cf34114f
lang/funcs: Switch fileset() function glob implementation to github.com/bmatcuk/doublestar to support additional glob patterns
This allows the usage of the glob patterns `**` and `{alternative1,...}` to simplify Terraform configuration logic for more complex file matching.
2019-08-30 20:22:03 -04:00
Brian Flad
769f626a0e
lang/funcs: Remove homedir.Expand() and refactor path trimming with filepath.Rel() in fileset() function
Reference: https://github.com/hashicorp/terraform/pull/22621#pullrequestreview-282259385
2019-08-30 20:19:44 -04:00
Brian Flad
820b79d91d
lang/funcs: Clarification update to MakeFileSetFunc comment for filepath.ToSlash usage 2019-08-30 20:19:44 -04:00
Brian Flad
af7f6ef441
lang/funcs: Update fileset() function to include path as separate first argument, automatically trim the path argument from results, and ensure results are always canonical with forward slash path separators
Reference: https://github.com/hashicorp/terraform/pull/22523#pullrequestreview-279694703

These changes center around better function usability and consistency with other functions. The function has not yet been released, so these breaking changes can be applied safely.
2019-08-30 20:19:44 -04:00
Martin Atkins
aa6dca4912 vendor: go get github.com/chzyer/readline@master
This new version includes Solaris support, the lack of which previously
caused us to disable readline-using features ("terraform console") on
Solaris builds.
2019-08-30 14:42:19 -07:00
Nick Fagerlund
a038f8c43b website: In 0.12, terraform_remote_state syntax differs from backend config 2019-08-30 13:14:36 -07:00
Martin Atkins
e1fb26de94 svchost/disco: Disco.CredentialsSource
Previously we allowed access to the credentials store only indirectly
through the Disco object, and that's fine for callers that only need to
_read_ credentials, but more specialized callers like "terraform login"
and "terraform logout" need more information in order to be transparent
to the user about what they are going to do and where the credentials
are going to be stored.
2019-08-30 10:57:17 -07:00
Martin Atkins
c4076fe6a2 command/cliconfig: EmptyCredentialsSourceForTests
A more convenient interface to get a throwaway empty credentials source
for use in tests, which doesn't interact at all with the real CLI
configuration directory.
2019-08-30 09:39:46 -07:00
Martin Atkins
bc9756882e svchost/disco: Tolerate unpopulated OAuth endpoints
A server is allowed to omit AuthorizationURL if it's using the "password"
grant type, and other future grant type implementations may have similar
accommodations.
2019-08-30 09:39:07 -07:00
Radek Simko
cba55a4e12
plugin: Pass TerraformVersion from ConfigureRequest 2019-08-30 12:12:41 +01:00
Pam Selle
75d3f1e62e
Merge pull request #22614 from heimweh/patch-1
website: fix expression typo
2019-08-28 16:22:48 -04:00
Kristin Laemmert
212d5b0b1c
Mildwonkey/docs updates (#22623)
* website/formatdate: update example

The given example was showing HOUR:MONTH instead of HOUR:MINUTE

Fixes #22598

* website/import: remove reference to no-longer-working option

Users can no longer supply `-config=""` to tell Terraform not to load
configuration for import.

Fixes #22294

* website/provisioners: `host` is required in connection blocks

Fixes #21877

* website/variables: clarify variable definition precedence

It was not entirely obvious that a variable could not be assigned
multiples times in a single source.

Fixes #21682

* website/backend/local: add `workspace_dir` attribute

Fixes #21391

* website/output: `sensitive` outputs are redacted in output

Fixes #21502

* website/backends: sidebar order tweak

It makes sense for backend 'configuration' to appear before 'init'.

Fixes #13796

* Revert "website/formatdate: update example"

This reverts commit ccd93c86ddd15a21625c0767702ee1cc62e77254.
2019-08-28 15:34:22 -04:00
Pam Selle
37e8147c4f Spiffy comment 2019-08-28 15:13:36 -04:00
Chris Griggs
c01c233cec
Merge pull request #22612 from hashicorp/cgriggs01-aviatrix
[Website] Add links to Aviatrix provider
2019-08-28 11:08:58 -07:00
Pam Selle
35016a5ea3 Move things around, add test for resource references 2019-08-28 14:02:11 -04:00
Pam Selle
a810f3b846
Merge pull request #22620 from hashicorp/pselle/docs-formatdate
Fix docs mistake/misleading formatdate
2019-08-28 13:01:06 -04:00
Kristin Laemmert
e2bec484f1
Update CHANGELOG.md 2019-08-28 11:57:59 -04:00
Kristin Laemmert
f4af55d611
command/console: use user-supplied plugin-dir (#22616)
Previously `terraform console` would output an `init required` error if
it was run in a directory originally `init`ed with a `-plugin-dir`
specified.

Fixes #17826
2019-08-28 11:57:05 -04:00
Pam Selle
6e614f3465 Fix docs mistake/misleading 2019-08-28 11:38:26 -04:00
Alexander Hellbom
99c59b833e
website: fix expression typo
exression -> expression
2019-08-28 15:16:49 +02:00
cgriggs01
0ee9397979 Add links to Aviatrix provider 2019-08-27 10:52:04 -07:00
Kristin Laemmert
bcc3af8173
Update CHANGELOG.md 2019-08-27 11:15:26 -04:00
yanndegat
be5280e4e1 remote-state/pg: add option to skip schema creation (#21607)
* add `skip_schema_creation` option
* add sanity check to avoid situations where postgres users
  hasn't been granted the "CREATE SCHEMA" right

closes #21604

Signed-off-by: yann degat <yann@2kmail.net>
2019-08-27 11:14:32 -04:00
Pam Selle
0f3d8b4884 More explicit err testing 2019-08-26 15:30:42 -04:00
Pam Selle
cce35e4a36 update name 2019-08-26 15:27:07 -04:00
Pam Selle
a4d2bf45fc Update tests, plan test is able to reproduce panic without fix 2019-08-26 15:25:03 -04:00
Pam Selle
0eb7cfd0d9 Check for wholly known for forEach evaluation, add some tests 2019-08-26 15:16:25 -04:00
Pam Selle
c93b0199f3
Update CHANGELOG.md 2019-08-26 12:30:59 -04:00
Pam Selle
cf687a94b5
Merge pull request #22523 from hashicorp/f-lang-funcs-filelist
lang/funcs: Add fileset function
2019-08-26 12:30:13 -04:00
Pam Selle
8db00db564
Merge pull request #22559 from kayrus/swift-backend-docs
Backend: add missing swift options into docs
2019-08-26 12:05:37 -04:00
Pam Selle
eddd76fe9b
Merge pull request #22556 from gopalsi/patch-1
Fix Typo
2019-08-26 11:58:36 -04:00
Pam Selle
c443a71f63
Merge branch 'master' into patch-1 2019-08-26 11:58:26 -04:00
James Bardin
e89bed6751
Merge pull request #22342 from xiaozhu36/master
backend/oss: added support for profile config
2019-08-23 19:36:54 -04:00
Martin Atkins
22a2580e93 main: Use the new cliconfig package credentials source
This should not cause any change in behavior yet, but using this new
implementation will allow the "terraform login" and "terraform logout"
commands to store and forget credentials when they are implemented in
subsequent commits.
2019-08-23 11:57:11 -07:00
Martin Atkins
8272d3b101 command/cliconfig: Remove command dependency
This was a leftover from the migration of these types from the main
package, but we don't actually need or want this here because this
particular detail is still handled by the main package, and because the
cliconfig package must not depend on the command package in order to avoid
an import cycle.
2019-08-23 11:57:11 -07:00
Martin Atkins
1e2da4f776 command/cliconfig: New CredentialsSource implementation
This new implementation is not yet used, but should eventually replace the
technique of composing together various types from the svchost/auth
package, since our requirements are now complex enough that they're more
straightforward to express in direct code within a single type than as
a composition of the building blocks in the svchost/auth package.
2019-08-23 11:57:11 -07:00
Martin Atkins
ec8dadcfa9 svchost/auth: store and forget operations for helper programs
This introduces two new verbs to the credentials helper protocol to store
and forget credentials, and uses them to implement StoreForHost and
ForgetForHost.
2019-08-23 11:57:11 -07:00
Martin Atkins
821d0401bc svchost/auth: New API for storing and forgetting credentials
This new functionality will be used as part of implementing the
"terraform login" and "terraform logout" commands.

As of this commit, the storage codepaths are all just stubs. Subsequent
commits will implement these new methods for each of the different
physical credentials sources.
2019-08-23 11:57:11 -07:00
Martin Atkins
f3fe3bfb5f vendor: go get golang.org/x/sys
We'll use this to call the Windows ReplaceFile API for safe file
replacement when updating credentials.tf.json in "terraform login" and
"terraform logout".
2019-08-23 11:57:11 -07:00
yuanye
b69c0b4199 oss backend support profile 2019-08-23 21:04:34 +08:00
James Bardin
10d94fb764
Merge pull request #21967 from williams-brian/SSE-C_Remote_State
Add support for SSE-C to S3 backend
2019-08-22 17:30:28 -04:00
Martin Atkins
31a9790080 svchost/disco: Allow oauth client services to specify grant types
Previously we just assumed support for the authorization code grant type,
but now we'll allow the host to declare which grant types it supports
to allow for more flexibility in host login implementations. We may extend
the set of supported grant types in future.
2019-08-22 14:01:44 -07:00
Martin Atkins
5590efcd33 svchost/disco: Allow services that act as OAuth clients
The OAuth specification requires several distinct arguments to be provided
to configure a client, rather than just a URL. To accommodate this, we'll
add a new method to the service discovery API to retrieve OAuth client
information in a Terraform-specific form. (The OAuth specification itself
considers this out of scope, because most OAuth clients are configured
by just hard-coding these settings into them for a particular remote
service.)
2019-08-22 14:01:44 -07:00
tf-release-bot
1140ca9cb5 Cleanup after v0.12.7 release 2019-08-22 20:08:37 +00:00