Class: VCloudCloud::Steps::StemcellInfo
Instance Attribute Summary
#client, #state
Instance Method Summary
collapse
#initialize, #rollback
Instance Method Details
#cleanup ⇒ Object
15
16
17
|
# File 'lib/cloud/vcloud/steps/stemcell_info.rb', line 15
def cleanup
FileUtils.remove_entry_secure state[:stemcell_dir] if state[:stemcell_dir]
end
|
4
5
6
7
8
9
10
11
12
13
|
# File 'lib/cloud/vcloud/steps/stemcell_info.rb', line 4
def perform(image, &block)
tmpdir = state[:stemcell_dir] = Dir.mktmpdir
`tar -C #{tmpdir} -xzf #{File.absolute_path(image)}`
raise 'Invalid stemcell image' unless $?.success?
files = Dir.glob File.join(tmpdir, '*.ovf')
raise "Invalid stemcell image: having #{files.length} .ovf files" if files.length != 1
state[:stemcell_ovf] = File.basename files[0]
end
|