Class: LogicalConstruct::UnpackPlan

Inherits:
Mattock::TaskLib
  • Object
show all
Defined in:
lib/logical-construct/target/unpack-plan.rb

Instance Method Summary collapse

Instance Method Details

#default_configuration(provision) ⇒ Object



11
12
13
14
15
16
17
18
19
# File 'lib/logical-construct/target/unpack-plan.rb', line 11

def default_configuration(provision)
  settings(
    :construct_dir => provision.construct_dir,
    :cookbook_metadata => nil,
    :cookbook_dir => nil,
    :cookbook_name => "cookbook",
    :cookbook_archive => nil
  )
end

#default_namespaceObject



7
8
9
# File 'lib/logical-construct/target/unpack-plan.rb', line 7

def default_namespace
  :unpack_plan
end

#defineObject



34
35
36
37
38
39
40
41
42
# File 'lib/logical-construct/target/unpack-plan.rb', line 34

def define
  in_namespace do
    file cookbook_archive
    file  => cookbook_archive do
      untar_command.run
    end
    task :unpack => 
  end
end

#resolve_configurationObject



21
22
23
24
25
26
# File 'lib/logical-construct/target/unpack-plan.rb', line 21

def resolve_configuration
  self.cookbook_archive ||= File::join(construct_dir, "cookbook.tbz")
  self.cookbook_dir ||= File::join(construct_dir, cookbook_name)

  self. ||= File::join(cookbook_dir, "metadata.rb")
end

#untar_commandObject



28
29
30
31
32
# File 'lib/logical-construct/target/unpack-plan.rb', line 28

def untar_command
  Mattock::CommandLine.new("tar", "-xjf") do |cmd|
    cmd.options << cookbook_archive
  end
end