Class: Ansible::Ruby::Modules::Terraform

Inherits:
Base show all
Defined in:
lib/ansible/ruby/modules/generated/cloud/misc/terraform.rb

Overview

Provides support for deploying resources with Terraform and pulling resource information back into Ansible.

Instance Method Summary collapse

Methods inherited from Base

#ansible_name, #to_h

Methods inherited from Ansible::Ruby::Models::Base

attr_option, attr_options, attribute, #initialize, remove_existing_validations, #to_h, validates

Constructor Details

This class inherits a constructor from Ansible::Ruby::Models::Base

Instance Method Details

#backend_configHash?

Returns A group of key-values to provide at init stage to the -backend-config parameter.

Returns:

  • (Hash, nil)

    A group of key-values to provide at init stage to the -backend-config parameter.



56
# File 'lib/ansible/ruby/modules/generated/cloud/misc/terraform.rb', line 56

attribute :backend_config

#binary_pathObject?

Returns The path of a terraform binary to use, relative to the ‘service_path’ unless you supply an absolute path.

Returns:

  • (Object, nil)

    The path of a terraform binary to use, relative to the ‘service_path’ unless you supply an absolute path.



16
# File 'lib/ansible/ruby/modules/generated/cloud/misc/terraform.rb', line 16

attribute :binary_path

#force_initSymbol?

Returns To avoid duplicating infra, if a state file can’t be found this will force a ‘terraform init`. Generally, this should be turned off unless you intend to provision an entirely new Terraform deployment.

Returns:

  • (Symbol, nil)

    To avoid duplicating infra, if a state file can’t be found this will force a ‘terraform init`. Generally, this should be turned off unless you intend to provision an entirely new Terraform deployment.



52
# File 'lib/ansible/ruby/modules/generated/cloud/misc/terraform.rb', line 52

attribute :force_init

#lockObject?

Returns Enable statefile locking, if you use a service that accepts locks (such as S3+DynamoDB) to store your statefile.

Returns:

  • (Object, nil)

    Enable statefile locking, if you use a service that accepts locks (such as S3+DynamoDB) to store your statefile.



46
# File 'lib/ansible/ruby/modules/generated/cloud/misc/terraform.rb', line 46

attribute :lock

#lock_timeoutObject?

Returns How long to maintain the lock on the statefile, if you use a service that accepts locks (such as S3+DynamoDB).

Returns:

  • (Object, nil)

    How long to maintain the lock on the statefile, if you use a service that accepts locks (such as S3+DynamoDB).



49
# File 'lib/ansible/ruby/modules/generated/cloud/misc/terraform.rb', line 49

attribute :lock_timeout

#plan_fileObject?

Returns The path to an existing Terraform plan file to apply. If this is not specified, Ansible will build a new TF plan and execute it. Note that this option is required if ‘state’ has the ‘planned’ value.

Returns:

  • (Object, nil)

    The path to an existing Terraform plan file to apply. If this is not specified, Ansible will build a new TF plan and execute it. Note that this option is required if ‘state’ has the ‘planned’ value.



31
# File 'lib/ansible/ruby/modules/generated/cloud/misc/terraform.rb', line 31

attribute :plan_file

#project_pathString

Returns The path to the root of the Terraform directory with the vars.tf/main.tf/etc to use.

Returns:

  • (String)

    The path to the root of the Terraform directory with the vars.tf/main.tf/etc to use.



19
# File 'lib/ansible/ruby/modules/generated/cloud/misc/terraform.rb', line 19

attribute :project_path

#purge_workspaceSymbol?

Returns Only works with state = absent,If true, the workspace will be deleted after the “terraform destroy” action.,The ‘default’ workspace will not be deleted.

Returns:

  • (Symbol, nil)

    Only works with state = absent,If true, the workspace will be deleted after the “terraform destroy” action.,The ‘default’ workspace will not be deleted.



27
# File 'lib/ansible/ruby/modules/generated/cloud/misc/terraform.rb', line 27

attribute :purge_workspace

#state:planned, ...

Returns Goal state of given stage/project.

Returns:

  • (:planned, :present, :absent, nil)

    Goal state of given stage/project



12
# File 'lib/ansible/ruby/modules/generated/cloud/misc/terraform.rb', line 12

attribute :state

#state_fileObject?

Returns The path to an existing Terraform state file to use when building plan. If this is not specified, the default ‘terraform.tfstate` will be used.,This option is ignored when plan is specified.

Returns:

  • (Object, nil)

    The path to an existing Terraform state file to use when building plan. If this is not specified, the default ‘terraform.tfstate` will be used.,This option is ignored when plan is specified.



34
# File 'lib/ansible/ruby/modules/generated/cloud/misc/terraform.rb', line 34

attribute :state_file

#targetsObject?

Returns A list of specific resources to target in this plan/application. The resources selected here will also auto-include any dependencies.

Returns:

  • (Object, nil)

    A list of specific resources to target in this plan/application. The resources selected here will also auto-include any dependencies.



43
# File 'lib/ansible/ruby/modules/generated/cloud/misc/terraform.rb', line 43

attribute :targets

#variablesObject?

Returns A group of key-values to override template variables or those in variables files.

Returns:

  • (Object, nil)

    A group of key-values to override template variables or those in variables files.



40
# File 'lib/ansible/ruby/modules/generated/cloud/misc/terraform.rb', line 40

attribute :variables

#variables_fileObject?

Returns The path to a variables file for Terraform to fill into the TF configurations.

Returns:

  • (Object, nil)

    The path to a variables file for Terraform to fill into the TF configurations.



37
# File 'lib/ansible/ruby/modules/generated/cloud/misc/terraform.rb', line 37

attribute :variables_file

#workspaceString?

Returns The terraform workspace to work with.

Returns:

  • (String, nil)

    The terraform workspace to work with.



23
# File 'lib/ansible/ruby/modules/generated/cloud/misc/terraform.rb', line 23

attribute :workspace