Class: RubyTerraform::Commands::Get

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

Overview

Wraps the terraform get command which downloads and installs modules needed for the given configuration.

This recursively downloads all modules needed, such as modules imported by the root and so on. If a module is already downloaded, it will not be redownloaded or checked for updates unless :update is true.

Module installation also happens automatically by default as part of the Init command, so you should rarely need to run this command separately.

For options accepted on construction, see Base#initialize.

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

  • :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.

  • :update: if true, checks already-downloaded modules for available updates and installs the newest versions available; defaults to false.

  • :no_color: whether or not the output from the command should be in color; defaults to false.

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::Get.new.execute(
  directory: 'infra/networking')

Constructor Details

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