Commit Graph

103 Commits

Author SHA1 Message Date
Kristin Laemmert cdf7cc2449
command/json*: updating documentation and adding tests (#19944)
A few minor fixes and cleanups as a result of said tests. Hooray for
eventual consistency!
2019-01-09 08:59:11 -08:00
Nick Fagerlund 7d5db9522f
website: Fix plugin path on Windows (#19423)
...and one other reference to the application data directory.

Context:

https://docs.microsoft.com/en-us/windows/desktop/shell/knownfolderid#folderid_roamingappdata

In newer Windows versions, the folder accessible as `%APPDATA%` (and via various
APIs) is actually at something like "documents and settings\user\application
data\roaming", while earlier versions omit the "\roaming" part of the path. This
means you can confuse people by referring to the "application data" directory by
its human name, because "roaming" is the real application data directory, but it
looks like a subdirectory of "application data".

Thus, it's less confusing to just use the `%APPDATA%` variable, with the added
benefit that you can copy and paste the path and it'll just work in most places.
2018-11-20 16:54:18 -08:00
Sean Carolan b7cf7737f6 website: use a clearer header describing the CLI config file (#19263)
Using a / could be confusing to users who assume it is a directory.
2018-11-02 17:26:52 -07:00
Sander van Harmelen 178ec8f7b4 Remove support for the -module-depth flag
# Conflicts:
#	backend/backend.go
2018-11-02 18:44:04 +01:00
Martin Atkins b2e8987f7e website: Fix references to the now-defunct "Interpolation" page
This has been replaced with an "Expressions" page.

Also includes a number of changes to Markdown style to conform to our
usual conventions, applied automatically by my editor while making these
changes.
2018-10-16 18:48:28 -07:00
Martin Atkins e5e3452ffa website: Reorganize the "Configuration" docs section
With the additional configuration language features coming in Terraform
v0.12, our existing documentation structure is beginning to strain.

Here we reorganize the navigation slightly in order to introduce the
concepts in a more appropriate order so that we can reveal complexity
more gradually. Subsequent commits will revise the content of these
pages to better reflect the new sequencing.

The "Environment Variables" page is moved from the Configuration section
into the "Commands" section, since it is not considered a part of the
configuration language and thus more appropriate in the CLI documentation.
The old placement is reflective of the broader purpose that the
"Configuration" section had originally, but its new focus will be on
the Terraform language (.tf files) in particular, with other aspects of
customizing Terraforms behavior covered in other sections.
2018-10-16 18:46:46 -07:00
Nick Fagerlund b3935b29d7
website: Reconcile docs about plugin discovery and downloading (#18973)
website: Reconcile docs about plugin discovery and downloading

I'm attempting to keep things simple for normal users while making sure we've
got the full behavior written down somewhere for plugin developers.

This commit doesn't stand alone; it's paired with a commit in the
terraform-website repo, to deal with some related content in the "extend"
section.
2018-10-02 16:53:29 -07:00
Sagar2366 db08ec448c
chnage from work to working directory
Sentence correction
2018-09-09 11:10:33 +05:30
Dave Wongillies 9190227bc0 Fix description for state mv and push sub-commands 2018-09-04 19:16:47 -07:00
Nick Fagerlund 4612a71414 website: revise docs for remote backend and credentials config 2018-08-22 14:30:23 -07:00
Sitatirev, Xul ad9e32f1f4
Fix documentation
It looks like the output does not match the command, in fact.
This pull-request fixes this issue.
2018-07-22 23:59:53 +02:00
Kieran Spear fa5d9cc2ca website: Fix spelling mistake (#18311) 2018-06-22 07:31:23 -07:00
Quinn Diggity b2df1d424f website: fixes typo (#18267)
should be maximum not maxiumum
2018-06-18 08:36:28 -07:00
Paddy 931f8ecc41 Fix broken links to /docs/enterprise/run/api.html
We had a couple broken links pointing to the docs for the run API. This
updates them to the new location.
2018-06-13 12:19:07 -07:00
cabillman 3dc1ce3036 docs: Fix small error in resource targeting docs (#17890) 2018-06-11 12:34:25 -07:00
Martin Atkins 6aefa5835c Merge #17218: Add -auto-approve to "terraform destroy" for consistency 2018-03-08 17:42:15 -08:00
Seth Vargo 12f8c90a51 website: Recommend SVG instead of PNG for graph output 2018-03-08 16:22:21 -08: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
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
Nick Fagerlund f0a009c573 website: private module registry documentation 2018-02-07 09:15:55 -08:00
Laura Martin 6e1e614a56 Change -force to -auto-approve when destroying
Since an early version of Terraform, the `destroy` command has always
had the `-force` flag to allow an auto approval of the interactive
prompt. 0.11 introduced `-auto-approve` as default to `false` when using
the `apply` command.

The `-auto-approve` flag was introduced to reduce ambiguity of it's
function, but the `-force` flag was never updated for a destroy.

People often use wrappers when automating commands in Terraform, and the
inconsistency between `apply` and `destroy` means that additional logic
must be added to the wrappers to do similar functions. Both commands are
more or less able to run with similar syntax, and also heavily share
their code.

This commit updates the command in `destroy` to use the `-auto-approve` flag
making working with the Terraform CLI a more consistent experience.

We leave in `-force` in `destroy` for the time-being and flag it as
deprecated to ensure a safe switchover period.
2018-02-01 00:14:42 +00:00
Marco Molteni 5f27730ca3
Update init.html.markdown
Fix typo and replace some "it's" with "it is", according to rules for written English.
2018-01-24 18:41:42 +01:00
James Bardin fe8cb9e847 mention -plugin-dir="" in the docs 2018-01-08 16:51:18 -05:00
Martin Atkins ab2dc0d987 website: "terraform push" version matching requirement
It's important to match the version of local Terraform with the remote Terraform version in Terraform Enterprise when using the "terraform push" command, or else the uploaded configuration package may not be compatible.
2017-12-05 09:28:31 -08:00
Allison Ravenhall fe33661b59 website: update "terraform env" reference to "terraform workspace" 2017-12-05 08:54:25 -08:00
Martin Atkins 400038eda4 command: "terraform apply" uses interactive confirmation by default
In the 0.10 release we added an opt-in mode where Terraform would prompt
interactively for confirmation during apply. We made this opt-in to give
those who wrap Terraform in automation some time to update their scripts
to explicitly opt out of this behavior where appropriate.

Here we switch the default so that a "terraform apply" with no arguments
will -- if it computes a non-empty diff -- display the diff and wait for
the user to type "yes" in similar vein to the "terraform destroy" command.

This makes the commonly-used "terraform apply" a safe workflow for
interactive use, so "terraform plan" is now mainly for use in automation
where a separate planning step is used. The apply command remains
non-interactive when given an explicit plan file.

The previous behavior -- though not recommended -- can be obtained by
explicitly setting the -auto-approve option on the apply command line,
and indeed that is how all of the tests are updated here so that they can
continue to run non-interactively.
2017-11-01 06:54:39 -07:00
Martin Atkins adbb9d0cf9 website: checkpoint settings refer to CLI config file docs
Previously we described inline here where to put the .terraformrc file,
but now we have a separate page all about this file that gives us more
room to describe in more detail where the file is placed and what else it
can do.
2017-09-29 14:03:09 -07:00
Martin Atkins 35959b8689 website: document explicitly the CLI configuration file
Previously this file was mentioned in passing in a few locations. It now
has enough functionality to warrant its own page.
2017-09-29 14:03:09 -07:00
Martin Atkins 2c782e60fa website: documentation for the shell tab-completion support 2017-09-26 14:01:13 -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
Joe Winter b6a464c521 Provide example for terraform taint documentation (#15873)
* Provide example to taint documentation

Provides an example (with similar formatting as
https://www.terraform.io/docs/commands/state/list.html#example-filtering-by-module)
for tainting resources within a module.

* Add documentation for tainting a single resource
2017-08-22 13:47:30 -05:00
James Bardin ea3e87b584 Merge pull request #15768 from hashicorp/jbardin/remote-import
Don't ForceLocal for the import backend
2017-08-11 09:12:46 -04:00
Martin Atkins 4bc88d2585 website: correct the spelling of the -from-module arg to "terraform init" 2017-08-10 17:56:11 -07:00
James Bardin 4034f988df update import command docs
Fix the -state and -state-out wording to be consistent with other
commands. Remove the erroneous reference to remote state in the website
version of the flag description.
2017-08-09 14:01:45 -04:00
James Bardin 2597500b47 reword init documentation for consistency
Reword the paragraph to match the voice and point of view of the rest of
the section. Use the term general termn "plugin" rather than "provider"
2017-08-07 17:28:11 -04:00
Clint 399856001a Merge pull request #15745 from ctavan/improve-provider-plugin-docs
Document how to provide provider plugin overrides
2017-08-07 14:40:14 -05:00
Greg Swift 944a9301df Fix typo of additional 2017-08-07 11:47:42 -05:00
Christoph Tavan b413061fd8
Document how to provide provider plugin overrides
The docs did not mention that it is possible to provide overrides for specific
plugins by placing them into a `terraform.d/plugins/os_arch/` directory inside
the working dir.

Closes #15727.
2017-08-07 10:53:40 +02:00
James Bardin eadda50f02 Merge pull request #15652 from hashicorp/jbardin/state-command
state commands with remote state backends
2017-08-03 13:29:45 -04:00
James Bardin 55d18dcef2 update state rm amd mv docs
Update the documentation to match the current behavior, and make the
usage output and website docs match.
2017-08-03 13:24:23 -04:00
Martin Atkins 8a7a0a7459 command: terraform init -from-module=...
This restores the earlier behavior of the first positional argument to
terraform init in 0.9, but as a command line option.

The positional argument was removed to improve consistency with other
commands that take a working directory as their first positional argument.
It was originally intended that this functionality would return in a
later release along with some other general improvements to Terraform's
module handling, but we're introducing here an interim solution that
uses the existing module source concept, to allow for easier porting of
workflows that previously depended on the automatic copy behavior.

In a future release this feature may change again as the module
improvements design firms up, but we expect it to be broadly compatible
with this temporary state.
2017-07-28 15:23:29 -07:00
Martin Atkins 23ef0e3247 website: more-elaborate "terraform init" docs
The "terraform init" command has a lot of different functionality now,
making it hard to follow all of the options in the previous presentation.
Instead, here we describe each of the steps and its associated options
separately, hopefully making it easier to understand what each option
relates to.

In addition, much of the detail around backend partial configuration is
factored out into the backend configuration page, where it seems more
"at home"; previously it felt hard to follow exactly how partial
configuration would be used, due to the information on it being split over
two different pages.
2017-07-25 08:25:49 -07:00
Kyle McCullough c2d86ed60f
website: documentation for fmt -check flag 2017-07-21 14:37:15 -05:00
Martin Atkins f6dace3476 website: document the Checkpoint service and how to disable it
This is documented for all other Hashicorp products using this service but
was missed for Terraform. This serves as a disclosure of the fact that
Terraform reaches out to a Hashicorp service, an explanation of the
purpose of that request, and instructions on how to disable it in
environments where it is inappropriate or cannot be supported due to a
firewall or other connectivity restrictions.
2017-07-18 16:48:16 -07:00
Dhananjay Balan fd4a2fa262 website: Correct usage for force-unlock command 2017-07-18 09:02:29 -07:00
Robert Liebowitz 8d98fdecac Autoload only .auto.tfvars files 2017-07-05 17:24:17 -07:00
Robert Liebowitz 006744bfe0 Use all tfvars files in working directory
As a side effect, several commands that previously did not have a failure
state can now fail during meta-parameter processing.
2017-07-05 17:24:17 -07:00
Radek Simko 14614a5423 command/validate: Add flag to check that all variables are specified (#13872)
* command/validate: Add flag to check that all variables are specified

* Rename config-only to check-variables
2017-07-05 17:32:29 +01:00
David Glasser 039d36bf91 command: add "apply -auto-approve=false" flag
A common reason to want to use `terraform plan` is to have a chance to
review and confirm a plan before running it.  If in fact that is the
only reason you are running plan, this new `terraform apply -auto-approve=false`
flag provides an easier alternative to

    P=$(mktemp -t plan)
    terraform refresh
    terraform plan -refresh=false -out=$P
    terraform apply $P
    rm $P

The flag defaults to true for now, but in a future version of Terraform it will
default to false.
2017-06-27 11:22:26 -07:00
James Bardin 020959546e add init -verify-plugin to website docs 2017-06-20 13:14:31 -04:00
Martin Atkins a8c58b081c core: -target option to also select resources in descendant modules
Previously the behavior for -target when given a module address was to
target only resources directly within that module, ignoring any resources
defined in child modules.

This behavior turned out to be counter-intuitive, since users expected
the -target address to be interpreted hierarchically.

We'll now use the new "Contains" function for addresses, which provides
a hierarchical "containment" concept that is more consistent with user
expectations. In particular, it allows module.foo to match
module.foo.module.bar.aws_instance.baz, where before that would not have
been true.

Since Contains isn't commutative (unlike Equals) this requires some
special handling for targeting specific indices. When given an argument
like -target=aws_instance.foo[0], the initial graph construction (for
both plan and refresh) is for the resource nodes from configuration, which
have not yet been expanded to separate indexed instances. Thus we need
to do the first pass of TargetsTransformer in mode where indices are
ignored, with the work then completed by the DynamicExpand method which
re-applies the TargetsTransformer in index-sensitive mode.

This is a breaking change for anyone depending on the previous behavior
of -target, since it will now select more resources than before. There is
no way provided to obtain the previous behavior. Eventually we may support
negative targeting, which could then combine with positive targets to
regain the previous behavior as an explicit choice.
2017-06-16 16:36:08 -07:00
James Bardin 4bbabb3df0 update init website docs 2017-06-16 18:31:51 -04:00
Martin Atkins 7ed70bb00e website: new filesystem layout for core/provider split
This repo now contains only the core docs, with other content moving elsewhere.
2017-06-13 11:25:32 -07:00