class Install
Public Class Methods
new()
click to toggle source
Calls superclass method
CommandBase::new
# File src/commands/install.rb, line 12 def initialize if !File.exists? File.join(Dir.home, '.shuttl/info') Dir.mkdir(File.join(Dir.home, ".shuttl/info"), 0700) end super end
Public Instance Methods
run(options)
click to toggle source
# File src/commands/install.rb, line 19 def run (options) tempFile = Tempfile.new('shuttl.zip') Net::HTTP.start("s3.us-east-2.amazonaws.com") do |http| resp = http.get("/shuttl-cli/shuttlinfo.zip") tempFile.write(resp.body) end tempFile.close Zip::File.open(tempFile.path) do |zip_file| # Handle entries one by one zip_file.each do |entry| # Extract to file/directory/symlink entry.extract(File.join(options[:installPath], entry.name.gsub('.shuttl/', ''))) {true} end end tempFile.unlink base = { :images => {}, :containers => {}, } File.open(File.join(Dir.home, '.shuttl/info'), 'w') do |fi| fi.write base.to_json end end