Module: Misty::Microversion

Included in:
Openstack::Cinder::V3, Openstack::Ironic::V1, Openstack::Manila::V2, Openstack::Nova::V2_1
Defined in:
lib/misty/microversion.rb

Defined Under Namespace

Classes: VersionError

Constant Summary collapse

VERSION_STATES =
%w{CURRENT LATEST SUPPORTED}

Instance Method Summary collapse

Instance Method Details

#initialize(auth, cloud, options) ⇒ Object



7
8
9
10
11
# File 'lib/misty/microversion.rb', line 7

def initialize(auth, cloud, options)
  super
  @microversion = true
  @version = version_get(@options.version)
end

#microversion_headerObject



13
14
15
# File 'lib/misty/microversion.rb', line 13

def microversion_header
  {'X-Openstack-API-Version' => "#{baseclass.downcase} #{@version}" }
end

#version_get(version_option) ⇒ Object



17
18
19
20
21
22
23
# File 'lib/misty/microversion.rb', line 17

def version_get(version_option)
  if VERSION_STATES.include?(version_option)
    return version_by_state(version_option)
  else
    return version_by_number(version_option)
  end
end

#versionsObject



25
26
27
# File 'lib/misty/microversion.rb', line 25

def versions
  @versions ||= versions_fetch
end