Commit Graph

5158 Commits

Author SHA1 Message Date
Aleksejs Sinicins ece099f453 website: fix "contains" interpolation example 2017-10-17 07:25:09 -07:00
Chris Griggs 5fb1fe9de8 Update README guidelines for module registry (#16223) 2017-10-12 14:22:58 +01:00
Clint 512591533c add logicmonitor provider (#16314) 2017-10-11 13:00:42 -05:00
Gauthier Wallet ed9ba576e3 core: New interpolation function "chunklist"
This turns a list into a list of lists with each element (apart from possibly the last) being the given length.
2017-10-10 11:56:13 -07:00
Patrick Decat 00c3367dda website: Replace `~` by `$HOME` in documentation of TF_PLUGIN_CACHE_DIR 2017-10-03 18:34:22 -07:00
James Bardin 91442b7146 Merge pull request #15680 from brunomcustodio/etcdv3-backend
[WIP] etcd v3 backend with lock support.
2017-10-03 14:15:58 -04:00
James Bardin d477d1f6d4 Merge pull request #15553 from bonifaido/custom_s3_backend
Allow non-AWS S3 backends
2017-10-02 19:39:48 -04:00
Alex Tasioulis 4e6289dad0 website: change order of provisioners in sidebar list
Assume null_resource should also be ordered alphabetically
2017-10-01 22:03:39 +01:00
Alex Tasioulis 825a098c56 website: add salt-masterless provisioner to sidebar
Fixes #16226
2017-10-01 22:02:43 +01:00
James Bardin da0e74276a fix provider with local value test and docs
Make sure this fails during destroy

Add a note in the documentation that local values may fail during
destroy.
2017-09-29 17:14:07 -04:00
Martin Atkins 34956cd124 website: Document the plugin cache
Since we don't currently auto-install provisioner plugins this is
currently placed on the providers documentation page and referred to as
the "Provider Plugin Cache". In future this mechanism may also apply to
provisioners, in which case we'll figure out at that point where better
to place this information so it can be referenced from both the provider
and provisioner documentation pages.
2017-09-29 14:03:09 -07:00
Martin Atkins f19bf25945 website: don't recommend "providers" block in CLI config
This mechanism for configuring plugins is now deprecated, since it's not
capable of declaring plugin versions. Instead, we recommend just placing
plugins into a particular directory, which is now documented on the
main providers documentation page and linked from the more detailed docs
on plugins in general.
2017-09-29 14:03:09 -07:00
Martin Atkins adbb9d0cf9 website: checkpoint settings refer to CLI config file docs
Previously we described inline here where to put the .terraformrc file,
but now we have a separate page all about this file that gives us more
room to describe in more detail where the file is placed and what else it
can do.
2017-09-29 14:03:09 -07:00
Martin Atkins 35959b8689 website: document explicitly the CLI configuration file
Previously this file was mentioned in passing in a few locations. It now
has enough functionality to warrant its own page.
2017-09-29 14:03:09 -07:00
Martin Atkins c5d8f2ffd2 website: clarify that provider version does not accept interpolations
This fixes #15896.
2017-09-28 12:41:39 -07:00
Ariel Alonso 550ae05819 config: new "transpose" interpolation function
This function takes a map of lists of strings and inverts it so that
the string values become keys and the keys become items within the
corresponding lists.
2017-09-28 10:29:25 -07:00
Martin Atkins 2c782e60fa website: documentation for the shell tab-completion support 2017-09-26 14:01:13 -07:00
Krzysztof Wilczynski 6e7e03f4ea config: new "abs" interpolation function
This new function returns the absolute value for a given number.
2017-09-25 14:19:18 -07:00
Martin Atkins 4daf624459 website: correct the version when Terraform Registry support was added 2017-09-19 09:54:45 -07:00
Nick Fagerlund e71fb8649a website: Add TFE beta to sidebar nav 2017-09-19 07:40:05 -07:00
Paul Banks 72631b34bd Add version warning to registry docs
Checked locally here by me and Jack
2017-09-19 08:54:22 -05:00
James Bardin 50005ec817 Merge branch 'f-registry-docs' into v0.10.6-release 2017-09-18 15:30:31 -05:00
Paul Banks dadb8be289 Add query params to endpoint docs 2017-09-18 12:06:25 -05:00
Paul Banks 89ac68808a Fix docs to use pagniated response format and document pagination meta 2017-09-18 12:00:34 -05:00
Paul Banks d52dbae2a0 Add back Support page with info about getting help. 2017-09-15 22:59:03 +01:00
Paul Banks e6b7490ed8 Fix broken links and update publish gif 2017-09-15 22:42:38 +01:00
Paul Banks 197bbc6114 Add screenshots, make registry the default module source example, remove dead support link in registry submenu 2017-09-15 17:50:22 +01:00
Paul Banks 722b3c6708 API examples updated to use Consul modules 2017-09-15 16:26:37 +01:00
Martin Atkins 0fe43c8977 cli: allow disabling "next steps" message in terraform plan
In #15884 we adjusted the plan output to give an explicit command to run
to apply a plan, whereas before this command was just alluded to in the
prose.

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

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

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

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

* "terraform init" does not include the final paragraphs that suggest
  running "terraform plan" and tell you in what situations you might need
  to re-run "terraform init".
* "terraform plan" does not include the final paragraphs that either
  warn about not specifying "-out=..." or instruct to run
  "terraform apply" with the generated plan file.
2017-09-14 10:51:41 -07:00
Martin Atkins b95610c173 Merge #15387: terraform fmt -check option
This new option causes fmt to return a non-zero exit code if any inconsistencies are detected.
2017-09-14 09:51:10 -07:00
Micah Hausler 7fa4b648bb config: multi-line "indent" function
This function prepends a number of spaces on to all but the first line
of a string containing multiple lines of text.
2017-09-14 09:47:48 -07:00
Kaveh Mousavi Zamani 2b8843cc2c "defaults" property for terraform_remote_state
This allows providing default values for keys that might not be set in the retrieved state.
2017-09-13 09:34:00 -07:00
Paul Banks 71b58abf9b Filling out API docs. Some TODOs remain 2017-09-11 20:11:02 +01:00
Martin Atkins 93651450b1 website: don't talk about graphs in the Getting Started guide
Previously we just assumed the reader was familiar with the idea of a
graph but didn't explain it.

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

Additionally, Paul Hinze did a great talk on how Terraform uses graphs
at HashiConf 2016 which is good additional content for our existing
"Graph Internals" page, which includes a concise explanation of the
basics of graph theory.
2017-09-11 11:09:11 -07:00
Mitchell Hashimoto 3bb89e89d6 website: note repo desc for publishing, fix broken link 2017-09-11 14:00:55 +01:00
Mitchell Hashimoto 9b363cd7d4 website: add LICENSE to standard module structure 2017-09-11 14:00:55 +01:00
Mitchell Hashimoto e71b271492 website: publishing and private registry docs 2017-09-11 14:00:55 +01:00
Mitchell Hashimoto de50eeb6b6 website: more registry docs 2017-09-11 14:00:55 +01:00
Mitchell Hashimoto b4f2fae0a6 website: api docs for the registry 2017-09-11 14:00:55 +01:00
Mitchell Hashimoto 331b6f339a website: finding and using registry modules 2017-09-11 14:00:55 +01:00
Mitchell Hashimoto 0718e9ce3f website: standard module structure 2017-09-11 14:00:55 +01:00
Mitchell Hashimoto bf7f4d243d website: working on registry docs 2017-09-11 14:00:54 +01:00
Mitchell Hashimoto 1c098ce4ec website: trivial change to make branch 2017-09-11 14:00:54 +01:00
Bruno Miguel Custodio 524c3934c6
Add TLS support. 2017-09-09 08:03:59 +01:00
Bruno Miguel Custodio 6daf1d9d84
Allow for username and password to be read from envvars. 2017-09-08 23:41:27 +01:00
Bruno Miguel Custodio 8f7b315037
Add documentation. 2017-09-08 23:40:05 +01:00
Shih Oon Liong bcfb63098a website: Example of using maps with local values 2017-09-08 10:33:56 -07:00
Justin Campbell fd4cc78839 docs: Add local values usage example 2017-09-07 13:49:33 -04:00
Chris Doherty ec4cecc67b Merge pull request #15999 from hashicorp/cdoherty/doc-tweak
Cosmetic doc changes
2017-09-06 09:29:34 -07:00
Alex Chan a496b45c2c
Add some missing quotes in the Module docs 2017-09-06 10:44:59 +01:00
Chris Doherty 793b986860 Cosmetic doc changes:
- Having a map 'foo' with a key 'foo' is confusing.
  - it's -> its
2017-09-05 15:28:36 -07:00
Tom Harvey cbb512d374 Updating the AzureRM Backend Documentation (#15990)
* Updating to reference this has been renamed

* Clarifying Blob Storage
2017-09-04 07:56:16 +01:00
Martin Atkins 6a4498ba76 provisioner/salt-masterless: add "_file" suffix to "minion_config"
In #15870 we got good feedback that it'd be more useful to have the
various filename-accepting arguments on this provisioner instead accept
strings that represent the contents of such files, so that they can be
generated from elsewhere in the Terraform config.

This change does not achieve that, but it does make room for doing this
later by renaming "minion_config" to "minion_config_file" so that we
can later add a "minion_config" option alongside that takes the file
content, and deprecate "minion_config_file".

Ideally we'd just implement the requested change immediately, but
unfortunately the release schedule doesn't have time for this so this is
a pragmatic change to allow us to make the full requested change at a
later date without backward incompatibilities.

This change is safe because the salt-masterless provisioner has not yet
been included in a release at the time of this commit.
2017-08-30 13:55:28 -07:00
Mitchell Hashimoto b8f7436948
website: address changes from @catsby 2017-08-30 10:47:33 -07:00
Mitchell Hashimoto d4286dcd8c
website: new provider dev program content
This brings back the provider dev program content with a copy change.
Reviewed by Burzin already, requesting review from Clint.
2017-08-28 17:50:39 -07:00
Martin Atkins bb0e57fec1 website: explain how to upgrade providers
Previously the -upgrade option was covered only on the "terraform init" usage page. It seems also worth mentioning in the main docs on provider versioning, since we're already explaining here other mechanics of the versioning/constraints system.
2017-08-28 12:17:24 -07:00
Geoffrey Wiseman 648acf7331 Describing Module Encapsulation
Terraform modules encapsulate their resources, and dependencies can only
be expressed through outputs, which wasn't clear to me in the existing
documentation. I'm hoping a small change will make that more explicit.
2017-08-28 08:51:17 -07:00
Loïc Albertin 21b287e919 backend/consul: allow specifying various Consul client security options
These new options are equivalent to the consul CLI arguments -ca-file, -client-cert and -client-key.
2017-08-23 09:47:21 -07:00
Gabriel Francisco 7b3f32f3de Resource aws_instance does not have attr private_ip_address (#15890) 2017-08-23 11:41:16 -05:00
Joe Winter b6a464c521 Provide example for terraform taint documentation (#15873)
* Provide example to taint documentation

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

* Add documentation for tainting a single resource
2017-08-22 13:47:30 -05:00
Sunny 06fd5d7a3e config: urlencode interpolation function
This escapes all characters that might have a special interpretation when embedded into a portion of a URL, including slashes, equals signs and ampersands.
2017-08-22 11:26:09 -07:00
Gorka Lerchundi Osa a303817e03 config: base64gzip interpolation function
Since Terraform's internals are not 8-bit clean (it assumes UTF-8
strings), we can't implement raw gzip directly. We're going to add
support where it makes sense for passing data to attributes as
base64 so that the result of this function can be used.
2017-08-22 10:44:55 -07:00
Stephen Weatherford 5d5f8224d2 provisioner/local-exec: allow user to specify interpreter 2017-08-22 10:16:36 -07:00
Martin Atkins 2e0c1d07ae Merge #15793: Locking support in HTTP remote backend 2017-08-22 09:43:38 -07:00
Martin Atkins fd88c98c20 website: documentation for local values 2017-08-21 15:15:25 -07:00
Clint e2272f71a0 Update our documentation to push "Getting Started" better (#15866)
* update plugin/provider to make clear this section isn't needed for regular use

* add some links and notes about getting started

* remove the mention of binaries... I 'm not sure it's needed yet

* 'Installing Terraform Providers' section

* sometimes I can't words good

* move the 'installing providers' block

* cleanup of terms

* copy that update to plugins/provider too
2017-08-21 15:44:27 -05:00
Ross McFarland e5029de439 Update remote/http doc to match locking changes 2017-08-20 05:59:34 -07:00
Sebastian Maj 28b5708fef config: jsonencode function to support nested lists and maps 2017-08-18 09:57:57 -07:00
James Bardin 216a68a41b update backend docs to reflect new azurerm name
The backend has been renamed. Using the old name in the config will
trigger a deprecation warning, but the implementation and the
documentation is the same.
2017-08-17 12:55:48 -04:00
Peter McAtominey f9e8e54835 backend: convert Azure remote state to a backend
Added locking support via blob leasing (requires that an empty state is
created before any lock can be acquired.

Added support for "environments" in much the same way as the S3 backend.
2017-08-17 16:32:17 +01:00
James Bardin 18af7750d4 Merge pull request #14720 from sevagh/master
Add salt-masterless provisioner
2017-08-16 16:47:46 -04:00
JWal31 117f44bcda config: Add "flatten" interpolation function
This function turns a list of lists or any arbitrary number of nested
lists into a flat list of primitive values.
2017-08-16 13:46:19 -07:00
Tom Harvey 81f9c78122 Adding `resource_group_name` back in, fixes #15610 (#15809) 2017-08-15 11:54:48 +01:00
Ross McFarland 06b4b509d7 Doc state/http supports_locking 2017-08-13 09:49:49 -07:00
James Bardin ea3e87b584 Merge pull request #15768 from hashicorp/jbardin/remote-import
Don't ForceLocal for the import backend
2017-08-11 09:12:46 -04:00
Martin Atkins 4bc88d2585 website: correct the spelling of the -from-module arg to "terraform init" 2017-08-10 17:56:11 -07:00
clint shryock f291994a3f Guides: remove the provider development program for now 2017-08-10 10:10:57 -05:00
James Bardin 4034f988df update import command docs
Fix the -state and -state-out wording to be consistent with other
commands. Remove the erroneous reference to remote state in the website
version of the flag description.
2017-08-09 14:01:45 -04:00
Alex Tasioulis 5f3e76203b Fix titles on partner contact table on provider development program guide
"Website" and "Email" were the wrong way around.
2017-08-08 16:19:49 +01:00
James Bardin a56a97a5f5 mention 'terraform.d/plugins` for automation 2017-08-07 17:35:16 -04:00
James Bardin 2597500b47 reword init documentation for consistency
Reword the paragraph to match the voice and point of view of the rest of
the section. Use the term general termn "plugin" rather than "provider"
2017-08-07 17:28:11 -04:00
Clint 399856001a Merge pull request #15745 from ctavan/improve-provider-plugin-docs
Document how to provide provider plugin overrides
2017-08-07 14:40:14 -05:00
Greg Swift 944a9301df Fix typo of additional 2017-08-07 11:47:42 -05:00
Kelly Brownsberger 40bb7612c1 small typo correction
'used used' => 'used'
2017-08-07 11:52:04 -04:00
Sevag Hanssian 08670763aa Add salt-masterless provisioner doc 2017-08-07 10:00:29 -04:00
Christoph Tavan b413061fd8
Document how to provide provider plugin overrides
The docs did not mention that it is possible to provide overrides for specific
plugins by placing them into a `terraform.d/plugins/os_arch/` directory inside
the working dir.

Closes #15727.
2017-08-07 10:53:40 +02:00
James Bardin eadda50f02 Merge pull request #15652 from hashicorp/jbardin/state-command
state commands with remote state backends
2017-08-03 13:29:45 -04:00
James Bardin 55d18dcef2 update state rm amd mv docs
Update the documentation to match the current behavior, and make the
usage output and website docs match.
2017-08-03 13:24:23 -04:00
Nick Fagerlund 8c7bfde292 Docs: Fix broken links and a broken example
These links were casualties of the core/provider split. There was also
an example that suggested cloning a subdirectory of a git repo.
2017-08-02 20:03:41 -07:00
Clint 9b9bfb9fec Add provider dev program guide (#15677)
* Add provider dev program guide

Requires assets from https://github.com/hashicorp/terraform-website/pull/12

* editing from feedback

* add spaces after ##
2017-08-02 09:54:26 -05:00
clint shryock 6a869f89bf fix broken/old link in Commands/Workspace 2017-08-01 17:49:32 -05:00
James Bardin efb007542b Merge pull request #15666 from hashicorp/f-init-from-module
command: terraform init -from-module=...
2017-07-31 09:32:17 -04:00
Martin Atkins 8a7a0a7459 command: terraform init -from-module=...
This restores the earlier behavior of the first positional argument to
terraform init in 0.9, but as a command line option.

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

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

In addition, much of the detail around backend partial configuration is
factored out into the backend configuration page, where it seems more
"at home"; previously it felt hard to follow exactly how partial
configuration would be used, due to the information on it being split over
two different pages.
2017-07-25 08:25:49 -07:00
seph 29ebe07e1e Update link to the AWS example 2017-07-24 14:52:29 -05:00
Kyle McCullough c2d86ed60f
website: documentation for fmt -check flag 2017-07-21 14:37:15 -05:00
Martin Atkins f6dace3476 website: document the Checkpoint service and how to disable it
This is documented for all other Hashicorp products using this service but
was missed for Terraform. This serves as a disclosure of the fact that
Terraform reaches out to a Hashicorp service, an explanation of the
purpose of that request, and instructions on how to disable it in
environments where it is inappropriate or cannot be supported due to a
firewall or other connectivity restrictions.
2017-07-18 16:48:16 -07:00
Martin Atkins da0aec1b32 website: attempt to clarify "terraform import" usage docs
Based on feedback from #15569 that the previous example was too abstract
and did not give enough context about what each of the different arguments
mean and how they generalize to other resource types.
2017-07-18 16:35:14 -07:00
Martin Atkins c57dbebe84 documentation: explain provider dev environment setup
The intent here is just to introduce some initial docs on our recommended
way to develop plugins in the same GOPATH as Terraform itself. The
documentation in this area needs some more fundamental rework as it is
rather outdated and mis-organized, but that's outside the scope of what
this change is trying to achieve.
2017-07-18 14:36:01 -07:00
Dhananjay Balan fd4a2fa262 website: Correct usage for force-unlock command 2017-07-18 09:02:29 -07:00
Nandor Kracser f6c77339f2 Allow non-AWS S3 backends
This commit makes sts, metadata and other AWS related API calls optional, thus the backend initialization will not send non-AWS API tokens to AWS APIs
2017-07-14 13:08:47 +02:00
Martin Atkins 0543574383 website: update upgrade-guide for plugin filename convention
This changed close to the release of beta1 to use underscores as the
separator and to use a lower-case "v" to avoid any issues on
case-insensitive filesystems.
2017-07-05 17:36:32 -07:00
Robert Liebowitz 8d98fdecac Autoload only .auto.tfvars files 2017-07-05 17:24:17 -07:00
Robert Liebowitz 006744bfe0 Use all tfvars files in working directory
As a side effect, several commands that previously did not have a failure
state can now fail during meta-parameter processing.
2017-07-05 17:24:17 -07:00
Radek Simko 14614a5423 command/validate: Add flag to check that all variables are specified (#13872)
* command/validate: Add flag to check that all variables are specified

* Rename config-only to check-variables
2017-07-05 17:32:29 +01:00
Martin Atkins 4a160d7fa0 website: A note about where the root parts of the website live now 2017-06-27 14:40:13 -07:00
James Bardin 5066fa2151 Merge pull request #13871 from fatmcgav/swift_move_to_backend
Move Swift remote state to backend
2017-06-27 16:23:46 -04:00
David Glasser 039d36bf91 command: add "apply -auto-approve=false" flag
A common reason to want to use `terraform plan` is to have a chance to
review and confirm a plan before running it.  If in fact that is the
only reason you are running plan, this new `terraform apply -auto-approve=false`
flag provides an easier alternative to

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

The flag defaults to true for now, but in a future version of Terraform it will
default to false.
2017-06-27 11:22:26 -07:00
Thomas Schaaf 4b85e91ac5 Update s3.html.md (#15299) 2017-06-27 18:57:38 +03:00
James Bardin 42cbb716b7 Merge pull request #15370 from rowleyaj/s3_backend_workspaces
Add configurable workspace prefix for S3 Backend
2017-06-27 11:44:12 -04:00
Ryan Uber dc53528350 Merge pull request #15379 from bernielomax/bernielomax/fix-private-bitbucket-repo-example
The "Private Bitbucket Repos" example did not work for me. I had to s…
2017-06-26 09:35:13 -07:00
Joe Selman 6f62c0c660 Add google_compute_backend_service to imports (#15275) 2017-06-26 17:34:17 +03:00
Riley Karson c80a21610d provider/google: SQL Database Importability (#15372)
Add `google_sql_database` and `google_sql_database_instance` to Importability page.

@danawillow
https://github.com/terraform-providers/terraform-provider-google/pull/11
https://github.com/terraform-providers/terraform-provider-google/pull/12
2017-06-23 12:15:17 +01:00
Justin Pye 5f5089f77f The "Private Bitbucket Repos" example did not work for me. I had to specify the "ref="as a URL param for this to work. Otherwise Terraform produced the following error:
Error loading Terraform: Error downloading modules: error downloading 'ssh://git@bitbucket.org/acme/foo.git?bar': /usr/bin/git exited with 128: Cloning into '.terraform/modules/yadayada'...
invalid command syntax.
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.
2017-06-23 11:37:37 +10:00
Alex Rowley 22f36a6e43
Document new field for S3 backend 2017-06-22 21:01:44 +01:00
James Bardin 020959546e add init -verify-plugin to website docs 2017-06-20 13:14:31 -04:00
Martin Atkins 63d4c0efe1 website: guide to running Terraform in automation
This guide covers assorted best practices and caveats for running
Terraform within orchestration tools and other automation. It provides
general examples and guidance, with the intent that this advice can be
adapted by the reader to a concrete implementation within a selected
orchestration tool.

This guide is based both on our in-house experience with Terraform
Enterprise and on in-house solutions we are aware of in certain
organizations.
2017-06-16 18:04:21 -07:00
Martin Atkins a8c58b081c core: -target option to also select resources in descendant modules
Previously the behavior for -target when given a module address was to
target only resources directly within that module, ignoring any resources
defined in child modules.

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

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

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

This is a breaking change for anyone depending on the previous behavior
of -target, since it will now select more resources than before. There is
no way provided to obtain the previous behavior. Eventually we may support
negative targeting, which could then combine with positive targets to
regain the previous behavior as an explicit choice.
2017-06-16 16:36:08 -07:00
James Bardin 9777174be1 Merge pull request #15325 from hashicorp/jbardin/init-docs
update init docs
2017-06-16 18:35:03 -04:00
James Bardin 4bbabb3df0 update init website docs 2017-06-16 18:31:51 -04:00
trung 681661a539 #15291: config/interpolate_funcs: Added contains() function to test if a given element is present in the list 2017-06-16 15:05:19 -07:00
Yuval Greenfield 23dff5124a Warn that amis are region specific (#15312)
* Warn that amis are region specific

To avoid `InvalidAMIID.NotFound`

See https://github.com/hashicorp/terraform/issues/11220

* Add the expected error

* Update build.html.md
2017-06-16 08:18:29 +01:00
Gavin Williams af5467b9fd website: Update swift backend documentation 2017-06-13 22:04:02 +01:00
Martin Atkins 7ed70bb00e website: new filesystem layout for core/provider split
This repo now contains only the core docs, with other content moving elsewhere.
2017-06-13 11:25:32 -07:00
Mary Elizabeth bc92696344 Merge pull request #15261 from hashicorp/update-bitbucket-cloud-docs
Add more context about user scopes to bitbucket cloud docs
2017-06-13 12:33:17 -05:00
Eric Ho 62acef9611 lifecycle block not in aws_autoscaling_group (#15268) 2017-06-13 12:28:52 +03:00
Mary Elizabeth Cutrali dfcfcb7f99 add more context to BB Cloud docs
- update content referring to GitHub
- expand on repository fetch
- note scopes that users must have in BB to create webhooks
2017-06-12 13:09:54 -05:00
Martin Atkins 5a57962a32 website: replace "env" command docs with "workspace" command docs
We are replacing this terminology. The old command continues to work for
compatibility, but is deprecated. The docs should reflect the
currently-recommended form.
2017-06-09 16:26:26 -07:00
Martin Atkins 33a266d61c provider/terraform: "workspace" argument instead of "environment"
We are moving away from using the term "environment" to describe separate
named states for a single config, using "workspace" instead. The old
attribute name remains supported for backward compatibility, but is
marked as deprecated.
2017-06-09 15:01:39 -07:00
Martin Atkins 3be1d3148b website: documentation for state workspaces
This replaces the previous documentation on "State Environments", as part
of our intentional terminology shift.
2017-06-09 15:01:39 -07:00
Martin Atkins 55d5e8a689 website: initial v0.10 upgrade guide
Further iteration of this will undoubtedly be needed before the final
release, but this is a start.
2017-06-09 14:03:59 -07:00
Martin Atkins 98ef947ed1 website: correction of heading and usage in "providers" command docs 2017-06-09 14:03:59 -07:00
Martin Atkins fb405ff296 website: new documentation about provider version configuration 2017-06-09 14:03:59 -07:00
Martin Atkins 766f8e5d64 command init: remove confusing uses of "environment" in the usage
"environment" is a very overloaded term, so here we prefer to use the
term "working directory" to talk about a local directory where operations
are executed on a given Terraform configuration.
2017-06-09 14:03:59 -07:00
Martin Atkins eaf5a62197 website: don't recommend to use "terraform init" to clone examples
This form of "terraform init" is vestigial at this point and being phased
out in 0.10. Something similar may return in a later version for
installing modules from a more formal module library, but for now we are
advising to use git manually to simplify the UX for "terraform init".
2017-06-09 14:03:59 -07:00
Martin Atkins d9b8c3cac0 website: "Initialization" section in the getting started guide
It's now required to run "terraform init" to get the provider plugins
installed, so we need to mention that in the intro guide.
2017-06-09 14:03:59 -07:00
Martin Atkins 9a398a7793 command: require resource to be in config before import
Previously we encouraged users to import a resource and _then_ write the
configuration block for it. This ordering creates lots of risk, since
for various reasons users can end up subsequently running Terraform
without any configuration in place, which then causes Terraform to want
to destroy the resource that was imported.

Now we invert this and require a minimal configuration block be written
first. This helps ensure that the user ends up with a correlated resource
config and state, protecting against any inconsistency caused by typos.

This addresses #11835.
2017-06-09 14:03:59 -07:00
Martin Atkins d7d8ea9543 website: Initial docs for the new "providers" subcommand
This will be fleshed out later as part of more holistic documentation for
the new provider plugin separation, but this is some minimal documentation
for just this subcommand.
2017-06-09 14:03:59 -07:00
Jake Champlin 623fd383fe
Transfer of provider website docs 2017-06-09 11:34:19 -04:00
Jake Champlin c907a1657a
Transfer terraform provider website 2017-06-09 11:34:17 -04:00
stack72 6e7ee05392 Merge branch 'gh3424-vgw-route-prop' 2017-06-09 14:13:27 +03:00
Thiago Caiubi 12d6afd1ee Add missing resources to importability section (#15206) 2017-06-09 13:15:18 +03:00
Jay Wang b465b01355 [MS] provider/azurerm: Data Source for Azure Resource Group (#15022)
* Data Source support for Resource Group

* Better message for mismatching locations.

* Reuse existing read code

* Adds documentation

* Adds test

* Adds a function for composing ID strings

* Change location to computed.
2017-06-09 13:10:42 +03:00
Ashish Kumar Thakur a5c208ef68 provider/kubernetes: Add support for pod (#13571)
Add support for K8s pod
2017-06-08 14:58:10 +01:00
Bill Maxwell 305ae18d2c Rancher V2 provider updates (#13908)
* Move to v2 client in vendor directory

* Move to v2 api and project IDs for environments

* add host label support to registration command

* Update go-rancher/catalog

* Allow go-rancher to handle URL versioning
2017-06-08 12:24:53 +03:00
Martin Atkins 8d560482c3
v0.9.8 2017-06-08 00:14:54 +00:00
Riley Karson 45d193101c provider/google: Add support for draining_timeout_sec to compute_backend_service. (#14559) 2017-06-07 15:17:49 -07:00
Shinichi TAMURA 0b6518a29b provider/google: Changed network argument in google_compute_instance_group as optional (#13493) 2017-06-07 11:20:17 -07:00
Seth Vargo 6c0f6fac13
Fix website version 2017-06-07 10:54:00 -04:00
stack72 20ca74d0a0
v0.9.7 2017-06-07 14:34:30 +00:00
Riley Karson f5cccc6b7f Added private_ip_google_access update support to google_compute_subnetwork. (#15125) 2017-06-07 16:52:14 +03:00
Paul Stack 4e1eb9a856 provider/github: Add github importability documentation (#15150)
Fixes: #15120
2017-06-07 14:36:35 +03:00
Tom Harvey bc85755c1b Adding support for China/Germany/Government (#15152) 2017-06-07 14:35:06 +03:00
Tom Harvey 436903e834 provider/azurerm: Updating the AzureRM Provider Guide (#15148)
* SSL all the things!

* Rewriting the AzureRM docs
2017-06-07 12:53:53 +03:00
Katie Bayes fd64162796 Update middleman version (#15130)
* update middleman version

* update middleman version from 25-26
2017-06-07 12:42:23 +03:00
Alexander Savchuk 15a54ae281 provider/aws: Fix link and add better reference to a parameter in RDS docs (#15138)
* Fix link to AWS docs

* Better reference for backup_window parameter
2017-06-07 12:40:53 +03:00
Martin Atkins 1aff439c3d provider/aws: aws_vpn_gateway_route_propagation resource
This is a separate resource that serves a similar purpose to the
propagating_vgws argument on aws_route_table, but allows route
propagations to be created independently of the route table, which in
turn allows the VPN gateway to be created after the route table it will
contribute to, possibly in a separate Terraform module.

To make this work, propagating_vgws on aws_route_table is now marked
as Computed, meaning that it won't try to delete any existing propagation
edges if there is no setting for it in configuration at all. This allows
the user to choose whether to use the argument or the separate resource,
though using both together will not work, as explained in the docs.
2017-06-06 17:56:31 -07:00
Riley Karson b34eface7b provider/google: Update bucket storage docs introductions (#15132)
* Update overview/API links for storage_bucket_objects, and acls for both buckets and objects.

* Minor formatting changes to google_storage_bucket and acl docs.

* Updated outdated custom ACL information and fixed grammar.
2017-06-06 16:08:45 -07:00
Riley Karson 83764294f8 Update regional backend service documentation to reflect instance group restrictions. (#15097) 2017-06-06 15:26:26 +03:00
Daniel Compton 6cce74d106 Update link to canned GCS ACL's (#15096) 2017-06-06 14:59:52 +03:00
Abhijeet Gaiha 1819303e65 provider/azurerm: Adding data source support for Public IP (#15110)
* Added support for public IP data source. Tested manually.

* WIP: Update to implementation, basic test added.

* WIP: Updates to implementation, basic test added.

* WIP: Added support for idle timeout

* Completed implementation and basic test

* Added documentation.

* Updated the example so it makes a little more sense.
2017-06-06 14:48:37 +03:00
He Guimin cfc15e030b fix security group rules bug (#15114) 2017-06-06 14:34:07 +03:00
Joel Thompson 1812ce2ff3 Add task_parameters parameter to aws_ssm_maintenance_window_task resource (#15104)
* Add task_parameters support to aws_ssm_maintenance_window_task

task_parameters weren't supported yet. This adds support for them. It
also corrects a documentation typo in the maintenance_window resource.

* Respond to internal feedback
2017-06-06 14:11:05 +03:00
Paul Morton e4899de13e provider/aws: New SSM Parameter resource (#15035)
* New SSM Parameter resource

Can be used for creating parameters in AWS' SSM Parameter Store that can then be used by other applications that have access to AWS and necessary IAM permissions.

* Add docs for new SSM Parameter resource

* Code Review and Bug Hunt and KMS Key
- Addressed all issues in #14043
- Added ForceNew directive to type
- Added the ability to specify a KMS key for encryption and decryption

* Add SSM Parameter Data Source

* Fix bad merge

* Fix SSM Parameter Integration Tests

* docs/aws: Fix typo in SSM sidebar link
2017-06-06 09:55:25 +01:00
Phil Clay c2a92c5fb4 Correct openstack_lbaas_* to openstack_lb_* sidebars to reflect correct resource type names. 2017-06-05 21:51:22 -07:00
Paul Stack f08a7362c4 provider/aws: Change aws_kinesis_stream docs to not have id and name the same (#15090)
Fixes: #15081
2017-06-05 21:00:24 +03:00
VEBER Arnaud b708a81e24 doc(typo): fix typo in aws_cloudwatch_log_subscription_filter (#15079)
aws_cloudwatch_logs_subscription_filter => aws_cloudwatch_log_subscription_filter
2017-06-05 16:05:05 +01:00
Radek Simko 149bef4b4c provider/kubernetes: Allow sourcing config_path from KUBECONFIG env var (#14889) 2017-06-05 13:18:45 +01:00
Christian Pearce 09dcb78b11 Make os_profile optional #11147 (#14176)
* Make os_profile optional #11147

* Test for optional os_profile and fix resourceArmVirtualMachineRead

* Updating to match other optionally-required fields
2017-06-05 10:55:50 +01:00
Paul Stack 2aba79fa96 provider/aws: Add support for a configurable timeout in db_option_group (#15023)
Fixes: #14995

Adds a timeout block to configure deletes

```
% make testacc TEST=./builtin/providers/aws/ TESTARGS='-run=TestAccAWSDBOptionGroup'                                                       ✹ ✭
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/06/02 19:54:18 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws/ -v -run=TestAccAWSDBOptionGroup -timeout 120m
=== RUN   TestAccAWSDBOptionGroup_importBasic
--- PASS: TestAccAWSDBOptionGroup_importBasic (57.03s)
=== RUN   TestAccAWSDBOptionGroup_basic
--- PASS: TestAccAWSDBOptionGroup_basic (32.69s)
=== RUN   TestAccAWSDBOptionGroup_timeoutBlock
--- PASS: TestAccAWSDBOptionGroup_timeoutBlock (31.59s)
=== RUN   TestAccAWSDBOptionGroup_namePrefix
--- PASS: TestAccAWSDBOptionGroup_namePrefix (28.24s)
=== RUN   TestAccAWSDBOptionGroup_generatedName
--- PASS: TestAccAWSDBOptionGroup_generatedName (30.91s)
=== RUN   TestAccAWSDBOptionGroup_defaultDescription
--- PASS: TestAccAWSDBOptionGroup_defaultDescription (54.13s)
=== RUN   TestAccAWSDBOptionGroup_basicDestroyWithInstance
--- PASS: TestAccAWSDBOptionGroup_basicDestroyWithInstance (612.01s)
=== RUN   TestAccAWSDBOptionGroup_OptionSettings
--- PASS: TestAccAWSDBOptionGroup_OptionSettings (54.34s)
=== RUN   TestAccAWSDBOptionGroup_sqlServerOptionsUpdate
--- PASS: TestAccAWSDBOptionGroup_sqlServerOptionsUpdate (53.86s)
=== RUN   TestAccAWSDBOptionGroup_multipleOptions
--- PASS: TestAccAWSDBOptionGroup_multipleOptions (33.72s)
PASS
ok  	github.com/hashicorp/terraform/builtin/providers/aws	956.958s
```
2017-06-05 12:36:41 +03:00
He Guimin 87562be855 provider/alicloud: Add the function of replacing ecs instance's system disk (#15048)
* add replacing system disk function for ecs

* remove ForceNew of system_disk_size
2017-06-05 11:27:49 +03:00
Daniel Compton d6d559a6ab Update importable Google resources (#15059)
These were already importable, but the docs hadn't been updated to reflect that.
2017-06-05 06:22:35 +01:00
Brett Slaski 8243d09acd Url to aws-two-tier example changed. (#15045)
Provided what I believe to the the new correct address for the example url.
2017-06-05 00:21:24 +03:00
Riley Karson 14a55d57a8 Updated import command provider flag documentation to explicitly specify syntax. (#15030) 2017-06-02 22:21:09 +03:00
Will May 1d294aeb45 provider/vault: vault_mount resource 2017-06-02 10:41:55 -07:00
Tom Harvey 4c742ca9dd Completing the missing AWS CodePipeline docs - fixes #15001 (#15016) 2017-06-02 18:06:15 +01:00
Radek Simko 2b9b89197d docs/kubernetes: Document compatible k8s versions (#15020) 2017-06-02 15:37:07 +01:00
Jake Champlin 7d06a9bf43 Merge pull request #13123 from UKCloud/master
provider/vcd: Adding VPN Support to vCloud Provider
2017-06-02 09:14:11 -04:00
Gauthier Wallet 08c672ca1e provider/aws: Updated awsconfig_config_rule documentation (#14994)
At the moment, it is stated that input_parameters are available only when owner is CUSTOM_LAMBDA. However, as per [the documentation](http://docs.aws.amazon.com/cli/latest/reference/configservice/put-config-rule.html#examples), this is also valid for `AWS` owner, so for reserved rules.
2017-06-02 10:41:00 +01:00
Walid Halabi b6a2eb7859 Fix typo in state rm docs (#15003) 2017-06-02 10:19:56 +01:00
Tong Pham 7c758c5661 Use correct names for available Datadog timeboard graph request types (#15008)
Datadog does not explicitly document which graph types are available, but when you use the GUI to generate the graph and select the JSON tab to inspect said graph, you will see that the available timeboard graph type names are singular, not plural.
2017-06-02 10:19:03 +01:00
Martin Atkins 482b7c603c website: fix faulty example for aws_eip data source 2017-06-01 11:05:09 -07:00
Mohamed ElSaadany e8a16fffd0 docs: Update Lightsail supported regions (#14908)
* provider/aws: Update Lightsail supported regions

This commit complements (#14621)[https://github.com/hashicorp/terraform/pull/14621] and (#14685)[https://github.com/hashicorp/terraform/pull/14685].

* Revert "provider/aws: Update Lightsail supported regions"

This reverts commit 545c3d6e6e7a9b665542ecc3b5e4d857faac749b.

* This commit complements #14621 and #14685.

* Link to AWS docs instead of listing regions

Instead of explicitly listing supported Lightsail regions in the docs,
we now link to the Lightsail docs.
2017-06-01 18:36:32 +01:00
Tom Harvey 68fe08045b provider/azurerm: Fixing broken tests / Making Container Registry `sku` optional (#14983)
* Updating the Sku field to be optional

* Making the Sku optional

* Ensuring we check for a 404 to mark a successful deletion

* Upping the size of the internal data disk

* Randomizing the Local Network Gateway tests

* Fixing a bug in Local Network Gateway's where the deletion wouldn't be detected
2017-06-01 14:00:04 +01:00
Graham Moore 76297fc43d Add missing ID from ElasticBeanstalk docs (#14985)
This fixes the missing `id` attribute on the documentation.  The attribute exists if called via `"${aws_elastic_beanstalk_environment.myapp-environment.id}"`, but is just not documented.
2017-06-01 13:56:05 +01:00
Paul Stack cfcb4dff79 provider/aws: Support import of aws_lambda_event_source_mapping (#14898)
Fixes: #14017

```
% make testacc TEST=./builtin/providers/aws/ TESTARGS='-run=TestAccAWSLambdaEventSourceMapping_importBasic'
==> Checking that code complies with gofmt requirements...
go generate $(go list ./... | grep -v /terraform/vendor/)
2017/05/29 00:36:31 Generated command/internal_plugin_list.go
TF_ACC=1 go test ./builtin/providers/aws/ -v -run=TestAccAWSLambdaEventSourceMapping_importBasic -timeout 120m
=== RUN   TestAccAWSLambdaEventSourceMapping_importBasic
--- PASS: TestAccAWSLambdaEventSourceMapping_importBasic (144.23s)
PASS
ok  	github.com/hashicorp/terraform/builtin/providers/aws	144.258s
```
2017-06-01 13:35:34 +03:00
Tom Harvey df2875045d provider/azurerm: Upgrading to v10 of the Azure SDK (#14004)
provider/azurerm: Upgrading to v10.0.2 of the Azure SDK
2017-06-01 10:18:22 +01:00
Jake Champlin 0a09a1ea40 provider/opc: Update documentation for the OPC Provider. (#14976)
Should not be cherry-picked to the `stable-website` branch. The next Terraform deploy will include the latest changes to the OPC provider, and this updated documentation for the next point release.
2017-06-01 11:39:56 +03:00
Gavin Williams 1da7fda417 provider/openstack: Add support for FWaaS routerinsertion extension (#12589)
* vendor: Add gophercloud/routerinsertion package and update
gophercloud/firewall to support router insertion

* provider/openstack: Add support for associating
`openstack_fw_firewall_v1` resources with router(s).
Added `associated_routers` and `no_routers` arguments.

* website: Add documentation for `associated_routers`and `no_routers` arguments on `openstack_fw_firewall_v1` resource.

* provider/openstack: Add `AddValueSpecs` function and refactor existing
uses.
2017-05-31 23:19:59 -06:00
Thomas Schaaf 79c91e11c8 provider/aws: Add aws elastic beanstalk solution stack (#14944)
* Add aws elastic beanstalk solution stack

Signed-off-by: Thomas Schaaf <thomaschaaf@Thomass-MBP.fritz.box>

* Fix incorrect naming

Signed-off-by: Thomas Schaaf <thomaschaaf@Thomass-MBP.fritz.box>

* Use unique go variable/function names

Signed-off-by: Thomas Schaaf <thomaschaaf@Thomass-MacBook-Pro.local>

* Add docs to sidebar

* Sort provider by alphabet

* Fix indent

* Add required statement

* Fix acceptance test
2017-06-01 02:23:06 +03:00
Alessandro Fael Garcia c4c3c3f24d docs/google: Add "list" to tags description (#14975)
The tags argument requires a list in order to work.
2017-06-01 02:19:10 +03:00
Riley Karson 32d47b384f provider/google: Add CORS support for google_storage_bucket. (#14695) 2017-05-31 15:44:25 -04:00
David Radcliffe 4e6dcb3a3e google container_cluster master_auth should be optional (#14630) 2017-05-31 15:43:31 -04:00
rdark bebcc8796a export internal tunnel addresses + document (#14835) 2017-05-31 21:03:13 +03:00
grafjo f39c5b7c9b provider/gitlab: Improve gitlab documentation (#14827)
* fix gitlab naming

seems like some github stuff was not renamed

* gitlab is using group or user instead of organisations

* add namespace_id to gitlab_project documentation

* it's not possible to manage group members
2017-05-31 21:00:45 +03:00
Paul Stack c0503a9c26 provider/aws: Add aws_ssm_path_* to aws.erb (#14969) 2017-05-31 20:40:03 +03:00
PaulAtkins d3eed78d95 provider/aws: Add support for aws_ssm_patch_baseline (#14954)
* Add support for aws_ssm_patch_baseline and aws_ssm_patch_group

* Fix failing test

* Cleanup commented out code
2017-05-31 20:16:35 +03:00
Sean Chittenden 2ebac5226c PostgreSQL: leaked pg privs (#14817)
* Fix doc bug. Spell `collation` like `lc_collate`.

* Whitespace nit in error message

* Use %q as the format verb for error messages in postgresql_database resource messages.

* REVOKE the `GRANT` given to the connection user when creating a database.

For `ROLE`s who have been delegated `CREATEDB` privileges and are not a
superuser, in order for them to `CREATE DATABASE` they need to be a member
of the `ROLE` who will be `OWNER` for the new database.  Once the
`CREATE DATABASE` is complete, `REVOKE` the `GRANT` that was given to role
so that the user who ran the `CREATE DATABASE` looses all privileges to the
target database (unless of course they're a superuser).

Fixes a regression introduced in #11452

* Delegated DBA ROLEs can now fix OWNER drift for PostgreSQL databases.

Uses the helper functions introduced in #11452
2017-05-31 20:03:32 +03:00
Joe Topjian 00fa6b06b5 Merge pull request #14966 from florianlechner/patch-2
Update lb_monitor_v2.html.markdown
2017-05-31 09:28:44 -06:00