Sha256: c59390f1365b3944f1bb4c2a2efe6ae28e52741e34ca613890c3047582b08433
Contents?: true
Size: 1.03 KB
Versions: 5
Compression:
Stored size: 1.03 KB
Contents
# frozen_string_literal: true require 'ruby_terraform' require_relative 'base' require_relative 'actions' module RSpec module Terraform module Helpers class Apply < Base include Actions::ExecuteIfRequired include Actions::Validate include Actions::Clean include Actions::Init include Actions::Apply def execute(overrides = {}, &block) parameters = resolve_parameters(overrides, &block) execute_if_required(:apply, parameters) do validate(parameters) clean(parameters) init(parameters) apply(parameters) end end private def mandatory_parameters { input: false, auto_approve: true } end def required_parameters(execution_mode) { in_place: [:configuration_directory], isolated: %i[source_directory configuration_directory] }[execution_mode] || [] end end end end end
Version data entries
5 entries across 5 versions & 1 rubygems