mirror of
https://github.com/puppetlabs/vmpooler.git
synced 2026-01-27 10:28:41 -05:00
51 lines
1.3 KiB
Ruby
51 lines
1.3 KiB
Ruby
module Vmpooler
|
|
class API
|
|
class Reroute < Sinatra::Base
|
|
api_version = '1'
|
|
|
|
get '/status/?' do
|
|
call env.merge("PATH_INFO" => "/api/v#{api_version}/status")
|
|
end
|
|
|
|
get '/summary/?' do
|
|
call env.merge("PATH_INFO" => "/api/v#{api_version}/summary")
|
|
end
|
|
|
|
post '/token/?' do
|
|
call env.merge("PATH_INFO" => "/api/v#{api_version}/token")
|
|
end
|
|
|
|
get '/token/:token/?' do
|
|
call env.merge("PATH_INFO" => "/api/v#{api_version}/token/#{params[:token]}")
|
|
end
|
|
|
|
delete '/token/:token/?' do
|
|
call env.merge("PATH_INFO" => "/api/v#{api_version}/token/#{params[:token]}")
|
|
end
|
|
|
|
get '/vm/?' do
|
|
call env.merge("PATH_INFO" => "/api/v#{api_version}/vm")
|
|
end
|
|
|
|
post '/vm/?' do
|
|
call env.merge("PATH_INFO" => "/api/v#{api_version}/vm")
|
|
end
|
|
|
|
post '/vm/:template/?' do
|
|
call env.merge("PATH_INFO" => "/api/v#{api_version}/vm/#{params[:template]}")
|
|
end
|
|
|
|
get '/vm/:hostname/?' do
|
|
call env.merge("PATH_INFO" => "/api/v#{api_version}/vm/#{params[:hostname]}")
|
|
end
|
|
|
|
delete '/vm/:hostname/?' do
|
|
call env.merge("PATH_INFO" => "/api/v#{api_version}/vm/#{params[:hostname]}")
|
|
end
|
|
|
|
put '/vm/:hostname/?' do
|
|
call env.merge("PATH_INFO" => "/api/v#{api_version}/vm/#{params[:hostname]}")
|
|
end
|
|
end
|
|
end
|
|
end
|