class ProxyAPI::Salt
def autosign_create(name)
def autosign_create(name) parse(post('', "autosign/#{URI.escape(name)}")) rescue => e raise ProxyException.new(url, e, N_('Unable to set Salt autosign for %s'), name) end
def autosign_list
def autosign_list parse(get('autosign')) rescue => e raise ProxyException.new(url, e, N_('Unable to fetch autosign list')) end
def autosign_remove(name)
def autosign_remove(name) parse(delete("autosign/#{URI.escape(name)}")) rescue RestClient::ResourceNotFound true # entry doesn't exists anyway rescue => e raise ProxyException.new(url, e, N_('Unable to delete Salt autosign for %s'), name) end
def environments_list
def environments_list parse(get('environments')) rescue => e raise ProxyException.new(url, e, N_('Unable to fetch Salt environments list')) end
def highstate(name)
def highstate(name) parse(post('', "highstate/#{name}")) rescue => e raise ProxyException.new(url, e, N_('Unable to run Salt state.highstate for %s'), name) end
def initialize(args)
def initialize(args) @url = args[:url] + '/salt/' super args end
def key_accept(name)
def key_accept(name) parse(post('', "key/#{name}")) rescue => e raise ProxyException.new(url, e, N_('Unable to accept Salt key for %s'), name) end
def key_delete(name)
def key_delete(name) parse(delete("key/#{name}")) rescue RestClient::ResourceNotFound true rescue => e raise ProxyException.new(url, e, N_('Unable to delete Salt key for %s'), name) end
def key_list
def key_list parse(get('key')) rescue => e raise ProxyException.new(url, e, N_('Unable to fetch Salt key list')) end
def key_reject(name)
def key_reject(name) parse(delete("key/reject/#{name}")) rescue => e raise ProxyException.new(url, e, N_('Unable to reject Salt key for %s'), name) end
def states_list
def states_list states = {} environments_list.each do |environment| states[environment] = parse(get("environments/#{environment}")) end states rescue => e raise ProxyException.new(url, e, N_('Unable to fetch Salt states list')) end