Class: Target::Deb

Inherits:
Base show all
Includes:
GenerateFromTemplates, StepPlugin, ZipDirectories
Defined in:
lib/gpm/target/deb.rb

Defined Under Namespace

Classes: DebianSourceWrapper

Constant Summary collapse

POST_INST_FILES =
/^_package_\/postinst.*$/
PRE_RM_FILES =
/^_package_\/prerm.*$/
SCRIPT_PERMISSIONS =
0750

Constants included from GenerateFromTemplates

GenerateFromTemplates::REPLACEMENT_REGEXP

Constants inherited from Base

Base::PHASES

Instance Attribute Summary

Attributes inherited from Base

#options, #work_dir

Attributes included from HasOptionMethods

#options

Class Method Summary collapse

Instance Method Summary collapse

Methods included from StepPlugin

included

Methods included from GenerateFromTemplates

#file_content, #file_contents_from_templates, included, #packaged_file_name, #template_dir, #template_files, #template_paths, #templates, #write_files_to_package_dir

Methods inherited from Base

add_step_for_phase, #exec, field_name_for_steps, #initialize, #package_dir, phase_steps_names, steps_for_phase, #tar, #tar_directory, #type

Methods included from HasOptionMethods

included

Methods included from HasDirectories

#in_directory

Constructor Details

This class inherits a constructor from Target::Base

Class Method Details

.architecture(architecture = nil) ⇒ Object



14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# File 'lib/gpm/target/deb.rb', line 14

def self.architecture(architecture=nil)
  if architecture.nil? or architecture == "native"
    # Default architecture should be 'native' which we'll need
    # to ask the system about.
    arch = %x{dpkg --print-architecture}.chomp
    if $?.exitstatus != 0
      arch = %x{uname -m}.chomp
      @logger.warn("Can't find 'dpkg' tool (need it to get default " \
                   "architecture!). Please specificy --architecture " \
                   "specifically. (Defaulting now to #{arch})")
    end
    arch
  elsif architecture == "x86_64"
    # Debian calls x86_64 "amd64"
    "amd64"
  else
    architecture
  end
end

Instance Method Details

#all_binariesObject



123
124
125
# File 'lib/gpm/target/deb.rb', line 123

def all_binaries
  Dir["**/*.so"]
end

#create_package(source) ⇒ Object



136
137
138
# File 'lib/gpm/target/deb.rb', line 136

def create_package(source)
  super(DebianSourceWrapper.new(source))
end