Class AutomateIt::PlatformManager
In: lib/automateit/platform_manager.rb
Parent: AutomateIt::Plugin::Manager


The PlatformManager provides a way to query platform identifiers, such as the operating system distribution‘s version.


query   single_vendor?   tags  

Classes and Modules

Class AutomateIt::PlatformManager::BaseDriver
Class AutomateIt::PlatformManager::Darwin
Class AutomateIt::PlatformManager::Debian
Class AutomateIt::PlatformManager::FreeBSD
Class AutomateIt::PlatformManager::Gentoo
Class AutomateIt::PlatformManager::LSB
Class AutomateIt::PlatformManager::OpenBSD
Class AutomateIt::PlatformManager::Struct
Class AutomateIt::PlatformManager::SunOS
Class AutomateIt::PlatformManager::Uname
Class AutomateIt::PlatformManager::Windows

Public Instance methods

Query the search field. The search can either be a key or a set of keys separated by "#" signs.


  query(:os) # => "linux"
  query("arch") # => "i686"
  query("os#arch") # => "linux_i686"
  query("os#arch#distro#release") # => "linux_i686_ubuntu_6.06"

Fields that may be provided by drivers:

  • :arch — Hardware architecture, e.g., "i686"
  • :os — Operating system, e.g., "linux"
  • :distro — Operating system distribution, e.g., "ubuntu"
  • :release — Operating system distribution release, e.g., "6.06"


# File lib/automateit/platform_manager.rb, line 20
  def query(search) dispatch(search) end

Is this a single-vendor operating system? E.g., Windows is, while Linux isn‘t. This method helps the TagManager determine how to name tags. A single-vendor product uses the "os#release" format (e.g., "windows_xp"), while a multi-vendor product uses a "distro#release" format ("ubuntu_6.06").


# File lib/automateit/platform_manager.rb, line 27
  def single_vendor?() dispatch() end

Return an array of tags for this platform.


# File lib/automateit/platform_manager.rb, line 30
  def tags() dispatch() end