Commit Graph

20535 Commits

Author SHA1 Message Date
Martin Atkins 0fe43c8977 cli: allow disabling "next steps" message in terraform plan
In #15884 we adjusted the plan output to give an explicit command to run
to apply a plan, whereas before this command was just alluded to in the
prose.

Since releasing that, we've got good feedback that it's confusing to
include such instructions when Terraform is running in a workflow
automation tool, because such tools usually abstract away exactly what
commands are run and require users to take different actions to
proceed through the workflow.

To accommodate such environments while retaining helpful messages for
normal CLI usage, here we introduce a new environment variable
TF_IN_AUTOMATION which, when set to a non-empty value, is a hint to
Terraform that it isn't being run in an interactive command shell and
it should thus tone down the "next steps" messaging.

The documentation for this setting is included as part of the "...in
automation" guide since it's not generally useful in other cases. We also
intentionally disclaim comprehensive support for this since we want to
avoid creating an extreme number of "if running in automation..."
codepaths that would increase the testing matrix and hurt maintainability.

The focus is specifically on the output of the three commands we give in
the automation guide, which at present means the following two situations:

* "terraform init" does not include the final paragraphs that suggest
  running "terraform plan" and tell you in what situations you might need
  to re-run "terraform init".
* "terraform plan" does not include the final paragraphs that either
  warn about not specifying "-out=..." or instruct to run
  "terraform apply" with the generated plan file.
2017-09-14 10:51:41 -07:00
Martin Atkins 5221e51749 Update CHANGELOG.md 2017-09-14 09:56:35 -07:00
Martin Atkins 2b8160cafe Update CHANGELOG.md 2017-09-14 09:52:27 -07:00
Martin Atkins b95610c173 Merge #15387: terraform fmt -check option
This new option causes fmt to return a non-zero exit code if any inconsistencies are detected.
2017-09-14 09:51:10 -07:00
Martin Atkins f208fc5a03 Update CHANGELOG.md 2017-09-14 09:48:37 -07:00
Micah Hausler 7fa4b648bb config: multi-line "indent" function
This function prepends a number of spaces on to all but the first line
of a string containing multiple lines of text.
2017-09-14 09:47:48 -07:00
James Bardin 4789045911 Merge pull request #16099 from hashicorp/jbardin/update-go-getter
update go-getter
2017-09-14 12:44:56 -04:00
James Bardin e39da6e1c9 update go-getter 2017-09-14 12:30:55 -04:00
Martin Atkins 144bc9e5f6 Update CHANGELOG.md 2017-09-14 09:29:11 -07:00
Wang Guoliang 9a97c348f0
optimization:Merge slices 2017-09-13 21:08:41 +08:00
Wang Guoliang 383b0c176c
optimization:use bytes.Equal instead of bytes.Compare 2017-09-13 20:58:14 +08:00
Florian Forster ce85600cd4 backend/local: Remove unused const DefaultDataDir.
Not to be confused with the const of the same name in the "command"
package.
2017-09-12 08:20:12 +02:00
Martin Atkins fe4cfd03b5 command/format: restore "(forces new resource)" caption
In 3ea1592 the plan rendering was refactored to add an extra indirection
of producing a display-oriented plan object first and then rendering from
that object.

There was a logic error while adapting the existing plan rendering code
to use the new display-oriented object: the core InstanceDiff object sets
the "Destroy" flag (a boolean) for both DiffDestroy and DiffDestroyCreate,
and so this code previously checked r.Destroy to recognize the
"destroy-create" case. This was incorrectly adapted to a check for the
display action being DiffDestroy, when it should actually have been
DiffDestroyCreate.

The effect of this bug was to cause the "(forces new resource)"
annotations to not be displayed on attributes, though the resource-level
information still correctly reflected that a new resource was required.

This fix restores the attribute-level annotations.
2017-09-11 12:55:32 -07:00
Paul Banks 71b58abf9b Filling out API docs. Some TODOs remain 2017-09-11 20:11:02 +01:00
Martin Atkins 93651450b1 website: don't talk about graphs in the Getting Started guide
Previously we just assumed the reader was familiar with the idea of a
graph but didn't explain it.

Since graphs are an implementation detail of Terraform, rather than
essential information needed for new users, this revises the introduction
text to talk only about _dependencies_, which we assume the user is
familiar with as a more practical concept.

