Class: Reap::Manifest
- Inherits:
-
Object
- Object
- Reap::Manifest
- Includes:
- TaskUtils
- Defined in:
- lib/reap/class/manifest.rb
Overview
Manifest
Create a manifest file for the package. Presently it is a very simple md5 + filename manifest. In the future this will be exanded to build a varity of manifest formats.
Task specific settings:
include Files to include
exclude Files to exclude
Constant Summary collapse
- MUST_EXCLUDE =
, ‘dist’, ‘pkg’ ]
[ 'InstalledFiles', '**/CVS/**/*', '**/*~' ]
Instance Attribute Summary collapse
-
#dir ⇒ Object
Returns the value of attribute dir.
-
#exclude ⇒ Object
Returns the value of attribute exclude.
-
#include ⇒ Object
Returns the value of attribute include.
Instance Method Summary collapse
-
#generate ⇒ Object
(also: #call)
Generate manifest file.
-
#initialize(man) ⇒ Manifest
constructor
A new instance of Manifest.
Methods included from TaskUtils
#ask, #master, #preq_from_name, #provide_setup_rb, #sh, #tell
Constructor Details
#initialize(man) ⇒ Manifest
Returns a new instance of Manifest.
33 34 35 36 37 38 39 40 41 |
# File 'lib/reap/class/manifest.rb', line 33 def initialize( man ) @dir = '.' @include = ['**/*'] @exclude = [] super @exclude |= MUST_EXCLUDE end |
Instance Attribute Details
#dir ⇒ Object
Returns the value of attribute dir.
31 32 33 |
# File 'lib/reap/class/manifest.rb', line 31 def dir @dir end |
#exclude ⇒ Object
Returns the value of attribute exclude.
31 32 33 |
# File 'lib/reap/class/manifest.rb', line 31 def exclude @exclude end |
#include ⇒ Object
Returns the value of attribute include.
31 32 33 |
# File 'lib/reap/class/manifest.rb', line 31 def include @include end |
Instance Method Details
#generate ⇒ Object Also known as: call
Generate manifest file.
45 46 47 48 49 50 51 52 53 54 55 56 |
# File 'lib/reap/class/manifest.rb', line 45 def generate #( type=nil ) manifest_file = File.join( File.( @dir ), 'MANIFEST' ) package_files = FileList.new package_files.include(*@include) package_files.exclude(*@exclude) #if @exclude and not @exclude.empty? File.open( manifest_file, 'w+') do |f| package_files.each do |pf| f << "#{salt(pf)} #{pf}\n" if File.file?(pf) end end end |