Method: Bosh::Director::Jobs::UpdateRelease#extract_release

Defined in:
lib/bosh/director/jobs/update_release.rb

#extract_releasevoid

This method returns an undefined value.

Extracts release tarball



79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
# File 'lib/bosh/director/jobs/update_release.rb', line 79

def extract_release
  release_tgz = File.join(@tmp_release_dir,
                          Api::ReleaseManager::RELEASE_TGZ)

  result = Bosh::Exec.sh("tar -C #{@tmp_release_dir} -xzf #{release_tgz} 2>&1", :on_error => :return)
  if result.failed?
    logger.error("Extracting release archive failed in dir #{@tmp_release_dir}, " +
                 "tar returned #{result.exit_status}, " +
                 "output: #{result.output}")
    raise ReleaseInvalidArchive, "Extracting release archive failed. Check task debug log for details."
  end
ensure
  if release_tgz && File.exists?(release_tgz)
    FileUtils.rm(release_tgz)
  end
end