Additionally, Paul Hinze did a great talk on how Terraform uses graphs
at HashiConf 2016 which is good additional content for our existing
"Graph Internals" page, which includes a concise explanation of the
basics of graph theory.
2017-09-11 11:09:11 -07:00
Mitchell Hashimoto 3bb89e89d6 website: note repo desc for publishing, fix broken link 2017-09-11 14:00:55 +01:00
Mitchell Hashimoto 9b363cd7d4 website: add LICENSE to standard module structure 2017-09-11 14:00:55 +01:00
Mitchell Hashimoto e71b271492 website: publishing and private registry docs 2017-09-11 14:00:55 +01:00
Mitchell Hashimoto de50eeb6b6 website: more registry docs 2017-09-11 14:00:55 +01:00
Mitchell Hashimoto b4f2fae0a6 website: api docs for the registry 2017-09-11 14:00:55 +01:00
Mitchell Hashimoto 331b6f339a website: finding and using registry modules 2017-09-11 14:00:55 +01:00
Mitchell Hashimoto 0718e9ce3f website: standard module structure 2017-09-11 14:00:55 +01:00
Mitchell Hashimoto bf7f4d243d website: working on registry docs 2017-09-11 14:00:54 +01:00
Mitchell Hashimoto 1c098ce4ec website: trivial change to make branch 2017-09-11 14:00:54 +01:00
Bruno Miguel Custodio 4d23195846
Add a note about running the 'etcdv3' tests. 2017-09-09 08:17:56 +01:00
Bruno Miguel Custodio 524c3934c6
Add TLS support. 2017-09-09 08:03:59 +01:00
Bruno Miguel Custodio c8ff10f603
Reuse 'etcd' client. 2017-09-09 00:21:23 +01:00
Bruno Miguel Custodio 6daf1d9d84
Allow for username and password to be read from envvars. 2017-09-08 23:41:27 +01:00
Bruno Miguel Custodio 8f7b315037
Add documentation. 2017-09-08 23:40:05 +01:00
Bruno Miguel Custodio 54dc50ec5c
Cleanup 'etcd' after every test. 2017-09-08 22:49:23 +01:00
Bruno Miguel Custodio 3c21b9c56f
Get rid of 'keyEnvPrefix'. 2017-09-08 22:34:15 +01:00
Chris Marchesi 9504d17bd9 Merge pull request #16036 from hashicorp/f-import-state-testing-id-func
helper/resource: Add ImportStateIdFunc
2017-09-08 13:40:31 -07:00
Shih Oon Liong bcfb63098a website: Example of using maps with local values 2017-09-08 10:33:56 -07:00
Bruno Miguel Custodio 6570948bea
Fixing the test suite. 2017-09-08 17:46:39 +01:00
Bruno Miguel Custodio 038f5eb638
Remove 'lockSuffix' as not needed in 'etcd' v3. 2017-09-08 16:59:39 +01:00
Bruno Miguel Custodio bb4dec6032
Make sure we don't relock. 2017-09-08 16:22:14 +01:00
Bruno Miguel Custodio b8f4f6d3e2
Delete lock info when unlocking. 2017-09-08 15:21:06 +01:00
Bruno Miguel Custodio b896348230
Sort the result of 'Backend.States()'. 2017-09-08 12:25:15 +01:00
Bruno Miguel Custodio 70aad79b6e
Make 'endpoints' a schema.TypeList. 2017-09-08 12:16:00 +01:00
Bruno Miguel Custodio fee5cabeda
Make 'gofmt' happy. 2017-09-08 10:22:58 +01:00
Bruno Miguel Custodio 8afb8248d5
Bump to 'etcd' v3.2.7. 2017-09-08 10:18:12 +01:00
Bruno Miguel Custodio 52c97e9fc9
First steps towards an 'etcdv3' backend. 2017-09-08 09:43:33 +01:00
Justin Campbell 1f63a96b10 Merge pull request #16041 from justincampbell/website-local-values-usage-example
docs: Add local values usage example
2017-09-07 18:03:13 -04:00
Justin Campbell fd4cc78839 docs: Add local values usage example 2017-09-07 13:49:33 -04:00
Radek Simko 9f570a0c84 Merge pull request #16037 from hashicorp/b-readme-logo-url
docs: Fix logo URL in Readme
2017-09-07 17:48:40 +01:00
Radek Simko f729ef42ff docs: Fix logo URL in Readme 2017-09-07 11:14:42 +01:00
Chris Marchesi dc1f155728
helper/resource: Failure case for ImportStateIdFunc
Just to make sure returning an error was working.
2017-09-06 19:51:01 -07:00
Chris Marchesi 7bba1d0c95
helper/resource: Add ImportStateIdFunc
Add an ImportStateIdFunc field to the ImportState testing functionality.
This will allow for more powerful generation of complex import state IDs
that can't be accomplished by ImportStateId or ImportStateIdPrefix
themselves.
2017-09-06 19:44:43 -07:00
James Bardin 25f6e61047 release: clean up after v0.10.4 2017-09-06 20:33:48 +00:00
James Bardin 10df48ef40
v0.10.4 2017-09-06 20:22:10 +00:00