Class: Manifold::Terraform::ProjectConfiguration
- Inherits:
-
Configuration
- Object
- Configuration
- Manifold::Terraform::ProjectConfiguration
- Defined in:
- lib/manifold/terraform/project_configuration.rb
Overview
Represents a Terraform configuration for a Manifold project.
Constant Summary collapse
- DEFAULT_TERRAFORM_GOOGLE_PROVIDER_VERSION =
"6.24.0"
Instance Attribute Summary collapse
-
#provider_version ⇒ Object
readonly
Returns the value of attribute provider_version.
-
#skip_provider_config ⇒ Object
readonly
Returns the value of attribute skip_provider_config.
-
#workspaces ⇒ Object
readonly
Returns the value of attribute workspaces.
Instance Method Summary collapse
- #as_json ⇒ Object
-
#initialize(workspaces, provider_version: DEFAULT_TERRAFORM_GOOGLE_PROVIDER_VERSION, skip_provider_config: false) ⇒ ProjectConfiguration
constructor
A new instance of ProjectConfiguration.
Methods inherited from Configuration
Constructor Details
#initialize(workspaces, provider_version: DEFAULT_TERRAFORM_GOOGLE_PROVIDER_VERSION, skip_provider_config: false) ⇒ ProjectConfiguration
11 12 13 14 15 16 17 |
# File 'lib/manifold/terraform/project_configuration.rb', line 11 def initialize(workspaces, provider_version: DEFAULT_TERRAFORM_GOOGLE_PROVIDER_VERSION, skip_provider_config: false) super() @workspaces = workspaces @provider_version = provider_version @skip_provider_config = skip_provider_config end |
Instance Attribute Details
#provider_version ⇒ Object (readonly)
Returns the value of attribute provider_version.
7 8 9 |
# File 'lib/manifold/terraform/project_configuration.rb', line 7 def provider_version @provider_version end |
#skip_provider_config ⇒ Object (readonly)
Returns the value of attribute skip_provider_config.
7 8 9 |
# File 'lib/manifold/terraform/project_configuration.rb', line 7 def skip_provider_config @skip_provider_config end |
#workspaces ⇒ Object (readonly)
Returns the value of attribute workspaces.
7 8 9 |
# File 'lib/manifold/terraform/project_configuration.rb', line 7 def workspaces @workspaces end |
Instance Method Details
#as_json ⇒ Object
19 20 21 22 23 24 25 26 27 28 29 30 |
# File 'lib/manifold/terraform/project_configuration.rb', line 19 def as_json config = {} unless skip_provider_config config["terraform"] = terraform_block config["provider"] = provider_block end config.merge!( "variable" => variables_block, "module" => workspace_modules ) end |