Commit Graph

5871 Commits

Author SHA1 Message Date
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
Yuri Astrakhan 0bd29ce194 clarify config block in terraform_remote_state
This seems to be a common mistake - saw it in StackOverflow
and in several issues.
2019-07-15 13:05:45 +02: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
Kristin Laemmert 0f6b46bd93
website: add puppet provisioner to the sidebar (#21821) 2019-06-20 09:02:23 -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
James Bardin 877b4a1587 missing link to OSS backend 2019-06-13 18:00:38 -04: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
Joe Tavin 2c176fdf4b website/0.12 upgrade: Fix typo (#21426) 2019-05-24 10:06:01 -04:00
Chris Marchesi 340aa7c598
website: add Sentinel 0.12 upgrade guide details
This adds details for using Sentinel in Terraform 0.12. It largely
links to the corresponding guide in the Terraform Enterprise
documentation.
2019-05-22 09:58:18 -07: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
Martin Atkins fe8c380fe1 website: Remove the Sentinel section from 0.12 upgrade guide
A longer-form guide will follow in the Sentinel section of the Terraform
Enterprise documentation, once it's ready. For now, this section isn't
saying anything useful since it was always just a stub for a guide we
planned to write later.
2019-05-20 14:16:56 -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
Martin Atkins 5af8bcff2f
website: correct the synopsis on the formatdate function page
Was using "format" instead of "formatdate".
2019-05-17 14:42:00 -07:00
Peter 02d03d2d25 website: Fix odd spacing on the provider configuration syntax page 2019-05-17 08:45:08 -07:00
Mudassar Shafique e78658de4c Habitat License Acceptance changes. These changes add a new argument that allows users to accept Habitat End User License. 2019-05-16 16:55:07 -07:00
Martin Atkins 32d19b9574 website: 0.12 upgrade guide about variable type constraints
The upgrade tool is assuming that a type of "list" means list(string) and
a type of "map" means map(string), because that was what we documented
those as meaning.

In practice, Terraform 0.11 was lacking some validation which allowed
more complex nested structures in some cases even though they were pretty
inconvenient to use due to other language limitations.

The upgrade tool doesn't have enough context to make a reliable decision
on this, so instead we'll rely on the upgrade guide for this. We don't
need a TF-UPGRADE-TODO comment in this case because we reserve those for
things where a subsequent operation might cause the configuration to be
misinterpred, rather than just causing an error. Instead, we'll show an
example of the comment in the upgrade guide so the reader can easily
match it, and give some advice in the guide on how to address it.
2019-05-16 07:29:42 -07:00
Kevin Hicks 68a2249581
Fix GitLab title on providers index 2019-05-15 14:42:17 -05:00
Nicolas Lamirault 7dbac5da59
Merge branch 'master' into patch-1 2019-05-15 08:37:56 +02:00
Chris Griggs 4db9b40471
Merge pull request #21301 from hashicorp/cgriggs01-rancher2
[Website] Rancher2 provider doc links
2019-05-14 13:25:52 -07:00
cgriggs01 dc4811f898 [Website] Rancher2 provider links 2019-05-14 11:13:32 -07:00
Martin Atkins abdd680fd2 website: Special considerations about the "scp-like" git address syntax
We've seen in the past that some users try to use this form with the
ssh:// URL prefix, so we'll mention explicitly that this is invalid and
show a working example of how to use it without the URL scheme prefix.
2019-05-14 07:38:06 -07:00
Martin Atkins c6e32f148d website: v0.12 upgrade guide revisions preparing for final release
Our original upgrade guide was drafted while some things were still in
flux and not all of our upgrade tooling was in place yet.

This redraft now attempts to be more specific and direct, showing exact
commands to run and (where relevant) exact error messages that Terraform
might return.

I also took this opportunity for some general copy-editing, though we'll
probably want to do one more pass of that alone (without changing any
content at the same time) before final release.

This new content presumes the existence of a Terraform v0.11.14 release,
which isn't published yet at the time of writing but should be published
before v0.12.0 final, once we've done final verification and review of
the upgrade path including it.
2019-05-09 12:20:24 -07:00
Alexis 00cc5781ab website: Fix typo in the configuration language introduction page 2019-05-08 16:31:37 -07:00
cgriggs01 8c52fdcecf new community providers 2019-05-08 11:13:19 -07:00
Justin Weissig aa4c43b341 website: Fix typo on the "expressions" documentation page 2019-05-08 10:58:22 -07:00
Chris Griggs 9c4ff517b6
Merge pull request #21221 from hashicorp/cgriggs01-vmware
[Website] Add VMware vRA7 provider links
2019-05-06 15:57:34 -07:00
Nick Fagerlund 0172fed7d4 (website) Adjust intro of attr-blocks page
- Note that we intentionally omitted it from the sidebar, to reduce confusion.
- Write a summary up top so you can stop reading sooner if you don't actually need this.
2019-05-06 13:07:54 -07:00
cgriggs01 3911b0f310 [Website] add vra7 links 2019-05-06 12:33:21 -07:00
Kristin Laemmert b66d03bba7
Mildwonkey/upgrade doc remote backend (#21201)
* website/upgrade-guides: init -reconfigure is required with remote backend

* build: add a real and useful version of `.tfdev`
2019-05-03 15:34:54 -04:00
matt short cb20438221
added type to variable
the other variables have a type, i think this one might be missing
2019-05-03 08:22:07 +01:00
cgriggs01 dc889c4f08 two new community providers 2019-05-02 11:01:08 -07:00
Kristin Laemmert b1d0b1383f
lang/funcs: remove sethaselement function and documentation (#21164)
`contains` and `sethaselement` are effectively the same function, and
`contains` works with `sets` thanks to automatic HCL conversion.
2019-05-02 10:47:19 -04:00
Chris Griggs a0cd6156d1
Add to section 3 2019-05-01 15:16:25 -07:00
Chris Griggs 68847ac99b
Fixes grammer and spelling 2019-05-01 14:06:26 -07:00
cgriggs01 4194eff5da guide changes 2019-05-01 13:40:50 -07:00
Justin Weissig 299e0432bc
Fixed typo
Fixed typo: cafeful/careful.
2019-04-30 00:06:01 -07:00
Kristin Laemmert 394cf7f25e
lang/funcs: add acc tests for functions (#21112)
* lang/funcs: testing of functions through the lang package API
The function-specific unit tests do not cover the HCL conversion that happens when the functions are called in a terraform configuration. For e.g., HCL converts sets to lists before passing it to the function. This means that we could not test passing a set in the function _unit_ tests.
This adds a higher-level acceptance test, plus a check that every (pure) function has a test.

* website/docs: update function documentation
2019-04-29 13:11:28 -04:00
Justin Weissig 3d80aed6fe website/docs: Fixed Typo (#21137)
Fixed typo: separtely/separately.
2019-04-29 09:19:10 -04:00
cgriggs01 c7dc988741 update contactor listing 2019-04-26 11:28:43 -07:00
Fernando Barbosa 47e32b5399
Update s3.html.md 2019-04-26 11:10:31 -03:00
Chris Griggs b7705d20a0
Merge pull request #21098 from hashicorp/cgriggs01-add-gridscale
[Website] Add Gridscale provider
2019-04-24 15:02:12 -07:00
Chris Griggs 103f56e0a3
Merge pull request #21090 from hashicorp/cgriggs01-name-update
[Website] Fix FortiOS typo
2019-04-24 14:54:05 -07:00
cgriggs01 bad3c57f00 [Website] Add Gridscale provider 2019-04-24 14:46:22 -07:00
Kit Ewbank efc08de5d6 lang/funcs: add 'strrev' interpolation function. (#21091) 2019-04-24 14:52:39 -04:00
cgriggs01 bd1b2c8641 fix FortiOS caps 2019-04-24 10:21:16 -07:00
Nicolas Lamirault 7016d44352
Merge branch 'master' into patch-1 2019-04-24 14:41:35 +02:00
Ross McKelvie ce1fba5817 website: update required_providers block for terraform 0.12 compatibility 2019-04-19 11:54:19 -07:00
Chris Griggs aeabdf1a0d
Merge pull request #21054 from cgriggs01/cgriggs01-community-patch
[Website] Adding community provider
2019-04-18 09:19:39 -07:00
Martin Atkins 533cbf4c3f
website: Update "Local Values" docs to use v0.12 syntax in example
There was some leftover v0.11-style interpolation syntax here.

We prefer to use a "naked" expression in situations like this where the result
isn't a string, because interpolations returning non-strings is a common source
of confusion for new users.
2019-04-18 09:03:34 -07:00
Chris Griggs f66b563ccd
Merge pull request #21051 from cgriggs01/cgriggs01-fortios-links
[Website] Adding Fortios provider links
2019-04-18 08:37:21 -07:00
cgriggs01 55b816853a [Website] Adding Fortios provider links 2019-04-18 07:46:30 -07:00
Martin Atkins 62d32e9bb3 website: Fix incorrect example in Module Composition page
The example above treats recordsets as a list, but the declaration was for a single object.
2019-04-18 07:13:16 -07:00
cgriggs01 26d515e40a Adding community provider 2019-04-17 15:57:24 -07:00
Martin Atkins 2238fbda1b website: v0.12 upgrade guide about list variables and brackets 2019-04-17 11:16:16 -07:00
Martin Atkins c94f8f9067 website: Document division behavior change in v0.12 upgrade guide
The division operator now always performs floating point division, whereas
before it would choose between float and int division based on the types
of its arguments.

We have a specific error message for when a fractional number is used as
an index in HCL, but this additional upgrade guidance provides a specific
solution to the problem: the floor function.

Sadly we don't have enough context in the current design of the upgrade
tool to make this fix automatic. With some refactoring it may be possible
to apply the fix automatically within list brackets, but since that is
a relatively complex change we'll first try this manual solution prompted
by an error message, because in practice so far we've seen this reported
only in the context of list indexing and our error check will catch that
and make the user aware of the need for a fix there.
2019-04-16 10:03:37 -07:00
Nick Fagerlund b4042947d1 website: null_resource isn't a type of provisioner
This page is useful, but it's easier to tell what it's for if we
put it next to the page about connections.
2019-04-15 14:11:02 -07:00
Kristin Laemmert d4669246c7
funcs/coalesce: return the first non-null, non-empty-string element from a sequence (#21002)
* funcs/coalesce: return the first non-null, non-empty element from a
sequence.

The go-cty coalesce function, which was originally used here, returns the
first non-null element from a sequence. Terraform 0.11's coalesce,
however, returns the first non-empty string from a list of strings.

This new coalesce function aims to preserve terraform's documented
functionality while adding support for additional argument types. The
tests include those in go-cty and adapted tests from the 0.11 version of
coalesce.

* website/docs: update coalesce function document
2019-04-12 13:57:52 -04:00
Chris Griggs e35e3d367e
Merge pull request #21001 from cgriggs01/cgriggs01-community-prvdrs
[Website] new community providers
2019-04-12 09:21:21 -07:00
Nick Fagerlund 88982fdbc3
website: in functions sidebar, default lists to collapsed (#20945)
Find-in-page is still supported with the 'expand/collapse all' control.
2019-04-11 16:54:18 -07:00
He Guimin 3f44dd9dec Add tablestore config to store state lock 2019-04-11 07:11:10 +08:00
He Guimin b887d44712 Add Alibaba Cloud backend OSS with lock 2019-04-11 07:06:43 +08:00
Michael Conlon 44c9e81d4c website: fix typo on the "terraform console" command page 2019-04-10 12:17:28 -07:00
cgriggs01 a674d3fb7b [Website] new community providers 2019-04-10 11:00:15 -07:00
Matthew Sanabria 0d0a1128e4
Clarifying behavior for destroy-time provisioners (#20819) 2019-04-05 14:22:16 -04:00
Matthew Sanabria be04e70a0f
Adding documentation for TF_CLI_CONFIG_FILE environment variable (#20834)
Fixes #15849
2019-04-05 14:21:40 -04:00
Martin Atkins ac2052f0bb website: correct the title of the "matchkeys" function page 2019-04-04 15:35:13 -07:00
Martin Atkins 99f2623d10 website: Documentation of the special "attributes as blocks" mode
The re-introduction of some of the ambiguity between argument and nested
block syntax (for compatibility with existing provider patterns)
unfortunately leads to some interesting consequences for attributes using
this mode.

While the behavior is generally as before in straightforward cases, this
page aims to spell out some of the different usage patterns explicitly
for the benefit of those writing more complex configurations, such as
generic re-usable modules where using argument vs. block syntax leads to
some real differences.

This page is intentionally not linked from anywhere in the part of the
website maintained in the Terraform repository. Instead, it can be linked
from the provider documentation for any argument where this pattern is
used, to help users understand the ways in which that argument might
deviate from the usual behaviors of arguments vs. nested blocks.
2019-04-04 13:49:37 -07:00
Jeff 3110dde1d1 Fix docs typo (#20924)
* fix docs typo

* restore trailing newline
2019-04-04 11:21:36 -04:00
Sebastian Brandt 1bd0f3512c
Removed -index from README
There is no `-index` option, instead you need to set the index as additional describer to the resource.
2019-04-02 16:11:51 +02:00
cgriggs01 cfd271a040 update provider name 2019-04-01 08:41:45 -07:00
Kristin Laemmert 39ef97beff
website: adding examples of complex variables on the command line (#20871) 2019-04-01 07:51:17 -04:00
cgriggs01 fc47a78e60 add jdcloud provider links 2019-03-27 11:41:00 -07:00
Martin Atkins f302747077 website: Additional explanation for cidrsubnet function
Some users are not accustomed to thinking of IP addresses in a bitwise
fashion, so the hope here is to give enough of an introduction to that way
of thinking for the reader to understand what the "newbits" and "netnum"
arguments represent.
2019-03-26 10:04:29 -07:00
Alex McLarty 4b9a764eb1 website: Fix typo in null_resource.html.markdown (#20817)
Fix typo in null_resource.html.markdown
2019-03-25 11:16:14 -07:00
Nick Fagerlund d0b7771634
website: Simplify wording for split built-in function (#20803)
The definition of split was referring the built-in function join. However, join is just one of the ways a string might have been created, and this could cause confusion.
2019-03-25 10:59:58 -07:00
Nick Fagerlund b32cce9637 website: Fix contradictory description of remote state `outputs` object 2019-03-25 10:59:10 -07:00
Nick Fagerlund 499ccd42bf website: fix broken markdown in modules/composition 2019-03-25 10:58:45 -07:00
Nick Fagerlund 4200b0b2c5 website: Use bullet lists in smaller provider lists, too
These are small enough that using multi-columns would just get in the way,
but might as well style them similarly.
2019-03-22 17:06:29 -07:00
Nick Fagerlund b14b967fb7 website: Fix some alphabetization in provider lists 2019-03-22 17:06:29 -07:00
Nick Fagerlund 33118b9b0c website: List providers vertically instead of horizontally
This should make it easier to find items alphabetically, and it DEFINITELY makes
it easier to update.
2019-03-22 17:06:29 -07:00
Vangelis Katsikaros 94463894ec website: "map" a real resource to configuration, not "attach" (#17912)
In the terraform state documentation the verb "map" is widely used to
describe the relationship between an item in the state and in the real world
whereas the verb "attach" is not used anywhere.
2019-03-22 16:10:44 -07:00
Nick Fagerlund 428a2c05e7
website: Expand output values docs (#20790)
For 0.11 I just specified the naming rules; for 0.12, I added some info about
referencing values and tightened up the layout of the optional arguments.

This commit also syncs up descriptions of `depends_on`.
2019-03-22 15:08:55 -07:00
Nick Fagerlund 53cff99f84
website: Add `workspace show` command to sidebar nav (#20800) 2019-03-22 15:06:53 -07:00
Guillaume Dupin 4b8d11e2de Create commands/workspace/show.html.md (#18355)
Add documentation for `terraform workspace show` command
2019-03-22 14:04:59 -07:00
Nick Fagerlund c06674bac7
website: Clarify that example S3 policy is for an IAM entity (#20791) 2019-03-22 12:10:35 -07:00
Nick Fagerlund cb4f3004da website: Fix several spelling errors 2019-03-21 18:12:11 -07:00
Nick Fagerlund 740aff3899 website: Update options for graph command
'legacy' doesn't seem to be a thing anymore, and we were missing some
of the other values for -type. Also -no-color doesn't seem to be
relevant to this command.
2019-03-21 18:11:50 -07:00
Nick Fagerlund b61e50be13 website: Use a normal file-based template in example, and expand the explanation of $${thing} 2019-03-21 15:47:57 -07:00
Lars Francke db6ec472ef website: Fix documentation glitch and add note about double "$"
1. The double "$" in the template confuses readers

2. As far as I can tell the variable "count" is not used either in this example
   (it is in the next example though)
2019-03-21 15:47:57 -07:00
Justin Downing 1e32ae243c grammatical updates to comments and docs (#20195) 2019-03-21 14:05:41 -07:00
Sander van Zoest 42305e62ea website: Fix a typo in null_resource provisioner page description (#19928) 2019-03-21 13:31:00 -07:00
Justin Clark 7af7fb3f71 website: access_token is not required in `atlas` backend (#20222) 2019-03-21 12:50:05 -07:00
Daniel Schroeder b29102dbc6 website: Add TF_IN_AUTOMATION to environment variables page (#19721)
* Adds TF_IN_AUTOMATION description

Blatantly copied from https://learn.hashicorp.com/terraform/development/running-terraform-in-automation since it is missing on the [env var page](https://www.terraform.io/docs/configuration/environment-variables.html).

* Update website/docs/commands/environment-variables.html.md

Co-Authored-By: udondan <udondan@users.noreply.github.com>
2019-03-21 12:08:56 -07:00
Brian Flad 2e6c316fc9
Merge pull request #20760 from hashicorp/mar19_s3_path_style
website: document s3 backend's force_path_style argument
2019-03-21 09:24:49 -04:00
Alvaro Miranda Aguilera ac0bdb7f21 website: fix heredoc syntax in chef.html.markdown (#19739)
remove - from EOF
2019-03-20 16:52:01 -07:00
Nikolai Vavilov 01e26e337e website: add missing article (#19368) 2019-03-20 16:20:32 -07:00
Nathan Dataguake Basanese 32daeec29d website: clean up `terraform destroy` output example (#20099) 2019-03-20 16:15:30 -07:00
Martin Atkins 096b1bb87b lang/funcs: Port the "reverse" function from the old functions set
This has the same functionality as the "reverse" function that was
implemented in the "config" package, but adapted to the new language type
system.
2019-03-19 17:32:19 -07:00
Stefan Schmidt 3ca1253796 backend/gcs: Mark the unused attributes project and region as removed.
These two attributes are not used since aec45e6967.
2019-03-19 17:29:04 -07:00
Sander van Harmelen a710447eaf website: clarify behavior and version support for remote backend (#20739)
* docs: elaborate on supported remote backend versions

This PR adds a few lines to the docs to indicate which commands are
supported by what version of the remote backend and it makes a
recommendation about which version to use.

* Clarify remote state storage w/ TFE [skip ci]

Specifically, that this is the backend to use with remote state (all
tiers) and Free-Tier vs. Enterprise tiers differ in remote operations

* website: Arrange remote backend info differently
2019-03-19 12:41:42 -07:00
Nick Fagerlund 88fcb67cc7 website: document s3 backend's force_path_style argument
Added in
fb6b349e58
2019-03-19 11:48:44 -07:00
Tomas Chmelevskij 036a1e259e website: Typo fix (#20629) 2019-03-19 11:26:25 -07:00
PenelopeFudd cf0ed422b2 website: Added missing doublequotes. (#20696) 2019-03-19 11:23:24 -07:00
HashedDan a2c91ca582 Docs: reference resource by index, fixes #18184 2019-03-19 09:42:05 -07:00
Martin Atkins 04f3766fd9 website: Indicate v0.12-only content
We have released the v0.12-oriented content to the website early in order
to support the beta process, but in some places we neglected to explicitly
mark features or content as being v0.12-only.

Here we add explicit markers to the main cases we've seen where readers
have reported confusion, along with some other tweaks in similar vein.
2019-03-18 12:42:21 -07:00
PenelopeFudd d27651b305 website: Typo in link to the templatefile function page 2019-03-15 14:12:26 -07:00
PenelopeFudd 247faca59d website: formatdate function in the navigation sidebar 2019-03-15 09:51:47 -07:00
Nick Fagerlund 0834813ed5 website: Write new content for CLI docs front page 2019-03-15 13:00:58 +00:00
Nick Fagerlund 13166df619 website: move docs/index.html to docs/cli-index.html
Terraform is way bigger than the core CLI tools and the language
now, and the docs have grown accordingly. So we're adding a
global index page to help users get around the many sections of the
docs site, and bumping the CLI/core docs down so they're no longer at the
top of the hierarchy.

The "right" (as in, conceptually pure) way to do this would be to actually
create a new level of directory hierarchy in between. But that would be real
expensive and annoying — the amount of 301s and links to edit would be
monumental, and it wouldn't gain us much beyond a certain picture-straightening
satisfaction, so I'm resisting the temptation.
2019-03-15 13:00:58 +00:00
Nick Fagerlund 6c346b5740 website: Tweak 0.12 module content for 0.11
...well, I was ALMOST right in the previous commit.
2019-03-14 10:38:52 +00:00
Nick Fagerlund 34e90ff3c1 website: Fix broken links to modules/usage and modules/create
As part of this, I'm copying the entire text of the 0.12
docs/configuration/modules.html page into docs/configuration-0-11/modules.html —
some of the 0.11 pages needed to be able to link to the moved content, I
didn't want to jump versions jarringly, and a close reading didn't reveal
anything in there that's inaccurate for 0.11.
2019-03-14 10:38:52 +00:00
Nick Fagerlund 50f76dd566 website: fix broken anchor link (to #for-expressions) 2019-03-14 10:38:52 +00:00
Nick Fagerlund 3977598edb website: remote backend also supports multiple workspaces 2019-03-14 10:38:07 +00:00
Nick Fagerlund 71af3bc3ec website: Fix nav link activation for json syntax page 2019-03-14 10:38:07 +00:00
Nick Fagerlund 094a5d65d3 website: Use a middleman partial for "other docs" list instead of hardcoding it
This relies on a commit in the terraform-website repo, and should make updating
that list much less annoying.
2019-03-14 10:38:07 +00:00
cgriggs01 489d72e77f New community providers 2019-03-13 14:56:03 -07:00
Radek Simko 142ecfefe0
docs: Differentiate 0.11/0.12 in terraform_remote_state 2019-03-13 17:36:27 +00:00
Gyorgy Hrabovszki 2b726a892f website: Fix typo in the Local Values documentation 2019-03-13 09:48:54 -07:00
Rupesh Reddy Tumu fddb52f05c website: Fix various typos in the config function documentation 2019-03-11 13:59:12 -07:00
Martin Atkins 36bb9b462c website: "for" expression examples to use canonical formatting
The "terraform fmt" command produces a different canonical form than we
were showing in our examples here. Our examples should always reflect the
conventions applied by "terraform fmt" to avoid confusion.

(This particular decision is a pragmatic one because the formatter design
needs to use the same rules for the colon in the ? : conditional operator
as for the colon in "for" expressions.)
2019-03-11 08:23:13 -07:00
Martin Atkins 0a9959cbe4 website: References to Resource Attributes
Since references to attributes of resources are by far the most common
reference type, and the mapping of resource type config to the attributes
is not always obvious, here we give some real examples of patterns for
accessing different configuration constructs within resource blocks along
with the resource type's exported attributes.

Since we don't have any real examples of labelled nested blocks yet (the
current SDK doesn't support them) I've included a hypothetical example for
now just to establish the patterns around them in preparation for
beginning to introduce them as we roll out this feature in the SDK.
2019-03-11 08:23:13 -07:00
David Chwalisz ddb7e0ab20 fix `Publishing Modules` link of website documentation.
Currently links to [Creating Modules](https://www.terraform.io/docs/modules/create.html) page.
Should link to [Publishing Modules](https://www.terraform.io/docs/modules/publish.html) page.

fixes #20636
2019-03-11 08:20:35 -07:00
Radek Simko a2ba1f8fe7
provisioners/local-exec: Fix map syntax for 0.12 2019-03-08 15:59:28 +00:00
cgriggs01 918d01baf4 add new provider links 2019-03-07 12:34:34 -08:00
Brian Flad dfe83d9ad5
Merge pull request #20592 from hashicorp/d-sensitive-data-pgp-mention
docs/state: Adjust mention of PGP encryption from RDS to IAM
2019-03-06 16:02:47 -05:00
Brian Flad d1e5f9c2a2
docs/state: Adjust mention of PGP encryption from RDS to IAM
To better align with the current status of PGP usage and remove any confusion for the missing functionality.

References:
* https://www.terraform.io/docs/providers/aws/r/iam_access_key.html
* https://www.terraform.io/docs/providers/aws/r/db_instance.html
2019-03-06 12:12:10 -05:00
Brian Flad 20a814028d
command: Consistency implement and document parallelism default of 10
References:
* f4da82a023/command/command.go (L41)
* b9d8e96e0c/terraform/context.go (L149-L155)
2019-03-06 09:25:36 -05:00
Martin Atkins 9336c7fba3 website: Revamped module-authoring docs for Terraform v0.12
As well as some general consolidation and reorganizing, this also includes
some updated advice for making the best use of new Terraform v0.12
features to create infrastructure building-blocks.

In particular, the "Module Usage" documentation is now consolidated into
the configuration section in order to bring all of our general language
documentation together, and the top-level "Modules" section is now
primarily focused on module _authors_ as an audience, covering topics such
as publishing modules and designing them for reuse.
2019-03-05 14:14:06 -08:00
Mars Hall 31c9776d55 Switch pg backend to session-level advisory locking, to avoid rollback of partial state updates 2019-03-04 17:01:08 -08:00
Kristin Laemmert 21f6e3dffd
Mildwonkey/012 docs updated (#20542)
* docs: update plan command documentation. Fixes #19235

* docs: added a missing reserved variable name. Fixes #19159.

* website: add note that resource names cannot start with a number

* website: add some notes to the 0.12 upgrade guide
2019-03-01 12:30:51 -08:00
John Slee 8f7b897d0c website: typo in outputs doc (#20520) 2019-03-01 08:25:49 -08:00
Martin Atkins 08f0f60908 website: Temporary link to the beta1 announcement from v0.12 guide
The announcement post contains the information about the temporary
situation where not all of the providers are compatible yet. Linking there
rather than duplicating the information in the upgrade guide means we'll
be able to update in one place as the situation changes.
2019-02-28 16:21:48 -08:00
Martin Atkins 6cd6f0275c website: Fix some broken links
In all the shuffling of these docs for v0.12 some of the links ended up
not lining up quite right.
2019-02-28 16:21:09 -08:00
Kristin Laemmert 5ebf8b2992
website: fix link (#20501) 2019-02-27 12:21:20 -08:00
Kristin Laemmert f44e4b2c6a
website: add documentation for terraform providers schema (#20468)
* website: add documentation for terraform providers schema
2019-02-27 11:08:31 -08:00
James Bardin eada955721
Merge pull request #19070 from mars/postgres-backend
Postgres backend
2019-02-26 20:20:01 -05:00
Mars Hall 3c68b857be
📚 correction to pg backend configuration 2019-02-26 15:30:17 -08:00
cgriggs01 ad279fda77 Add two new community providers 2019-02-26 14:10:32 -08:00
Martin Atkins da4862e3f7 website: Revamped upgrade guide for v0.12.0-beta1
The upgrade guide had its last major upgrade while we were preparing for
the alpha releases. Now that the upgrade tool is more complete we can
describe the required changes in terms of that tool, and also add
additional information about provider upgrades.

We will revise this at least one more time before v0.12.0 final, but this
is an interim copy of the upgrade guide intended to help those who are
testing the beta releases.
2019-02-26 10:27:51 -08:00
Martin Atkins f4bc502f51 website: Documentation for "terraform 0.12upgrade" 2019-02-26 10:27:51 -08:00
Mars Hall 4875529c8d 📚 doc pg backend config & locking 2019-02-26 10:26:06 -08:00
Mars Hall 2621f95bd2 📚 doc corrections 2019-02-25 16:30:30 -08:00
Mars Hall b9a91b7c1e Switch pg backend to use native Postgres locks 2019-02-25 16:05:53 -08:00
Paul Tyng 42b92a2629
Update network-index.html.markdown 2019-02-24 09:51:00 -05:00
Mars Hall 328e562925 📚 pg backend supports multiple workspaces 2019-02-22 13:51:57 -08:00
Mars Hall 2831459ca2 📚 pg backend technical design & clarifications 2019-02-22 13:51:57 -08:00
Mars Hall 312d408f06 📚 pg backend docs 2019-02-22 13:51:57 -08:00
cgriggs01 266fb573cf add Cisco ASA provider links 2019-02-22 12:41:20 -08:00
James Bardin 55cf4e95a5
Merge pull request #19979 from usererror/consul-backend-lock-acl
Add details about using lock=true when consul ACL is enabled
2019-02-22 15:04:25 -05:00
James Bardin b8be1d0114
Merge pull request #20377 from henninge/patch-1
Only path-style S3 URLs are supported.
2019-02-22 14:46:48 -05:00
Sherod Taylor c456d9608b updated ssh authentication and testing for ssh 2019-02-22 14:30:50 -05:00
Nick Fagerlund 01eb224469 website: Large, on-brand link preview image for marketing pages (/intro/*)
Although /intro/getting-started includes docs content, those pages currently
redirect to the Learn platform, and so shouldn't be affected by the large unfurl
image.
2019-02-22 10:09:09 -08:00
Kristin Laemmert 4dd8192ec7
Merge pull request #20352 from hashicorp/mildwonkey/show-docs
mildwonkey/show-docs
2019-02-22 08:19:01 -08:00
cgriggs01 b2d46ad2ed two new community providers 2019-02-21 15:44:56 -08:00
Nick Fagerlund 79c2fd2f3a website: rename expressions-representation to block-expressions-representation 2019-02-21 14:00:58 -08:00
cgriggs01 c625283511 adding new provider links 2019-02-21 13:46:42 -08:00
Kristin Laemmert 2aef47d01d website: clarify format_version 2019-02-21 12:07:06 -08:00
Nick Fagerlund 3c42508700
Apply suggestions from code review
Co-Authored-By: mildwonkey <mildwonkey@users.noreply.github.com>
2019-02-21 11:52:08 -08:00
Nick Fagerlund 883d587734 website: ACTUALLY fix indentation issues in config rep
There was an issue with some hardtabs, I think.
2019-02-21 11:02:33 -08:00
Nick Fagerlund 4a19b53b55 website: Fix confusing indentation issues in configuration representation 2019-02-20 18:49:06 -08:00
Nick Fagerlund 0a58004da4 website: Add JSON output format to nav sidebar 2019-02-20 18:40:44 -08:00
Nick Fagerlund 92e609c98b website: Revise json format doc 2019-02-20 18:40:44 -08:00
Nick Fagerlund c2979e7278 website: fix JSON typo (resources is array of objects) 2019-02-20 18:40:44 -08:00
Nick Fagerlund ff47cab8c7 website: Fix JSON typo (child_modules is array) 2019-02-20 18:40:39 -08:00
Nick Fagerlund f6c5e33c00 website: fix highlighting and line breaks 2019-02-20 18:40:39 -08:00
Nick Fagerlund 7ba654a8a9 website: Revise show command docs 2019-02-20 18:40:31 -08:00
Brian Flad 185a3304e5
Merge pull request #20374 from hashicorp/td-backend-s3-dependencies
backend/s3: Switch from github.com/terraform-providers/terraform-provider-aws to github.com/hashicorp/aws-sdk-go-base
2019-02-20 08:42:07 -08:00
Paddy 1bef862e3a
Merge pull request #18972 from rileykarson/patch-2
Fix Google Cloud Platform name across docs
2019-02-19 15:50:46 -08:00
henninge 9f3ed9ddf2
Only path-style S3 URLs are supported.
The go-getter library that is used by the module loader validates S3 URLs in the parseURL function. That function assumes path-style URLs and fails on virtual-hosted-style URLs.
2019-02-18 15:05:21 +01:00
Brian Flad 1aaac172b0
backend/s3: Switch from github.com/terraform-providers/terraform-provider-aws to github.com/hashicorp/aws-sdk-go-base
Output from acceptance testing (no new failures):

```
--- PASS: TestBackend_impl (0.00s)
--- PASS: TestBackendConfig (0.37s)
--- PASS: TestBackendConfig_invalidKey (0.00s)
--- PASS: TestBackend (3.26s)
--- PASS: TestBackendLocked (6.80s)
--- FAIL: TestBackendExtraPaths (2.32s)
--- PASS: TestBackendPrefixInWorkspace (2.06s)
--- PASS: TestKeyEnv (8.20s)
--- PASS: TestRemoteClient_impl (0.00s)
--- PASS: TestRemoteClient (2.42s)
--- PASS: TestRemoteClientLocks (6.33s)
--- PASS: TestForceUnlock (13.31s)
--- PASS: TestRemoteClient_clientMD5 (11.75s)
--- PASS: TestRemoteClient_stateChecksum (10.07s)
```
2019-02-18 02:30:30 -05:00
Kristin Laemmert a43004e382 website/docs: add detailed documentation for the json serialization of
terraform plan
2019-02-14 14:20:54 -08:00
Kristin Laemmert f7ab90207c website/docs: add -json flag to terraform show docsn 2019-02-14 14:20:54 -08:00
Martin Atkins b4d9f63622 website: Forward-port docs on file-hashing functions from 0.11 branch 2019-02-13 16:10:14 -08:00
Radek Simko 5a20e1ab94
Merge pull request #20243 from hashicorp/v0.12-upgrade-guide-remote-state
docs/upgrade-guide: Document changes in remote state referencing
2019-02-12 22:16:41 +00:00
cgriggs01 1565abfcaa add four community providers 2019-02-11 17:25:30 -08:00
Radek Simko 5ffb106783
docs/upgrade-guide: Document changes in remote state referencing 2019-02-08 11:14:16 +00:00
Nicolas Lamirault fb6ba95579
Change the UptimeRobot provider
I've got some errors using the actual [UptimeRobot provider](https://github.com/SpamapS/terraform-provider-uptimerobot/).
Another provider [exists](https://github.com/louy/terraform-provider-uptimerobot) and it works fine.

An issue is open by the author (@louy)  : https://github.com/hashicorp/terraform/issues/18167

Author of the actual provider, update his project as **DEPRECATED**. 

See: https://github.com/SpamapS/terraform-provider-uptimerobot/
2019-02-07 17:06:35 +01:00
cgriggs01 41af6ce54b two new community providers 2019-02-06 11:01:22 -08:00
Laura Martin 76dedfbf9d Update docs for 0.12 terraform_remote_state data source
In 0.12, the outputs for a data source of terraform_remote_state are
nested under the 'outputs' attribute [1]. This updates the docs
to make this change clearer.

Worked with @radeksimko at Terraform hackday, who has submitted a
related upgrade guide [2]

[1] 1f4d2f4c50/builtin/providers/terraform/data_source_state.go (L16-L43)
[2] d8e00191b7
2019-02-06 13:53:51 +01:00
cgriggs01 4db4f9102d change plath name 2019-02-05 10:10:09 -08:00
Nick Fagerlund d1daa7e518 website: Make 0.11 and 0.12 subsections of 'Configuration Language' 2019-02-01 17:20:54 -08:00
Nick Fagerlund 58289e2d90 website: Change absolute 0.11 -> 0.11 links to relative 2019-02-01 17:20:54 -08:00
Nick Fagerlund 2c50808bbb website: Version notes: Add new -> old links to 0.12 language docs (function pages) 2019-02-01 17:20:54 -08:00
Nick Fagerlund 4a190127b9 website: Version notes: Add new -> old links to 0.12 language docs (except function pages) 2019-02-01 17:20:54 -08:00
Nick Fagerlund 9ce8e0ee18 website: Version notes: Add old -> new links to 0.11 docs 2019-02-01 17:20:54 -08:00
Nick Fagerlund b726cc4ba9 website: Update H1 header of 0.12 index.html 2019-02-01 17:20:54 -08:00
Nick Fagerlund 2dcd4a886f website: Standardize page titles in 0.11 language docs 2019-02-01 17:20:54 -08:00
Nick Fagerlund a9bcc0fe06 website: Fix sidebar nav links and 'sidebar_current' IDs for 0.11 docs
Because of the different possibilities for arranging the nav sidebars, we want
to make sure:

- IDs for the 0.11 and 0.12 language docs have a common prefix.
- That prefix is not the exact string `docs-config`.

Have I mentioned before that I really dislike this prefix matching behavior.
2019-02-01 17:20:54 -08:00
Nick Fagerlund 11cfdf3b67 website: Add 0.11 configuration language docs (WIP)
This is a non-working commit, because a bunch of links (including the sidebar
nav) are broken. Using a transition commit like this makes it easier to see the
changes necessary to get this content woven into the site.
2019-02-01 17:20:54 -08:00
Nick Fagerlund 0fddabf972 website: Reorganize nav sidebars to improve jumps between sections 2019-01-31 16:18:23 -08:00
Martin Atkins 954d38e870 lang: New file-hashing functions
In prior versions, we recommended using hash functions in conjunction with
the file function as an idiom for detecting changes to upstream blobs
without fetching and comparing the whole blob.

That approach relied on us being able to return raw binary data from
file(...). Since Terraform strings pass through intermediate
representations that are not binary-safe (e.g. the JSON state), there was
a risk of string corruption in prior versions which we have avoided for
0.12 by requiring that file(...) be used only with UTF-8 text files.

The specific case of returning a string and immediately passing it into
another function was not actually subject to that corruption risk, since
the HIL interpreter would just pass the string through verbatim, but this
is still now forbidden as a result of the stricter handling of file(...).

To avoid breaking these use-cases, here we introduce variants of the hash
functions a with "file" prefix that take a filename for a disk file to
hash rather than hashing the given string directly. The configuration
upgrade tool also now includes a rule to detect the documented idiom and
rewrite it into a single function call for one of these new functions.

This does cause a bit of function sprawl, but that seems preferable to
introducing more complex rules for when file(...) can and cannot read
binary files, making the behavior of these various functions easier to
understand in isolation.
2019-01-25 10:18:44 -08:00
Tom Harvey ec0419fe91
backend/azurerm: fixing the syntax highlighting (#20085) 2019-01-23 13:33:11 +00:00
Martin Atkins 2f8f7d6f4d lang/funcs: Type conversion functions
It's not normally necessary to make explicit type conversions in Terraform
because the language implicitly converts as necessary, but explicit
conversions are useful in a few specialized cases:

- When defining output values for a reusable module, it may be desirable
  to force a "cleaner" output type than would naturally arise from a
  computation, such as forcing a string containing digits into a number.
- Our 0.12upgrade mechanism will use some of these to replace use of the
  undocumented, hidden type conversion functions in HIL, and force
  particular type interpretations in some tricky cases.
- We've found that type conversion functions can be useful as _temporary_
  workarounds for bugs in Terraform and in providers where implicit type
  conversion isn't working correctly or a type constraint isn't specified
  precisely enough for the automatic conversion behavior.

These all follow the same convention of being named "to" followed by a
short type name. Since we've had a long-standing convention of running all
the words together in lowercase in function names, we stick to that here
even though some of these names are quite strange, because these should
be rarely-used functions anyway.
2019-01-17 10:01:47 -08:00
Martin Atkins da51e72cbb lang/functions: set functions from cty
The sethaselement, setintersection, and setunion functions are defined in
the cty stdlib. Making them available in Terraform will make it easier to
work with sets, and complement the currently-Terraform-specific setproduct
function.

In the long run setproduct should probably move into the cty stdlib too,
but since it was submitted as a Terraform function originally we'll leave
it here now for simplicity's sake and reorganize later.
2019-01-16 09:57:16 -08:00
Martin Atkins edb5f82de1 lang/funcs: Convert the "setproduct" function to the new approach
In our new world it produces either a set of a tuple type or a list of a
tuple type, depending on the given argument types.

The resulting collection's element tuple type is decided by the element
types of the given collections, allowing type information to propagate
even if unknown values are present.
2019-01-16 09:57:16 -08:00
Riley Karson 74ec68f9d4 Fix Google Cloud Platform name across docs.
The `google` provider supports GCP, not necessarily Google Cloud as a whole.

Update the naming on this index page to match [the provider README](https://github.com/terraform-providers/terraform-provider-google#terraform-provider-for-google-cloud-platform) and the [provider docs changes](https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/index.html.markdown#google-cloud-platform-provider) coming in the next release.
2019-01-15 12:10:20 -08:00
Sander van Harmelen e08a7e979e backend/remote: use the correct test operation 2019-01-15 16:13:16 +01:00
Nick Fagerlund ac45e43fda website: Finish moving "writing custom providers" to /docs/extend/
This document was previously copied to the "Extending Terraform" section (in the
terraform-website repo), and the old URL was redirected so that the copy in
/guides can no longer be reached on the website. But the old copy of the file
remained, and now it runs the risk of confusing contributors, since the copy in
terraform-website/.../docs/extend is the more up-to-date version.
2019-01-11 16:36:40 -08:00
Scott Stevenson cef46ef953
Add details about using lock=true when consul ACL is enabled
This PR addresses https://github.com/hashicorp/terraform/issues/19963.
2019-01-11 14:43:56 -05:00
Brian Flad 05691a978e
Merge pull request #19951 from hashicorp/s3-backend-nosuchbucket-enhanced-error
backend/s3: Configure AWS Client MaxRetries and provide enhanced S3 NoSuchBucket error message
2019-01-11 10:04:16 -05:00
Chris Griggs 0cc057b873
Merge branch 'master' into cgriggs01-comm-5 2019-01-09 14:31:47 -08:00
Tom Harvey 177ca3711d
Adding the AzureAD entry to the providers page (#19946)
Adding the AzureAD entry to the providers page
2019-01-09 22:28:25 +00:00
cgriggs01 a9069cab7b edit fmt 2019-01-09 11:40:34 -08:00
cgriggs01 885a366f2e add <tr> 2019-01-09 11:21:02 -08:00
cgriggs01 830e23b217 add new community providers 2019-01-09 10:39:32 -08:00
Brian Flad ed37d07632
backend/s3: Configure AWS Client MaxRetries and provide enhanced S3 NoSuchBucket error message
The AWS Go SDK automatically provides a default request retryer with exponential backoff that is invoked via setting `MaxRetries` or leaving it `nil` will default to 3. The terraform-aws-provider `config.Client()` sets `MaxRetries` to 0 unless explicitly configured above 0. Previously, we were not overriding this behavior by setting the configuration and therefore not invoking the default request retryer.

The default retryer already handles HTTP error codes above 500, including S3's InternalError response, so the extraneous handling can be removed. This will also start automatically retrying many additional cases, such as temporary networking issues or other retryable AWS service responses.

Changes:
* s3/backend: Add `max_retries` argument
* s3/backend: Enhance S3 NoSuchBucket error to include additional information
2019-01-09 13:01:37 -05:00
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
Martin Atkins d0e6a4c69a lang: Add "formatdate" function
We missed this one on a previous pass of bringing in most of the cty
stdlib functions.

This will resolve #17625 by allowing conversion from Terraform's
conventional RFC 3339 timestamps into various other formats.
2019-01-07 09:10:14 -08:00
Martin Atkins c753df6a93 lang/funcs: templatefile function
This function is similar to the template_file data source offered by the
template provider, but having it built in to the language makes it more
convenient to use, allowing templates to be rendered from files anywhere
an inline template would normally be allowed:

    user_data = templatefile("${path.module}/userdata.tmpl", {
      hostname = format("petserver%02d", count.index)
    })

Unlike the template_file data source, this function allows values of any
type in its variables map, passing them through verbatim to the template.
Its tighter integration with Terraform also allows it to return better
error messages with source location information from the template itself.

The template_file data source was originally created to work around the
fact that HIL didn't have any support for map values at the time, and
even once map support was added it wasn't very usable. With HCL2
expressions, there's little reason left to use a data source to render
a template; the only remaining reason left to use template_file is to
render a template that is constructed dynamically during the Terraform
run, which is a very rare need.
2018-12-21 08:06:14 -08:00
Nick Fagerlund 17873ae61b website: Update functions section page titles 2018-12-20 14:20:42 -08:00
Nick Fagerlund 9f85e6d5cc website: Update configuration language section page titles 2018-12-20 14:20:42 -08:00
Nick Fagerlund d2abdc23ac website: Structural edit of configuration language docs
This commit is a wide-ranging set of edits to the pages under
/docs/configuration. Among other things, it

- Separates style conventions out into their own page.
- Separates type constraints and conversion info into their own page.
- Conflates similar complex types a little more freely, since the distinction is
  only relevant when restricting inputs for a reusable module or resource.
- Clarifies several concepts that confused me during edits.
2018-12-20 14:20:42 -08:00
cgriggs01 da370cd689 fix spacing in website docs 2018-12-20 13:27:15 -08:00
cgriggs01 9df6e2df42 add hedvig provider links 2018-12-20 10:54:20 -08:00
cgriggs01 79f93ed695 links for ucloud provider 2018-12-19 13:11:31 -08:00
Sander van Harmelen da8e02eb2e
Merge pull request #19647 from hashicorp/svh/f-versions
core:  add a method to the disco package retrieve version constraints
2018-12-14 12:38:52 +01:00
Sander van Harmelen 268c0f85ce Add a method to retrieve version contraints 2018-12-14 12:17:31 +01:00
Brian Flad 058434d28b
Merge pull request #19571 from hashicorp/f-backend-s3-other-endpoints
backend/s3: Support DynamoDB, IAM, and STS endpoint configurations
2018-12-10 19:28:01 -05:00
Chris Doherty b4c28a9789
Merge pull request #19561 from invertigo/patch-1
remove approximate release date
2018-12-10 13:29:17 -08:00
Tom Harvey 383bc98f5c
backend/azurerm: Support for authenticating using the Azure CLI (#19465)
* Upgrading to 2.0.0 of github.com/hashicorp/go-azure-helpers

* Support for authenticating using Azure CLI

* backend/azurerm: support for authenticating using the Azure CLI
2018-12-10 21:23:30 +00:00
cgriggs01 41897bb437 six new community providers 2018-12-10 11:13:45 -08:00
Brian Flad 9a3b02cd6c
backend/s3: Support DynamoDB, IAM, and STS endpoint configurations
This change enables a few related use cases:
* AWS has partitions outside Commercial, GovCloud (US), and China, which are the only endpoints automatically handled by the AWS Go SDK. DynamoDB locking and credential verification can not currently be enabled in those regions.
* Allows usage of any DynamoDB-compatible API for state locking
* Allows usage of any IAM/STS-compatible API for credential verification
2018-12-07 03:10:51 -05:00
cgriggs01 808c76fa9b Add skytap links 2018-12-05 15:38:47 -08:00
Alex Gottschalk 029f54792f
remove approximate release date
"Later this summer" is long-gone.
2018-12-05 12:19:08 -08:00
Chris Griggs 89347e9c81
Updates path name 2018-11-28 16:55:03 -08:00
cgriggs01 c943083a4b selvpc -> selectel 2018-11-28 13:30:48 -08:00
Daniel Schroeder 65080b9ce3 website: Fix redundant "be" in workspaces documentation 2018-11-28 07:59:37 -08:00
Chris Griggs e32c5de440
Merge pull request #19390 from cgriggs01/cgriggs01-selvpc
[Website] New certified and community provider
2018-11-26 13:03:50 -08:00
cgriggs01 f013942150 formatting edits 2018-11-26 13:01:55 -08:00
Tom Harvey 6d4f702467
backend/azurerm: support for custom resource manager endpoints (#19460)
* backend/azurerm: removing the `arm_` prefix from keys

* removing the deprecated fields test because the deprecation makes it fail

* authentication: support for custom resource manager endpoints

* Adding debug prefixes to the log statements
2018-11-26 14:42:16 +01:00
Tom Harvey d580f30e03
backend/azurerm: removing the `arm_` prefix from keys (#19448)
* backend/azurerm: removing the `arm_` prefix from keys

* removing the deprecated fields test because the deprecation makes it fail
2018-11-26 11:19:43 +01:00
Tom Harvey 96b1c951fa
backend/azurerm: support for authenticating via SAS Tokens (#19440)
* adding acceptance tests for msi auth

* including the resource group name in the tests

* backend/azurerm: support for authenticating using a SAS Token

* resolving merge conflicts

* moving the defer to prior to the error
2018-11-22 18:02:33 +01:00
Tom Harvey c928962f44
backend/azurerm: support for authenticating via msi (#19433)
* backend/azurerm: support for authenticating via msi

* adding acceptance tests for msi auth

* including the resource group name in the tests

* support for using the test client via msi
2018-11-22 16:52:27 +01:00
Tom Harvey 0ec109bdc0
backend/azurerm: upgrading the SDK / support for proxies (#19414)
* vendor updates

- updating to v21.3.0 of github.com/Azure/azure-sdk-for-go
- updating to v10.15.4 of github.com/Azure/go-autorest
- vendoring github.com/hashicorp/go-azure-helpers @ 0.1.1

* backend/azurerm: refactoring to use the new auth package

- refactoring the backend to use a shared client via the new auth package
- adding tests covering both Service Principal and Access Key auth
- support for authenticating using a proxy
- rewriting the backend documentation to include examples of both authentication types

* switching to use the build-in logging function

* documenting it's also possible to retrieve the access key from an env var
2018-11-21 22:06:03 +01: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
cgriggs01 28de3823ac new provider and community links 2018-11-16 11:35:33 -08:00
Nikolai Vavilov e10cf6dabd
website: add missing article 2018-11-11 23:15:11 +02:00
Kristin Laemmert 1be09745d7
Merge pull request #19007 from cardoe/fix-swift-backend-docs
Fix backend/swift docs
2018-11-08 06:34:09 -08:00