Sha256: 30eb4f5f1b565dfcb49167fcc7e82a6bc3b26dff54c1a338c3c09fa707e6bd8e

Contents?: true

Size: 864 Bytes

Versions: 10

Compression:

Stored size: 864 Bytes

Contents

require 'thor'

require_relative '../interface/packer'
require_relative '../patch/thor-actions'

module Builderator
  module Tasks
    ##
    # Wrap Packer commands
    ##
    class Packer < Thor
      include Thor::Actions

      def self.exit_on_failure?
        true
      end

      class_option :debug, :type => :boolean

      desc 'configure [PROFILE=default]', 'Generate a packer configuration'
      def configure(profile = :default)
        Config.profile.use(profile)
        puts Interface.packer.render if options['debug']
      end

      desc 'build [PROFILE=default *ARGS]', 'Run a build with the installed version of packer'
      def build(profile = :default, *args)
        invoke :configure, [profile], options
        run_with_input "#{Interface.packer.command} build - #{ args.join('') }", Interface.packer.render
      end
    end
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
builderator-1.0.0.pre.rc.11 lib/builderator/tasks/packer.rb
builderator-1.0.0.pre.rc.10 lib/builderator/tasks/packer.rb
builderator-1.0.0.pre.rc.9 lib/builderator/tasks/packer.rb
builderator-1.0.0.pre.rc.8 lib/builderator/tasks/packer.rb
builderator-1.0.0.pre.rc.7 lib/builderator/tasks/packer.rb
builderator-1.0.0.pre.rc.6 lib/builderator/tasks/packer.rb
builderator-1.0.0.pre.rc.5 lib/builderator/tasks/packer.rb
builderator-1.0.0.pre.rc.4 lib/builderator/tasks/packer.rb
builderator-1.0.0.pre.rc.3 lib/builderator/tasks/packer.rb
builderator-1.0.0.pre.rc.1 lib/builderator/tasks/packer.rb