Class: Reap::Manifest

Inherits:
Task
  • Object
show all
Defined in:
lib/reap/task/manifest.rb

Overview

Manifest Task

Constant Summary collapse

MUST_EXCLUDE =
[ 'InstalledFiles', '**/CVS/**/*', '**/*~', 'dist', 'pkg' ]

Constants inherited from Task

Task::RUBY

Instance Method Summary collapse

Methods inherited from Task

#ask, #execute, inherited, #initialize, #initiate, master, #master, #provide_setup_rb, #section, section_required, section_required?, #section_required?, #sh, #task, task_attr, #task_desc, task_desc, #task_help, task_help, task_list, #task_name, task_name, #tell, #use_subsection, verify?

Constructor Details

This class inherits a constructor from Reap::Task

Instance Method Details

#runObject



34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
# File 'lib/reap/task/manifest.rb', line 34

def run

  man.include      ||= ['**/*']

  man.exclude      ||= []
  man.exclude      |= MUST_EXCLUDE

  package_files = FileList.new
  package_files.include(*man.include)
  package_files.exclude(*man.exclude) if man.exclude and not man.exclude.empty?

  File.open('MANIFEST', 'w+') do |f|
    package_files.each do |pf|
      f << "#{salt(pf)} #{pf}\n" if File.file?(pf)
    end
  end

end

#salt(file) ⇒ Object

support functions



54
55
56
# File 'lib/reap/task/manifest.rb', line 54

def salt( file )
  Digest::MD5.new( File.read( file ) ).hexdigest
end