Method: VMC::Client#create_service

Defined in:
lib/vmc/client.rb

#create_service(infra, service, name) ⇒ Object

Raises:



193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
# File 'lib/vmc/client.rb', line 193

def create_service(infra,service, name)
  
  services = services_info
  services ||= []
  service_hash = nil

  service = service.to_s

  # FIXME!
  services.each do |service_type, value|
    value.each do |vendor, version|
      version.each do |version_str, service_descr|
        if service == service_descr[:vendor]
          service_hash = {
            :type => service_descr[:type], :tier => 'free',
            :vendor => service, :version => version_str
          }
          service_hash[:infra] = { :provider => infra } if infra
          break
        end
      end
    end
  end

  raise TargetError, "Service [#{service}] is not a valid service choice" unless service_hash
  service_hash[:name] = name
  json_post(path(VMC::SERVICES_PATH), service_hash)
end