Class: RubyTerraform::Commands::WorkspaceNew

Inherits:
Base
  • Object
show all
Includes:
Options::Global
Defined in:
lib/ruby_terraform/commands/workspace_new.rb

Overview

Wraps the terraform workspace new command which creates a new workspace.

For options accepted on construction, see Base#initialize.

When executing an instance of WorkspaceNew via Base#execute, the following options are supported:

  • :name: the name of the workspace to create; required.

  • :directory: the path to a directory containing terraform configuration (deprecated in terraform 0.14, removed in terraform 0.15, use :chdir instead).

  • :chdir: the path of a working directory to switch to before executing the given subcommand.

  • :lock: when true, locks the state file when locking is supported; when false, does not lock the state file; defaults to true.

  • :lock_timeout: the duration to retry a state lock; defaults to ā€œ0sā€.

  • :state: the path to a state file to copy into the new workspace.

The Base#execute method accepts an optional second parameter which is a map of invocation options. Currently, the only supported option is :environment which is a map of environment variables to expose during invocation of the command.

Examples:

Basic Invocation

RubyTerraform::Commands::WorkspaceNew.new.execute(
  name: 'example')

Constructor Details

This class inherits a constructor from RubyTerraform::Commands::Base