| Class | BoxGrinder::LocalPlugin |
| In: |
lib/boxgrinder-build/plugins/delivery/local/local-plugin.rb
lib/boxgrinder-build/plugins/delivery/local/local-plugin.rb |
| Parent: | BasePlugin |
# File lib/boxgrinder-build/plugins/delivery/local/local-plugin.rb, line 25
25: def after_init
26: set_default_config_value('overwrite', false)
27: set_default_config_value('package', true)
28:
29: if @plugin_config['package']
30: register_deliverable(:package => "#{@appliance_config.name}-#{@appliance_config.version}.#{@appliance_config.release}-#{@appliance_config.os.name}-#{@appliance_config.os.version}-#{@appliance_config.hardware.arch}-#{current_platform}.tgz")
31: end
32: end
# File lib/boxgrinder-build/plugins/delivery/local/local-plugin.rb, line 25
25: def after_init
26: set_default_config_value('overwrite', false)
27: set_default_config_value('package', true)
28:
29: if @plugin_config['package']
30: register_deliverable(:package => "#{@appliance_config.name}-#{@appliance_config.version}.#{@appliance_config.release}-#{@appliance_config.os.name}-#{@appliance_config.os.version}-#{@appliance_config.hardware.arch}-#{current_platform}.tgz")
31: end
32: end
# File lib/boxgrinder-build/plugins/delivery/local/local-plugin.rb, line 54
54: def deliverables_exists?
55: (@plugin_config['package'] ? @deliverables : @previous_deliverables).each_value do |file|
56: return false unless File.exists?("#{@plugin_config['path']}/#{File.basename(file)}")
57: end
58:
59: @move_deliverables = false
60:
61: true
62: end
# File lib/boxgrinder-build/plugins/delivery/local/local-plugin.rb, line 54
54: def deliverables_exists?
55: (@plugin_config['package'] ? @deliverables : @previous_deliverables).each_value do |file|
56: return false unless File.exists?("#{@plugin_config['path']}/#{File.basename(file)}")
57: end
58:
59: @move_deliverables = false
60:
61: true
62: end
# File lib/boxgrinder-build/plugins/delivery/local/local-plugin.rb, line 34
34: def execute(type = :local)
35: validate_plugin_config(['path'], 'http://boxgrinder.org/tutorials/boxgrinder-build-plugins/#Local_delivery_plugin')
36:
37: if @plugin_config['overwrite'] or !deliverables_exists?
38: PackageHelper.new(@config, @appliance_config, :log => @log, :exec_helper => @exec_helper).package(File.dirname(@previous_deliverables[:disk]), @deliverables[:package]) if @plugin_config['package']
39:
40: FileUtils.mkdir_p @plugin_config['path']
41:
42: @log.debug "Copying files to '#{@plugin_config['path']}'..."
43:
44: (@plugin_config['package'] ? @deliverables : @previous_deliverables).each_value do |file|
45: @log.debug "Copying '#{file}'..."
46: @exec_helper.execute("cp '#{file}' '#{@plugin_config['path']}'")
47: end
48: @log.info "Appliance delivered to '#{@plugin_config['path']}'."
49: else
50: @log.info "Appliance already delivered to '#{@plugin_config['path']}'."
51: end
52: end
# File lib/boxgrinder-build/plugins/delivery/local/local-plugin.rb, line 34
34: def execute(type = :local)
35: validate_plugin_config(['path'], 'http://boxgrinder.org/tutorials/boxgrinder-build-plugins/#Local_delivery_plugin')
36:
37: if @plugin_config['overwrite'] or !deliverables_exists?
38: PackageHelper.new(@config, @appliance_config, :log => @log, :exec_helper => @exec_helper).package(File.dirname(@previous_deliverables[:disk]), @deliverables[:package]) if @plugin_config['package']
39:
40: FileUtils.mkdir_p @plugin_config['path']
41:
42: @log.debug "Copying files to '#{@plugin_config['path']}'..."
43:
44: (@plugin_config['package'] ? @deliverables : @previous_deliverables).each_value do |file|
45: @log.debug "Copying '#{file}'..."
46: @exec_helper.execute("cp '#{file}' '#{@plugin_config['path']}'")
47: end
48: @log.info "Appliance delivered to '#{@plugin_config['path']}'."
49: else
50: @log.info "Appliance already delivered to '#{@plugin_config['path']}'."
51: end
52: end