Commit Graph

1024 Commits

Author SHA1 Message Date
Chris Griggs 38afbb34c6 [Website] Add MetalCloud provider links 2020-01-22 08:44:00 -08:00
Avi Zurel 96645d7ea7 website: Better example for running 0.12upgrade across many directories at once 2020-01-21 18:28:06 -08:00
Chris Griggs 9ea88f22fc add/update community provider listings 2020-01-21 17:12:05 -08:00
Chris Griggs 2010ce2804 add/update community provider listings 2020-01-21 17:08:06 -08:00
Kristin Laemmert 4c221cbcb9
website: document optional syntax for required_providers setting (#23854) 2020-01-14 07:59:18 -05:00
Chris Griggs ffbcf55817 [Website]add checkpoint links 2020-01-13 13:14:38 -08:00
Chris Griggs 1a2ea70027 [Website]add checkpoint links 2020-01-13 13:13:34 -08:00
Paul Tyng a53832badd
Shameless self promotion 2020-01-13 09:58:01 -05:00
ZMI-RyanMann 66411b5ca0 website/docs: Updated documentation for range function pseudocode (#23823) 2020-01-13 09:17:47 -05:00
Martin Atkins ff4ea042c2 config: Allow module authors to specify validation rules for variables
The existing "type" argument allows specifying a type constraint that
allows for some basic validation, but often there are more constraints on
a variable value than just its type.

This new feature (requiring an experiment opt-in for now, while we refine
it) allows specifying arbitrary validation rules for any variable which
can then cause custom error messages to be returned when a caller provides
an inappropriate value.

    variable "example" {
      validation {
        condition = var.example != "nope"
        error_message = "Example value must not be \"nope\"."
      }
    }

The core parts of this are designed to do as little new work as possible
when no validations are specified, and thus the main new checking codepath
here can therefore only run when the experiment is enabled in order to
permit having validations.
2020-01-10 15:23:25 -08:00
Martin Atkins 02576988c1 lang: "try" and "can" functions
These are intended to make it easier to work with arbitrary data
structures whose shape might not be known statically, such as the result
of jsondecode(...) or yamldecode(...) of data from a separate system.

For example, in an object value which has attributes that may or may not
be set we can concisely provide a fallback value to use when the attribute
isn't set:

    try(local.example.foo, "fallback-foo")

Using a "try to evaluate" model rather than explicit testing fits better
with the usual programming model of the Terraform language where values
are normally automatically converted to the necessary type where possible:
the given expression is subject to all of the same normal type conversions,
which avoids inadvertently creating a more restrictive evaluation model
as might happen if this were handled using checks like a hypothetical
isobject(...) function, etc.
2020-01-10 15:23:25 -08:00
Pam Selle cd6c93774a Update docs to reflect current behavior 2020-01-08 16:51:42 -05:00
Martin Atkins 2a95d98383 docs: terraform state show is not machine-readable
In earlier versions of Terraform the result of terraform state show was
in the pre-0.12 "flatmap" structure that was unable to reflect nested
data structures. That was fixed in Terraform 0.12, but as a consequence
this statement about the output being machine-parseable (which was
debateable even in older versions) is incorrect.

Fortunately, we now have "terraform show -json" to get output that is
intentionally machine-parseable, so we'll recommend to use that instead
here. The JSON output of that command is a superset of what's produced by
"terraform state show", so should be usable to meet any use-case that
might previously have been met by parsing the "terraform state show"
output.
2020-01-07 09:39:20 -08:00
Pam Selle 948d4d0ecf
Merge pull request #23749 from jasonwalsh/master
website: update publishing modules documentation
2020-01-07 16:58:36 +01:00
Pam Selle 4977120764
Merge pull request #23733 from GennadySpb/patch-1
Change Yandex.Cloud provider name in index
2020-01-06 21:37:03 +01:00
jasonwalsh 62aae82913
website: update publishing modules documentation 2019-12-24 10:22:59 -05:00
Nick Fagerlund 413e423bba website: Use canonical URLs for learn.hashicorp.com links
The .html suffix redirects correctly, but it's not the 'real' path and thus
can throw off analytics.
2019-12-20 16:06:00 -08:00
GennadySpb e4c4c8cab5
Change Yandex.Cloud provider name in index
'Yandex' -> 'Yandex.Cloud'
2019-12-20 11:48:40 +03:00
Nick Fagerlund c0176aeab3 website: Revise sensitive data in state page 2019-12-18 11:39:04 -08:00
Pam Selle 76831793d0
Merge pull request #23265 from lucazz/update_docs_for_outputs
Update Output values docs
2019-12-17 07:34:46 -05:00
Pam Selle 3bcea18d1c
Update outputs.html.md 2019-12-17 07:33:11 -05:00
Pam Selle 31b56207e0
Update outputs.html.md 2019-12-17 07:32:22 -05:00
Pam Selle a93298bd14
Merge pull request #23656 from hashicorp/paddy_gcs_backend_env_var
Add a backend-specific env var for the GCS backend.
2019-12-17 07:30:41 -05:00
Igor Vodka be89975667
Fix markdown being misused in docs 2019-12-16 16:29:47 +03:00
Pam Selle 5db7afa545
Merge pull request #23645 from patryk/patch-1
Cloudflare, not CloudFlare
2019-12-12 16:48:14 -05:00
Paddy Carver b8752c7610 Add a backend-specific env var for the GCS backend.
Right now, the only environment variable available is the same
environment variable that will be picked up by the GCP provider. Users
would like to be able to store state in separate projects or accounts or
otherwise authenticate to the provider with a service account that
doesn't have access to the state. This seems like a reasonable enough
practice to me, and the solution seems straightforward--offer an
environment variable that doesn't mean anything to the provider to
configure the backend credentials. I've added GOOGLE_BACKEND_CREDENTIALS
to manage just the backend credentials, and documented it appropriately.
2019-12-12 03:35:39 -08:00
Martin Atkins bfbd00a23c website: Note about using jsonencode/yamlencode in templatefile
It's a common source of errors to try to produce JSON or YAML syntax
using string concatenation via our template language but to miss some
details like correct string escaping, quoting, required commas, etc.

The jsonencode and yamlencode functions are a better way to generate JSON
and YAML, but it's not immediately obvious that both of these functions
are available for use in external templates (via templatefile) too.

Given that questions related to this come up a lot in our community forum
and elsewhere, it seems worth having a documentation section to show the
pattern of having a template that consists only of a single function call.
2019-12-11 12:57:01 -08:00
Patryk Szczygłowski 03739a99ff
Cloudflare, not CloudFlare 2019-12-11 16:00:33 +00:00
Martin Atkins c06675c616 command: New -compact-warnings option
When warnings appear in isolation (not accompanied by an error) it's
reasonable to want to defer resolving them for a while because they are
not actually blocking immediate work.

However, our warning messages tend to be long by default in order to
include all of the necessary context to understand the implications of
the warning, and that can make them overwhelming when combined with other
output.

As a compromise, this adds a new CLI option -compact-warnings which is
supported for all the main operation commands and which uses a more
compact format to print out warnings as long as they aren't also
accompanied by errors.

The default remains unchanged except that the threshold for consolidating
warning messages is reduced to one so that we'll now only show one of
each distinct warning summary.

Full warning messages are always shown if there's at least one error
included in the diagnostic set too, because in that case the warning
message could contain additional context to help understand the error.
2019-12-10 11:53:14 -08:00
cgriggs01 c355fbd67c add stackpath links 2019-12-05 16:29:01 -08:00
cgriggs01 650250c471 move provider link page 2019-11-26 17:28:21 -08:00
Graham Davison e32641c9ce website/docs: Corrects function name in `cidrsubnets` function documentation (#23473) 2019-11-26 07:50:32 -05:00
cgriggs01 1c9ed3927a add commmunity providers 2019-11-21 16:48:36 -08:00
Chris Griggs 7ef92417d1
Merge pull request #23456 from hashicorp/cgriggs01-opennebula
[Website] OpenNebula provider links
2019-11-21 10:42:08 -08:00
Jon Schulman 722eae2cec website: Fix example reference for remote backend (#23455)
Example reference had a missing `=` sign on line 133; this causes the workspace reference not to parse properly
2019-11-21 10:18:24 -08:00
cgriggs01 b82a266f40 add opennebula links 2019-11-20 16:00:19 -08:00
Nick Fagerlund 6af552bea6 website: interpolation: clean up more placeholder formatting 2019-11-18 12:32:51 -08:00
Carlos Vega Meyer fa22084e3a website: interpolation.html.md: "module" is literal
`MODULE` should be lowercase since it's not a placeholder for the actual module name.
2019-11-18 12:32:51 -08:00
George Christou 91100c003c lang/funcs: Add more `trim*` functions (#23016)
* lang/funcs: Add `trim*` functions
2019-11-18 08:31:44 -05:00
cgriggs01 5188f5d5c4 add huawei links 2019-11-13 09:18:26 -08:00
Martin Atkins 2423f266fb website: example of "terraform taint" with a grandchild module
I've seen folks ask about how to express this in resource address syntax
a number of times now, so adding this example here to illustrate how it
looks when there are multiple levels of module to traverse through.

This is redundant with other information further up the page, but having
it as an entirely separate example gives an opportunity to include more
introductory text to explain what the example is showing.
2019-11-11 10:12:11 -08:00
cgriggs01 ebb0ca2d23 [Website] Provider links 2019-11-08 14:33:04 -08:00
cgriggs01 4a46d0c212 [Website] vThunder links 2019-11-08 10:18:07 -08:00
Yuki Ito 72c910cebc website: Fix typographical errors in the docs for base64sha256/512 2019-11-08 09:43:27 -08:00
andrewjkeith 6cb9aaacfe website: Fix extension_requests argument name for Puppet provisioner 2019-11-06 17:14:12 -08:00
Paddy ba7679b679 website: Remove reference to the now-deprecated pgp_key provider design pattern 2019-11-06 17:05:09 -08:00
Roger Berlind de4ef9c546 website: Clarify workspace concepts for remote backend
There are some differences between the Terraform CLI and Terraform Cloud ideas of workspaces.

This documentation aims to explain those differences and show different patterns for configuring the remote backend and the implications of different approaches.
2019-11-06 17:03:20 -08:00
James Bardin cf49f794d7
Merge pull request #22821 from xiaozhu36/master
backend(oss): add a new field ecs_role_name to support more scenario
2019-11-05 18:11:53 -05:00
cgriggs01 a5ad6dd57b update CDA and Okta 2019-11-04 10:13:43 -08:00
Lucas do Amaral Saboya 806397803c
Update Output values docs. 2019-11-02 17:56:16 -03:00
He Guimin bfae627112 add a new field ecs_role_name to support more scenario 2019-11-02 00:09:46 +08:00
Pam Selle f9f7320438
Merge pull request #17911 from vkatsikaros/patch-2
Expand example explanation
2019-11-01 11:49:27 -04:00
Pam Selle 4f1d363b98 Change wording back to attach, add for_each mention 2019-11-01 11:47:46 -04:00
vkatsikaros 22321efa71 Expand example explanation
As mentioned in  #17871 the current example can hide the fact that the module
path plays an important role. The example's explanation is expanded.

Moreover, the verb "attach" is replaced with "map" to make the vocabulary
consistent with the wording in the documentation of the terraform state.
2019-11-01 11:44:39 -04:00
Pam Selle 5070ab7989
Merge pull request #23185 from scott1138/patch-1
Update taint docs - for_each
2019-10-31 13:16:53 -04:00
cgriggs01 e3b18cd0d9 [Website] CherryServer doc links 2019-10-30 10:55:01 -07:00
Martin Atkins f8a32f0b83 website: Consistently recommend the required_providers block
Previously we were inconsistent in whether we were recommending the
new required_providers block or the "version" setting inside a "provider"
block.
2019-10-28 15:56:12 -07:00
Martin Atkins 7c110f9cf8 website: provider version constraints in modules 2019-10-28 15:56:12 -07:00
Thomas Alton ddd0d2a442 website: Provider proxy config only supports alias 2019-10-28 15:56:12 -07:00
Thomas Alton 24386bcfcb website: Link to `required_providers` block from provider documentation 2019-10-28 15:56:12 -07:00
Colby Rome d58d91a6b2 website: Fix a missing word in the Module Composition page 2019-10-28 15:19:26 -07:00
Pam Selle e44800a696
Merge pull request #23209 from pselle/docs-address
Quote differently so render works on taint docs
2019-10-28 16:56:44 -04:00
Chris Griggs 334c8e9dbb
Merge pull request #23212 from hashicorp/cgriggs01-dome9-links
[Website] Dome9 provider links
2019-10-28 13:22:44 -07:00
Justin Campbell 07624eeb31
website: Add Terraform Registry Provider Docs page (#23139)
Co-Authored-By: Kim Ngo <kngo@hashicorp.com>
Co-Authored-By: Nick Fagerlund <nick@hashicorp.com>
2019-10-28 16:05:22 -04:00
cgriggs01 7e53919912 [Website] Dome9 provider links 2019-10-28 10:45:25 -07:00
Pam Selle 22ae5cf52d Quote differently so render works 2019-10-28 13:04:38 -04:00
Chris Griggs 8a34c33ad3
Merge pull request #23183 from hashicorp/cgriggs01-vultr-links
[Website] Vultr provider links
2019-10-24 13:20:08 -07:00
Pam Selle 5b453f6ba9
Merge pull request #23186 from pselle/pselle/docs-syntax-link
Docs around splat and for_each
2019-10-24 16:15:18 -04:00
Pam Selle 566f22a34e Docs around splat 2019-10-24 16:09:34 -04:00
scott1138 c6baf28508
Update taint docs - for_each
Provide an explanation of how to taint a resource created with for_each
2019-10-24 14:53:45 -05:00
Chris Griggs 7dac6eed82
Update fix 2019-10-24 12:03:43 -07:00
cgriggs01 67105ceeae [Website] Vultr provider links 2019-10-24 12:00:35 -07:00
Pam Selle 9ee19eac94
Merge pull request #23177 from hashicorp/pselle/docs-syntax-link
Fix link in syntax docs
2019-10-24 11:59:08 -04:00
Pam Selle 0d4ea7d9ad Fix link in syntax docs 2019-10-24 11:57:08 -04:00
Kris Luminar 8bb0491dc1 website: clarify where you run the `terraform init` command 2019-10-24 08:41:00 -07:00
charlottemach e3d38046dc website/docs: replace outdated tag syntax (#23111)
Fixes #21614
2019-10-24 11:23:17 -04:00
Chris Griggs d7bce857cf
Merge pull request #23125 from hashicorp/cgriggs01-launchdarkly
[Website] LaunchDarkly provider links
2019-10-21 11:48:56 -07:00
cgriggs01 5452844c58 [Website] LaunchDarkly provider links 2019-10-18 14:07:36 -07:00
cgriggs01 8b3c0dd66b [Website] Update community providers 2019-10-18 11:26:05 -07:00
Pam Selle 91b5343d2f
Merge pull request #22626 from mixmatch/patch-1
Update output
2019-10-18 10:21:57 -04:00
Pam Selle 2a292340d9 Add website docs 2019-10-17 11:12:00 -04:00
cgriggs01 83e97fdbb5 Okta links + move venafi 2019-10-15 12:54:06 -07:00
Martin Atkins 047733d20c website: Full examples for for_each with flatten and setproduct
A very common question since we launched the two repetition constructs
is how to deal with situations where the input data structure doesn't
match one-to-one with the desired configuration.

This adds some full worked examples of two common situations that have
come up in questions. To avoid adding a lot of extra content to the
already-large "expressions" and "resources" pages, the main bulk of this
new content lives with the relevant functions themselves as a full example
of one thing they are good for, and then we'll link to them from the two
general documentation sections where folks are likely to be reading when
they encounter the problem.
2019-10-11 13:41:58 -07:00
Chris Griggs b6257a3e26
Merge pull request #22997 from hashicorp/cgriggs01-venafi
[Website] Add links to provider documentation
2019-10-08 12:57:17 -07:00
Nicolas Lamirault 72810ed4ae
Update: replace UptimeRobot provider SpamapS with Louy
Signed-off-by: Nicolas Lamirault <nicolas.lamirault@gmail.com>
2019-10-08 16:46:32 +02:00
Nicolas Lamirault 470de23a64
Merge remote-tracking branch 'upstream/master' into patch-1
* upstream/master: (66 commits)
  lang/eval: more evalContext fixups
  Update CHANGELOG.md
  Cleanup after v0.12.10 release
  v0.12.10
  website / help: reconcile 'validate' command docs
  website: Document behavior of `self` object for provisioners
  vendor: switch to HCL 2.0 in the HCL repository
  Update communicator/ssh/communicator.go
  copy client pointer for keep-alive loop
  Update CHANGELOG.md
  slow down tfce polling to 1s
  typos. some code, some text.
  Remove -check-variables flag from the docs
  Merge cleanup, remove `license` parameter in favor of bool `accept_license`, adjust how license acceptance is done, update hab provisioner doc.
  vendor latest go-tfe
  clean up go mod for go-tfe
  tfce test additions
  update to go-tfe 0.3.23
  cost estimation status polling
  go-tfe dep update to 0.3.22
  ...
2019-10-08 16:45:06 +02:00
Pam Selle 2a50bc6b5a More in expressions, removed extra resource thing 2019-10-07 14:46:20 -04:00
Pam Selle 67e314dcbe Some docs updates to clarify splat confusion 2019-10-07 14:44:33 -04:00
Nick Fagerlund 02d793f0ff website / help: reconcile 'validate' command docs 2019-10-03 15:31:33 -07:00
Nick Fagerlund f6e648cc8b website: Document behavior of `self` object for provisioners 2019-10-03 15:12:18 -07:00
Martin Atkins 39e609d5fd vendor: switch to HCL 2.0 in the HCL repository
Previously we were using the experimental HCL 2 repository, but now we'll
shift over to the v2 import path within the main HCL repository as part of
actually releasing HCL 2.0 as stable.

This is a mechanical search/replace to the new import paths. It also
switches to the v2.0.0 release of HCL, which includes some new code that
Terraform didn't previously have but should not change any behavior that
matters for Terraform's purposes.

For the moment the experimental HCL2 repository is still an indirect
dependency via terraform-config-inspect, so it remains in our go.sum and
vendor directories for the moment. Because terraform-config-inspect uses
a much smaller subset of the HCL2 functionality, this does still manage
to prune the vendor directory a little. A subsequent release of
terraform-config-inspect should allow us to completely remove that old
repository in a future commit.
2019-10-02 15:10:21 -07:00
cgriggs01 8e1ee85e4e Add venafi links 2019-10-02 14:13:57 -07:00
Pam Selle eb456df411
Merge pull request #22951 from ialidzhikov/enh/remove-check-variables-flag
Remove -check-variables flag from the docs
2019-10-02 11:07:37 -04:00
Pam Selle b40385772e
Merge pull request #22705 from kmott/habitat-provisioner-updates
Habitat provisioner updates
2019-10-01 14:27:52 -04:00
ialidzhikov 57ecc304e1 Remove -check-variables flag from the docs
Signed-off-by: ialidzhikov <i.alidjikov@gmail.com>
2019-09-30 17:21:08 +03:00
Kyle Mott 30895a6cf5 Merge cleanup, remove `license` parameter in favor of bool `accept_license`, adjust how license acceptance is done, update hab provisioner doc. 2019-09-29 11:16:25 -07:00
Kyle Mott e3d1876f44 Merge upstream 2019-09-27 16:38:50 -07:00
Chris Griggs e7fa42440f
Merge pull request #22882 from hashicorp/cgriggs01-community-prvdr
[Website] Add CDA community provider
2019-09-27 09:46:12 -07:00
Anil Murty 54239f1002 website: Clarify remote operations for new Terraform Cloud Free tier (#22924) 2019-09-26 17:12:51 -07:00
cgriggs01 dc0ee6f700 HP to HPE 2019-09-26 16:19:03 -07:00
Paddy 9b24ef7870
Merge pull request #21772 from luis-silva/21680/GCS_OAUTH
Add OAuth2 token support for GCS backend
2019-09-25 16:09:35 -07:00
Ryan Uber 5ef65561e2
Merge pull request #22892 from hashicorp/ryanuber/api-token-docs
website: update link to api token documentation for terraform cloud
2019-09-24 14:51:12 -07:00
cgriggs01 a581b50371 add genymotion docs 2019-09-24 13:35:51 -07:00
Ryan Uber 0d3da9ce3f website: update link to api token documentation for terraform cloud 2019-09-24 12:21:03 -07:00
Martin Atkins 25222fccd5 website: Link to hashicorp/subnets/cidr for cidrsubnets docs
The cidrsubnets function signature is intentionally very low-level and
focused on the core requirement of generating addresses. This registry
module then wraps it with some additional functionality to make it more
convenient to generate and use subnet address ranges.
2019-09-23 13:15:44 -07:00
cgriggs01 e21fea0d7a add CDA community provider 2019-09-23 12:05:49 -07:00
Martin Atkins f84ab99b7d lang/funcs: cidrsubnets function
This is a companion to cidrsubnet that allows bulk-allocation of multiple
subnet addresses at once, with automatic numbering.

Unlike cidrsubnet, cidrsubnets allows each of the allocations to have a
different prefix length, and will pack the networks consecutively into the
given address space. cidrsubnets can potentially create more complicated
addressing schemes than cidrsubnet alone can, because it's able to take
into account the full set of requested prefix lengths rather than just
one at a time.
2019-09-20 15:58:01 -07:00
Kristin Laemmert 54661ec1df
command/import: fix error during import when implied provider was not used (#22855)
* command/import: properly use `-provider` supplied on the command line

The import command now attaches the provider configuration in the resource
instance, if set. That config is attached to the NodeAbstractResource
during the import graph building. This prevents errors when the implied
provider is not actually in the configuration at all, which may happen
when a configuration is using the `-beta` version of a provider (and
only that `-beta` version).

* command/import: fix variable reassignment and update docs

Fixes #22564
2019-09-20 10:02:42 -04:00
Pam Selle 68e1605508
Merge pull request #22852 from hashicorp/pselle/string-key-taint
[docs] Add string key example to taint docs
2019-09-20 09:44:38 -04:00
Pam Selle 0e1f12e570 Add some context for the addition 2019-09-19 16:46:12 -04:00
Chris Griggs 0162cf3e99
Merge pull request #22853 from hashicorp/cgriggs01-communtiy
[Website] Add community providers
2019-09-19 11:21:33 -07:00
cgriggs01 e807aff803 add community providers 2019-09-19 10:52:50 -07:00
Pam Selle 740c9865f3 Add an example with string keys to taint to demonstrate escaping quotes 2019-09-19 13:40:29 -04:00
cgriggs01 4027ff8473 add Pureport provider links 2019-09-18 16:51:59 -07:00
Jeet Parekh bcc69c05bb lang/funcs: parseint function 2019-09-17 15:33:22 -07:00
yessarath eda35f2c49
local backend example added
Example for local backend added.
2019-09-17 23:49:54 +05:30
The Terraform Team 9b6fcc4e86
Merge pull request #22755 from echernyavskiy/patch-1
website/docs: Fix typo in variables.html
2019-09-17 11:46:57 -04:00
The Terraform Team 669242ee14
Merge pull request #22777 from acsbendi/patch-1
website/docs: Fixed typo in documentation about expressions
2019-09-17 11:42:32 -04:00
Nicolas Lamirault d32ea219ee
Merge branch 'master' into patch-1 2019-09-17 11:06:14 +02:00
Nick Fagerlund 655bbfdf28 website: Add complex type example to variables.html 2019-09-13 12:58:15 -07:00
Bendegúz Ács 8f9d368a25
Fixed typo in documentation about expressions 2019-09-12 14:16:13 +02:00
Evgeny Chernyavskiy 5f16669362
Fix typo in variables.html 2019-09-10 10:29:37 -04:00
Pam Selle 7a9f2717fe
Merge pull request #22745 from chef-partners/master
Habitat License Acceptance changes
2019-09-09 15:40:19 -04:00
Mudassar Shafique 50a6c69ab5 Habitat License Acceptance changes. These changes add a new argument that allows users to accept Habitat End User License.
It also containts doc updates for Habitat and Chef provisioner
2019-09-09 23:03:39 +05:00
Pam Selle f9ebae749c
Merge pull request #22707 from vsimon/spell
docs: Minor spelling and typo fixes
2019-09-06 11:46:01 -04:00
Souradeep Nanda 8b2668bf56 website/docs oss backend: Clarification for type of primary key (#22591)
The primary key of the TableStore must be a string.
2019-09-06 09:05:05 -04:00
Martin Atkins e0d72930fa website: Warn against using provisioners
For a long time now we've been advising against the use of provisioners,
but our documentation for them is pretty prominent on the website in
comparision to the better alternatives, and so it's little surprise that
many users end up making significant use of them.

Although in the longer term a change to our information architecture would
probably address this even better, this is an attempt to be explicit about
the downsides of using provisioners and to prominently describe the
alternatives that are available for common use-cases, along with some
reasons why we consider them to be better.

I took the unusual step here of directly linking to specific provider
documentation pages about the alternatives, even though we normally try
to keep the core documentation provider-agnostic, because otherwise that
information tends to be rather buried in the provider documentation and
thus the reader would be reasonable to use provisioners just because we're
not giving specific enough alternative recommendations.
2019-09-05 16:09:06 -07:00
Vicken Simonian 853a0e0677 docs: Minor spelling and typo fixes 2019-09-05 10:08:34 -07:00
Kyle Mott a5ae277bc9 Add updated docs changes as well. 2019-09-05 09:53:33 -07: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 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
Nick Fagerlund a038f8c43b website: In 0.12, terraform_remote_state syntax differs from backend config 2019-08-30 13:14:36 -07: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
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
Daniel Petty 4fc3ea6e09
Update output 2019-08-28 11:47:14 -06: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
Luis Silva 9ae8eca55d
Merge branch 'master' into 21680/GCS_OAUTH 2019-08-27 16:56:27 +01: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 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
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
kayrus 270579eac4 Backend: add missing swift options into docs 2019-08-22 11:37:40 +02:00
Brian Flad d48d9ed766
lang/funcs: Add fileset function
Reference: https://github.com/hashicorp/terraform/issues/16697

Enumerates a set of regular file names from a given glob pattern. Implemented via the Go stdlib `path/filepath.Glob()` functionality. Notably, stdlib does not support `**` or `{}` extended patterns. See also: https://github.com/golang/go/issues/11862

To support the extended glob patterns, it will require adding a dependency on a third party library or adding our own matching code.
2019-08-20 04:50:01 -04:00
Ben Drucker e8996e065e website: fix <ul> formatting in "taint" doc 2019-08-19 16:30:16 -07:00
Nick Fagerlund 3aa909ac6e website: Update URLs and name references for Terraform Cloud rebrand
The Terraform Enterprise brand has now been split into two parts:

- Terraform Cloud is the application that helps teams use Terraform together,
  with remote state storage, a shared run environment, etc.
- Terraform Enterprise is the on-premise distribution that lets enterprises run
  a private instance of the Terraform Cloud application.

The former TFE docs have been split accordingly.
2019-08-16 15:55:29 -07:00
Nick Fagerlund d316ea08c5 website: Delete terraform push docs; replace with note about the remote backend
Now that the last private installs of legacy TFE have been upgraded, the push
era is over.
2019-08-16 15:55:29 -07:00
Nick Fagerlund 011e84f32f website: Update example command list for 0.12 2019-08-16 15:55:29 -07:00
Chris Griggs 74fcf436b0
Merge pull request #22485 from hashicorp/cgriggs01-mongodbatlas
[Website] MongoDB Atlas provider links
2019-08-16 15:23:30 -07:00
Roger Berlind 64dbba1229 website/docs: Add state commands to remote backend (#21276)
I tested that all state commands work with remote backend using Terraform 0.11.13.
2019-08-16 11:45:27 -04:00
Kaushik NP 0c0a0ff96e website/docs: Missing punctuation mark (#19072)
* Missing punctuation mark

Minor change

* Updated default values for easier reading 

As suggested by @radeksimko
2019-08-16 11:43:10 -04:00
cgriggs01 ef1c1cf976 add new mongodb atlas provider links 2019-08-15 14:52:50 -07:00
Pam Selle 901ec990ed
Merge pull request #22156 from binlab/feature/bastion-ca-ssh
Add SSH certificate authentication method for connection via Bastion
2019-08-15 16:01:54 -04:00
Brian Flad 0d19465ada
Merge pull request #22318 from hashicorp/d-cli-quote-resource-addresses
docs: Additional for_each commands and resource addressing documentation
2019-08-15 10:03:44 -04:00
Kristin Laemmert 1442ff047d
website/docs: document providers schema output format (#22361)
* website/docs: document providers schema output format

* Update website/docs/commands/providers/schema.html.md

Co-Authored-By: Nick Fagerlund <nick@hashicorp.com>
2019-08-15 09:57:51 -04:00
cgriggs01 a037bb19f0 Add Exoscale provider links 2019-08-09 12:39:18 -07:00
Nick Fagerlund 979a2fa6d1 website: Align `count` and `for_each` sections
- Make these descriptions more similar, since they do basically the same thing.
- Add some subheaders to break up the wall of text and make it more skimmable.
- Nudge people more firmly toward `for_each` if they need to actually
  incorporate data from a variable into their instances.
- Add version note so you know whether you can use this yet.
2019-08-08 14:13:10 -07:00
Brian Flad cea149340c
docs/internal/resource-addressing: Omit for_each full splat example for now 2019-08-08 08:56:57 -04:00
Brian Flad 720b062d55
Apply suggestions from code review
Co-Authored-By: Nick Fagerlund <nick@hashicorp.com>
2019-08-08 08:54:40 -04:00
The Terraform Team fcb603616d
Merge pull request #20898 from sebbrandt87/patch-1
Removed -index from README
2019-08-06 22:17:20 +01:00
Sebastian Brandt 5d4826894c
Update website/docs/commands/untaint.html.markdown
Co-Authored-By: The Terraform Team <52939924+teamterraform@users.noreply.github.com>
2019-08-06 21:18:20 +02:00
Martin Atkins 135afaeb9c lang: "regex" and "regexall" functions
These existing upstream cty functions allow matching strings against
regular expression patterns, which can be useful if you need to consume
a non-standard string format that Terraform doesn't (and can't) have a
built-in function for.
2019-08-06 11:52:14 -07:00
Brian Flad 3a1a39bed3
docs/commands: Switch using count/for_each to configured with count/for_each
Reference: https://github.com/hashicorp/terraform/pull/22318#discussion_r310587243
2019-08-05 21:50:17 -04:00
Pam Selle 291cf8c5a4
Revert "Habitat License Acceptance changes. " 2019-08-05 12:43:55 -04:00
Pam Selle 9020636f93
Merge pull request #21345 from mudash/master
Habitat License Acceptance changes.
2019-08-05 12:40:34 -04:00
The Terraform Team 2326acaefe
website/docs: add type to example variable
added type to variable
2019-08-05 12:33:00 -04:00
Brian Flad 3ad05e50a4
docs/internal/resource-addressing: Add for_each information 2019-08-02 19:38:13 -04:00
Brian Flad 48624255ce
docs/commands: Show count and for_each resource address examples for commands
Verified on Mac OS 10.14.6 and Windows 10.
2019-08-02 19:36:24 -04:00
Martin Atkins 5cb80c43c1 website: example of csvdecode with for_each
We added the csvdecode function originally with the intent of it being
used with for_each, but because csvdecode was released first we had a
section in its documentation warning about the downsides of using it with
"count", since that seemed like something people would be likely to try.

With resource "for_each" now merged, we can replace that scary section
with a more positive example of using these two features together.

We still include a paragraph noting that "count" _could_ be used here, but
with a caution against doing so. This is in the hope of helping users
understand the difference between these two patterns and why for_each is
the superior choice for most situations.
2019-07-31 12:43:16 -07:00
He Guimin a490dfa495 backend/oss: Support for assume role config 2019-07-30 23:27:17 +08:00
Pam Selle 360068b3cb
Merge pull request #21922 from pselle/resource_for_each
Resource for_each
2019-07-26 11:41:56 -04:00
Pam Selle 1b25cb7d4a Docs updates for data resources, update expressions ref 2019-07-26 11:22:10 -04:00
Paul Hinze 69d44f763f
docs: Update example remote_state to use remote backend
The "remote" backend supersedes the "atlas" backend so this is the one we should use in the example.
2019-07-25 13:33:41 -05:00
Chris Griggs a02e43b86e
Merge pull request #22165 from hashicorp/cgriggs01-aci
[Website] Cisco ACI links
2019-07-22 08:04:09 -07:00
Pam Selle 7d905f6777 Resource for_each 2019-07-22 10:51:16 -04:00
Mark 3031aca971 Add SSH cert authentication method for connection via Bastion 2019-07-21 09:32:48 +03:00
Radek Simko cc9797443b
Merge pull request #18820 from Sagar2366/patch-6
change from work to working directory
2019-07-18 15:26:05 +01:00
Radek Simko 30f3b5ee25
Merge pull request #21831 from NickMetz/update-cli-output-documentation
Update in terraform output documentation
2019-07-18 15:24:12 +01:00
Radek Simko eb02f9313a
Merge pull request #21954 from julienvey/patch-1
Update pingdom community provider url
2019-07-18 10:48:18 +01:00
Radek Simko be47a1e11c
Merge pull request #22068 from a-hat/master
fix example config for terraform >= 0.12
2019-07-18 10:47:04 +01:00
cgriggs01 7df9f0a7da [WIP][Website] Cisco ACI links 2019-07-17 14:15:09 -07:00
Bartosz Studnik 2f3ad4b692
Fixing typo 2019-07-17 09:11:49 +02:00
Pam Selle 0111498e9a
Merge pull request #22075 from schmidtd/schmidtd-doc-typo
Simple typo in example artifactory backend subpath
2019-07-16 13:57:43 -04:00
cgriggs01 0d15d262a2 add/remove community providers 2019-07-16 09:36:27 -07:00
David Schmidt 91113aee83
Typo in example artifactory backend subpath 2019-07-15 18:16:56 -04:00
a-hat 366fed9d4d
fix example config for terraform >= 0.12 2019-07-15 11:22:35 +02:00
Chris Griggs 18a5ff61c2
Merge pull request #22058 from hashicorp/cgriggs01-avi-release
[website] AVI Networks provider
2019-07-12 14:49:18 -07:00
Pam Selle 21b1364535
Merge pull request #21553 from zippy1981/zippy1981-patch-1
Updated docs for using az cli or service principle
2019-07-12 13:55:41 -04:00
Pam Selle 19b8a9c02f
Merge pull request #21715 from petems/minor_spelling_fixes
Minor spelling fixes
2019-07-12 13:54:19 -04:00
Pam Selle 883300f6bc
Merge pull request #21840 from Anbcorp/patch-1
Fix typo in environment variable
2019-07-12 13:53:51 -04:00
Chris Arcand 275ecf96f2
Merge pull request #22042 from hashicorp/012-replace-regex-docs
Added regex details to replace() docs
2019-07-12 12:46:31 -05:00
Pam Selle d9a229a20e
Merge pull request #21999 from imjoey/patch-1
Update the URL of oVirt provider in docs.
2019-07-12 13:43:32 -04:00
Pam Selle 5cd551f716
Merge pull request #21887 from jmcgeheeiv/patch-1
Add "leading zeros" for the sake of SEO
2019-07-12 13:42:55 -04:00
cgriggs01 45c4b60704 [website] AVI Networks provider 2019-07-12 09:56:51 -07:00
Chris Arcand 22385c3198 Added regex details to replace() docs 2019-07-12 11:42:20 -05:00
Chris Griggs 1a89165705
Merge pull request #22022 from hashicorp/cgriggs01-namefix
[Website] fix signalfx link name
2019-07-10 14:00:08 -07:00
Colin Fowler cd7bfba141 rebased to terraform master branch 2019-07-10 18:05:10 +01:00
cgriggs01 417b5712b3 fix signalfx name 2019-07-09 17:09:28 -07:00
cgriggs01 efc079268e fix link typo 2019-07-09 11:45:03 -07:00
cgriggs01 755ca20ea4 add signalfx links 2019-07-08 11:06:38 -07:00
Joey d95bfb9bc2
Tweak the URL of oVirt provider
The previous provider project for oVirt has been moved under oVirt community, with a new URL prefix.
2019-07-08 16:58:38 +08:00
Brian Williams 5e3c3bafb8 Add support for SSE-C to S3 backend
These changes add support for encrypting terraform remote-state in S3 using customer-supplied encryption keys (SSE-C).
2019-07-06 10:10:54 -05:00
Stefan Schmidt f4abb96b08 website/docs: add the fmt -recursive flag. (#21963) 2019-07-05 13:32:57 -04:00
Luis Silva f6c90c1d96 Add OAuth2 token support for GCS backend 2019-07-05 10:06:44 +01:00
Andreas Sommer 042aead714 lang/funcs: add "abspath" function (#21409) 2019-07-02 08:30:30 -04:00
Julien Vey ef4ccc6f05
Update pingdom community provider url
Pingdom provider refers to https://bitbucket.org/devops_sysops/pingdom-provider, which no longer exists
I've updated the URL to refer to https://github.com/russellcardullo/terraform-provider-pingdom, which seems to be the most up-to-date pingdom provider
2019-07-02 10:33:57 +02:00
Ben Hadfield 0a1c0d6c24 website: Fix typo in Arithmetic Operators section (#21945) 2019-07-01 10:42:26 -07:00
Marcin Cuber df18843303 website: Add partial config file example for remote backend (#21520) 2019-06-27 11:53:35 -07:00
Nick Fagerlund f76c491468
website: CLI config: Team tokens work with CLI actions (#21883)
Team tokens never worked with the `atlas` backend, but the `remote` backend
uses them as intended; they can perform plans and applies on workspaces where
the associated team has at least plan or write permissions, respectively.
2019-06-26 10:56:30 -07:00
John McGehee 4bb6f0dff2
Add "leading zeros" for the sake of SEO
The search "terraform leading zero" does not find the `format()`
function, which is perfectly capable of adding leading zeros.
Thus I have added this one word to help people find `format()`.
2019-06-25 16:13:05 -07:00
Lindsey Smith a0f06826ab website: Puppet provisioner docs links fixed (#21843) 2019-06-21 14:11:13 -04:00
Benoit D d4588635f4
Fix typo in environment variable
The correct environment variable corresponding to the `ca_file` variable is `CONSUL_CACERT` and not `CONSUL_CAFILE`.

See `backend/remote-state/consul/backend.go` line 77.
2019-06-21 15:59:13 +02:00
Nick Metz 8eb6086cb2 \#21799 Since Terraform version 0.12 "-module=" is not a valid option for Terraform output aynmore. Also added missing option -no-color to documentation. 2019-06-21 09:31:31 +02:00
Lindsey Smith dcbdd70385 website: Clarifications to Puppet provisioner docs (#21810) 2019-06-20 09:15:30 -04:00
Tim Sharpe 2ab2796c93 website: Docs for the Puppet provisioner (#21792) 2019-06-19 15:30:04 -04:00
Martin Atkins 1bba574fe9 website: Document ignore_changes for individual map elements
This also includes a previously-missing test that verifies the behavior
described here, implemented as a planning context test for consistency
with how the other ignore_changes tests are handled.
2019-06-18 17:37:24 -07:00
Jonathan Buys 96328b1ec8 website: fix terraform_remote_state example for "config" argument (#21728) 2019-06-18 16:25:36 -07:00
john-auld bfd9b552cc website: Correct fmt -check (#21631)
* Correct fmt -check

With `-check=false` the exit status is always zero.
With `-check=true` the exit status is zero when all files are properly formatted and non-zero otherwise.

* update fmt documentation to use short form for -diff and -check
2019-06-18 14:36:45 -07:00
Martin Atkins 4b6a11701b website: Separate "Module Composition" section for variants
We previously had some notes about handling configuration variants just
tacked on to the "dependency inversion" section as an afterthought, but
this idea is a major use-case for dependency inversion so it deserves its
own section and a specific example.
2019-06-18 14:03:28 -07:00
Chris Griggs f0a9e95198
Merge pull request #21679 from hashicorp/cgriggs01-akamai-links2
[Website] Akamai provider links
2019-06-18 13:42:04 -07:00
cgriggs01 069766fd09 Add 4 new community providers 2019-06-18 10:33:28 -07:00
Pam Selle eaddf9ccf1
Merge pull request #21321 from khicks/master
Fix GitLab title on providers index
2019-06-13 11:09:40 -04:00
petems 239c84ef4b Minor spelling fixes
`docker run    -v $(pwd):/scripts    --workdir=/scripts    nickg/misspell:latest    misspell -w -source=text website/`
2019-06-13 15:36:14 +01:00
Pam Selle 59c5cc4788
Merge pull request #21254 from davewongillies/gcs
Add GCS source support for modules
2019-06-13 10:24:38 -04:00
kayrus d06609dd23 Swift backend: add application credential support 2019-06-12 17:23:13 +02:00
cgriggs01 ea541c10f3 [Website] Foreman community provider 2019-06-11 10:50:14 -07:00
cgriggs01 736e754f1e [Website] akamai provider links 2019-06-10 19:58:01 -07:00
James Bardin 0c91d227fa
Merge branch 'master' into master 2019-06-10 15:50:59 -04:00
Raymond Rutjes 0abb0a05fb website/docs: update example in remote_state.html.md (#21661) 2019-06-10 09:47:11 -04:00
Lars Eric Scheidler aa07806bfc lang/funcs: New "uuidv5" function
This generates name-based uuids, rather than pseudorandom uuids as with the
"uuid" function.
2019-06-07 14:38:22 -07:00
Alisdair McDiarmid 812ba80dae Remove links to legacy Terraform Enterprise docs
These docs are due to be removed, so these links will shortly break.
Removal is in hashicorp/terraform-website#812
2019-06-07 13:47:12 -04:00
Chris Griggs f4e27ca480
Merge pull request #21637 from hashicorp/cgriggs01-community-provider
[Website] community provider
2019-06-06 14:48:38 -07:00
Martin Atkins 8da3d269b0 website: Further elaboration on the "any" type constraint
There have been a few questions about this so far which indicated that the
previous docs for this feature were very lacking. This is an attempt to
describe more completely what "any" means, and in particular that it isn't
actually a type at all but rather a placeholder for a type to be selected
dynamically.
2019-06-06 13:31:17 -07:00
cgriggs01 132e4b9b43 [Website] community provider 2019-06-06 11:10:43 -07:00
Ivan Kalita 5b6b1663ef backend/http: implement retries for the http backend (#19702)
Fixes #19619
2019-06-05 16:12:07 -04:00
Martin Atkins 127cbeeda2 website: Additional information about "dynamic" blocks
Based on some common questions and feedback since the v0.12.0 release,
here we add some small additional content to the documentation for
"dynamic" blocks, covering how to access the keys of the collection being
iterated over and how to fold multiple collections into a single one to
achieve the effect of a nested iteration.
2019-06-05 06:49:16 -07:00
Martin Atkins 382e1ca821 lang: yamldecode and yamlencode functions
These follow the same principle as jsondecode and jsonencode, but use
YAML instead of JSON.

YAML has a much more complex information model than JSON, so we can only
support a subset of it during decoding, but hopefully the subset supported
here is a useful one.

Because there are many different ways to _generate_ YAML, the yamlencode
function is forced to make some decisions, and those decisions are likely
to affect compatibility with other real-world YAML parsers. Although the
format here is intended to be generic and compatible, we may find that
there are problems with it that'll we'll want to adjust for in a future
release, so yamlencode is therefore marked as experimental for now until
the underlying library is ready to commit to ongoing byte-for-byte
compatibility in serialization.

The main use-case here is met by yamldecode, which will allow reading in
files written in YAML format by humans for use in Terraform modules, in
situations where a higher-level input format than direct Terraform
language declarations is helpful.
2019-06-04 16:24:09 -07:00
Martin Atkins f9a73d48db lang: "range" function
This is similar to the function of the same name in Python, generating a
sequence of numbers as a list that can then be used in other
sequence-oriented operations.

The primary use-case for it is to turn a count expressed as a number into
a list of that length, which can then be iterated over or passed to a
collection function to produce that number of something else, as shown
in the example at the end of its documentation page.
2019-06-04 16:20:17 -07:00
cgriggs01 55fe3c7a28 new community links + update signalFX 2019-06-03 17:19:52 -07:00
David Liao 97ad35f90c website: Update taint command docs to reflect new 0.12 usage 2019-06-03 15:36:38 -07:00
Justin Dearing 5bcbe008e0
Updated docs for using az cli or service principle
Using az login and then terraform init from the command line I got `Error: Either an Access Key / SAS Token or the Resource Group for the Storage Account must be specified`
2019-05-31 23:22:11 -04:00
Brian Flad 3865b74780
Merge pull request #21122 from fbcbarbosa/patch-1
Document AWS_SDK_LOAD_CONFIG on s3 backend
2019-05-28 21:05:40 -05:00
Justin Weissig 7335f1fdc8 docs: fixed typo (#21297)
Spelling: varable/variable.
2019-05-21 15:55:44 -04:00
Matt Morrison af6083ef82
Add support for reading modules from GCS bucket 2019-05-21 12:24:37 -07:00
Justin Weissig 778cae91a8 website: fix typo in the 'terraform' block documentation page 2019-05-20 14:37:03 -07:00
Mudassar Shafique b7dcc00c92 Doc updates about accepting the Chef license 2019-05-20 12:37:03 -07:00
Mudassar Shafique 45cf82b679 Doc updates about accepting the Chef license 2019-05-20 12:31:41 -07:00