Class: SpecInfra::Command::Debian

Inherits:
Linux
  • Object
show all
Defined in:
lib/specinfra/command/debian.rb

Direct Known Subclasses

Ubuntu

Instance Method Summary collapse

Methods inherited from Linux

#check_access_by_user, #check_attribute, #check_container, #check_container_running, #check_immutable, #check_iptables_rule, #check_ipv4_address, #check_kernel_module_loaded, #check_selinux, #check_zfs, #get_interface_speed_of

Methods inherited from Base

#check_access_by_user, #check_authorized_key, #check_belonging_group, #check_container, #check_cotainer_running, #check_cron_entry, #check_directory, #check_file, #check_file_checksum, #check_file_contain, #check_file_contain_lines, #check_file_contain_with_fixed_strings, #check_file_contain_with_regexp, #check_file_contain_within, #check_file_md5checksum, #check_file_sha256checksum, #check_gid, #check_group, #check_grouped, #check_home_directory, #check_immutable, #check_installed_by_cpan, #check_installed_by_gem, #check_installed_by_npm, #check_installed_by_pear, #check_installed_by_pecl, #check_installed_by_pip, #check_ipfilter_rule, #check_ipnat_rule, #check_iptables_rule, #check_ipv4_address, #check_kernel_module_loaded, #check_link, #check_listening, #check_listening_with_protocol, #check_login_shell, #check_mail_alias, #check_mode, #check_monitored_by_god, #check_monitored_by_monit, #check_mounted, #check_owner, #check_primary_group, #check_process, #check_process_count, #check_reachable, #check_resolvable, #check_routing_table, #check_running, #check_running_under_supervisor, #check_running_under_upstart, #check_selinux, #check_service_installed, #check_service_start_mode, #check_socket, #check_svcprop, #check_svcprops, #check_uid, #check_user, #check_yumrepo, #check_yumrepo_enabled, #check_zfs, #escape, #get_file_content, #get_file_mtime, #get_file_size, #get_ipaddress_of_host, #get_mode, #get_process

Instance Method Details

#check_enabled(service, level = 3) ⇒ Object



4
5
6
7
# File 'lib/specinfra/command/debian.rb', line 4

def check_enabled(service, level=3)
  # Until everything uses Upstart, this needs an OR.
  "ls /etc/rc#{level}.d/ | grep -- '^S..#{escape(service)}' || grep 'start on' /etc/init/#{escape(service)}.conf"
end

#check_installed(package, version = nil) ⇒ Object Also known as: check_installed_by_apt



9
10
11
12
13
14
15
16
17
# File 'lib/specinfra/command/debian.rb', line 9

def check_installed(package, version=nil)
  escaped_package = escape(package)
  if version
    cmd = "dpkg-query -f '${Status} ${Version}' -W #{escaped_package} | grep -E '^(install|hold) ok installed #{escape(version)}$'"
  else
    cmd = "dpkg-query -f '${Status}' -W #{escaped_package} | grep -E '^(install|hold) ok installed$'"
  end
  cmd
end

#get_package_version(package, opts = nil) ⇒ Object



25
26
27
# File 'lib/specinfra/command/debian.rb', line 25

def get_package_version(package, opts=nil)
  "dpkg-query -f '${Status} ${Version}' -W #{package} | sed -n 's/^install ok installed //p'"
end

#install(package) ⇒ Object



21
22
23
# File 'lib/specinfra/command/debian.rb', line 21

def install(package)
  "apt-get -y install #{package}"
end