Sha256: e9a972523907c560823e378678560dbedfd55c7e8b44dbff4c8a1bc5a917a8c8

Contents?: true

Size: 719 Bytes

Versions: 23

Compression:

Stored size: 719 Bytes

Contents

class Terraspace::CLI
  class Up < Base
    include TfcConcern

    def run
      build
      if @options[:yes] && !tfc?
        plan
        Commander.new("apply", @options.merge(plan: plan_path)).run
      else
        Commander.new("apply", @options).run
      end
    end

  private
    # must build to compute tfc?
    def build
      Terraspace::Builder.new(@options).run
      @options[:build] = false
    end

    def plan
      FileUtils.mkdir_p(File.dirname(plan_path))
      Commander.new("plan", @options.merge(out: plan_path)).run
    end

    def plan_path
      @@timestamp ||= Time.now.utc.strftime("%Y%m%d%H%M%S")
      "#{Terraspace.tmp_root}/plans/#{@mod.name}-#{@@timestamp}.plan"
    end
  end
end

Version data entries

23 entries across 23 versions & 1 rubygems

Version Path
terraspace-0.5.10 lib/terraspace/cli/up.rb
terraspace-0.5.9 lib/terraspace/cli/up.rb
terraspace-0.5.8 lib/terraspace/cli/up.rb
terraspace-0.5.7 lib/terraspace/cli/up.rb
terraspace-0.5.6 lib/terraspace/cli/up.rb
terraspace-0.5.5 lib/terraspace/cli/up.rb
terraspace-0.5.4 lib/terraspace/cli/up.rb
terraspace-0.5.3 lib/terraspace/cli/up.rb
terraspace-0.5.2 lib/terraspace/cli/up.rb
terraspace-0.5.1 lib/terraspace/cli/up.rb
terraspace-0.5.0 lib/terraspace/cli/up.rb
terraspace-0.4.4 lib/terraspace/cli/up.rb
terraspace-0.4.3 lib/terraspace/cli/up.rb
terraspace-0.4.2 lib/terraspace/cli/up.rb
terraspace-0.4.1 lib/terraspace/cli/up.rb
terraspace-0.4.0 lib/terraspace/cli/up.rb
terraspace-0.3.6 lib/terraspace/cli/up.rb
terraspace-0.3.5 lib/terraspace/cli/up.rb
terraspace-0.3.4 lib/terraspace/cli/up.rb
terraspace-0.3.3 lib/terraspace/cli/up.rb