Commit Graph

16 Commits (67e87d3d1ce50086b48bbdc2751a741a17011eff)

Author SHA1 Message Date
Rémi REY cd7c946ea5 modules/terraform: add support of backend configuration (#44860)
This patch adds a new `backend_config` parameter that allows to provide the
-backend-config parameter during the terraform init command.

The option allows to dynamically set the backend information, like the s3 bucket name
and statefile name.
2018-08-29 16:26:19 -04:00
Rémi REY 26be68dd1c modules/terraform: Quote the variable values in the command line (#43493)
* modules/terraform: Quote the variable values in the command line

Fixes: #43492

* fix six import
2018-08-27 14:38:21 -04:00
Rémi REY 48280463f2 modules/terraform: fix -no-color position in workspace command (#43644) 2018-08-03 13:14:14 -04:00
Rémi REY 32c01644d4 modules/terraform: use -no-color option in workspace commands (#43628) 2018-08-03 08:24:57 -04:00
Rémi REY 0461620b2d Terraform: add workspace support for switching and removing workspaces (#43489)
From terraform documentation:
```
The persistent data stored in the backend belongs to a workspace. Initially the backend has only one workspace, called "default", and thus there is only one Terraform state associated with that configuration.

Certain backends support multiple named workspaces, allowing multiple states to be associated with a single configuration. The configuration still has only one backend, but multiple distinct instances of that configuration to be deployed without configuring a new backend or changing authentication credentials.
```

This patch introduces the `workspace` parameter in the terraform module. The module will select
the workspace is it does not exists, or simply select it if it exists.

Fixes #43134

Add 'purge_workspace' parameter and handle the workspace context

The `purge_workspace` parameter allows to remove a workspace when asking for state = absent.
It allows to leave a clean state file without empty workspaces if the parameter is true.

Also adding the support of a workspace context that allows to restore the workspace
when that was active when the module started.
2018-08-02 09:37:26 -04:00
bpetit 9bd7bd5d46 [docs] Document requirements for `plan_file` option in terraform module (#42514)
plan_file is required if state: planned is used. This should be mentionned in the documentation.

+label: docsite_pr
2018-07-09 10:19:29 -04:00
Ryan Brown 52b79a87ee
Terraform: Pass module targets to terraform plan as well as apply (#40958)
* Pass module targets to terraform plan as well as apply

* Fix undefined variable

* Add target for plan-only operation
2018-05-31 14:35:40 -04:00
Ryan S. Brown 9a607283aa Terraform module: pass `plan_file` argument correctly
Per #39611 the `terraform` module wasn't properly building plan-only
files.
2018-05-02 13:45:24 -04:00
Ryan Brown f428108845
[terraform] Disable input prompts during terraform init/plan/apply (#38842)
Per Hashicorp's [guidelines][1] for automated use of terraform CLI, this PR
adds the `-input=false` option to all the commands executed in the
module. If input is required, this causes a hard failure that will
become a module failure.

[1]: https://www.terraform.io/guides/running-terraform-in-automation.html
2018-04-20 12:28:49 -04:00
Abhijeet Kasurde ae7e391dab Minor fixes in terraform module (#38438)
This fix adds following -
* Check for None or blank value in project_path
* Make terraform binary path as required

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-04-16 08:43:13 -04:00
Stanislav Simovski a00abcb003 [terraform] Fixed typo in preflight_checks (#38740)
The function was incorrectly reporting project path when it failed to find binary.
2018-04-13 16:32:41 -04:00
Mikhail Naletov 3bf6c50fa9 terraform: fixed typo, name error sdtout -> stdout (#37253) 2018-03-10 23:44:37 +01:00
Mikhail Naletov 51558f12f4 Added variables to destroy command (#37028) 2018-03-05 16:09:03 -05:00
Mikhail Naletov 7d0e1f92f4 [terraform] Support initializing modules and providers at runtime (#36996)
* Fixes #36994

Added function for force initializing modules and providers

Added type for force_init parameter
2018-03-05 11:01:53 -05:00
Mikhail Naletov 7ade607525 Add variables and variable_file in terraform module (#36879)
* Fixes #36837

Added terraform variables for validate command

* Fixes #36837

Changed method from append to extend.
2018-03-01 12:50:49 -05:00
Ryan Brown 9233520b31
New module: Terraform (#31214)
* First pass at Terraform module

* Support output variables

* Support idempotent plan checks and external plan files

* Add check mode support

* Support custom statefile location & remove color-coding from shell output

* Docs

* Let missing statefile hard-fail

* Update to support present/planned/absent states

* PEP8

* Add docs & fix python 2.6 incompatibility

* PEP8

* PEP8
2018-01-10 13:52:28 -05:00