Sha256: 0a6bbbd9ff15802d940ebcd90a7d4e3dc5bdb6bc9ccd6f7a9a25801e68f1e075

Contents?: true

Size: 1.15 KB

Versions: 7

Compression:

Stored size: 1.15 KB

Contents

require 'fog'
require_relative 'undercloud_handle/deployment'
require_relative 'undercloud_handle/deployment_role'
require_relative 'undercloud_handle/flavor'
require_relative 'undercloud_handle/image'
require_relative 'undercloud_handle/node'

module Overcloud
  class UndercloudHandle

    include Overcloud::Deployment
    include Overcloud::DeploymentRole
    include Overcloud::Flavor
    include Overcloud::Image
    include Overcloud::Node

    def initialize(username, password, auth_url, port = 5000)
      @username = username
      @password = password
      @auth_url = auth_url
      @port = port
    end
    
    private
    
    def service(service_name)
      fog_parameters = {
        :provider           => 'OpenStack',
        :openstack_auth_url => 'http://' + @auth_url + ':' + @port.to_s + '/v2.0/tokens',   
        :openstack_username => @username,
        :openstack_api_key  => @password,
        :openstack_tenant   => @username,
      }
      
      if service_name == 'Planning'
        return Fog::Openstack.const_get(service_name).new(fog_parameters)
      end
      return Fog.const_get(service_name).new(fog_parameters)
    end
  
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
egon-0.4.8 lib/egon/overcloud/undercloud_handle.rb
egon-0.4.7 lib/egon/overcloud/undercloud_handle.rb
egon-0.4.6 lib/egon/overcloud/undercloud_handle.rb
egon-0.4.5 lib/egon/overcloud/undercloud_handle.rb
egon-0.4.4 lib/egon/overcloud/undercloud_handle.rb
egon-0.4.3 lib/egon/overcloud/undercloud_handle.rb
egon-0.4.2 lib/egon/overcloud/undercloud_handle.rb