class ServerTools::InstallDebPackage

Attributes

hostname[R]
options[R]

Public Class Methods

new(hostname, options) click to toggle source
# File lib/server_tools/install_deb_package.rb, line 6
def initialize(hostname, options)
  @hostname = hostname
  @options = options
end

Public Instance Methods

copy_command() click to toggle source
# File lib/server_tools/install_deb_package.rb, line 11
def copy_command
  [
    "rsync -avz",
    %(-e "ssh #{ssh_opts(options)}"),
    "--progress --partial",
    "#{options[:deb_package_file]}",
    "#{options[:ssh_user]}@#{hostname}:~/"
  ].join(' ')
end
install_command() click to toggle source
# File lib/server_tools/install_deb_package.rb, line 21
def install_command
  ["ssh #{hostname}", "#{ssh_opts(options)}"].tap do |command|
    if options[:purge_older_version]
      command << %('#{purge_command} && #{_install_command}')
    else
      command << %('#{_install_command}')
    end
  end.join(' ')
end

Private Instance Methods

_install_command() click to toggle source
# File lib/server_tools/install_deb_package.rb, line 37
def _install_command
  "sudo dpkg --force-confnew -i ~/#{File.basename(options[:deb_package_file])}"
end
purge_command() click to toggle source
# File lib/server_tools/install_deb_package.rb, line 33
def purge_command
  "sudo dpkg -P #{options[:deb_package_name]}"
end