# frozen_string_literal: true require 'ruby_terraform' require_relative './command_instantiation' module RSpec module Terraform module Helpers module Actions module Init include CommandInstantiation def init(parameters) init_command.execute(init_parameters(parameters)) end private def init_command instantiate_command(RubyTerraform::Commands::Init) end def init_parameters(parameters) with_init_execution_mode_parameters( with_init_standard_parameters(parameters) ) end def with_init_standard_parameters(parameters) parameters.merge( chdir: parameters[:configuration_directory], input: false ) end def with_init_execution_mode_parameters(parameters) if execution_mode == :isolated return parameters.merge( from_module: parameters[:source_directory] ) end parameters end end end end end end