Project

General

Profile

Download (1.36 KB) Statistics
| Branch: | Tag: | Revision:
module ProxyAPI
class Puppetca < ProxyAPI::Resource
def initialize(args)
@url = args[:url] + "/puppet/ca"
super args
end

def autosign
parse(get("autosign"))
rescue => e
raise ProxyException.new(url, e, N_("Unable to get PuppetCA autosign"))
end

def set_autosign(certname)
parse(post("", "autosign/#{certname}"))
rescue => e
raise ProxyException.new(url, e, N_("Unable to set PuppetCA autosign for %s"), certname)
end

def del_autosign(certname)
parse(delete("autosign/#{certname}"))
rescue RestClient::ResourceNotFound
# entry doesn't exists anyway
true
rescue => e
raise ProxyException.new(url, e, N_("Unable to delete PuppetCA autosign for %s"), certname)
end

def sign_certificate(certname)
parse(post("", certname))
rescue => e
raise ProxyException.new(url, e, N_("Unable to sign PuppetCA certificate for %s"), certname)
end

def del_certificate(certname)
parse(delete(certname.to_s))
rescue RestClient::ResourceNotFound
# entry doesn't exists anyway
true
rescue => e
raise ProxyException.new(url, e, N_("Unable to delete PuppetCA certificate for %s"), certname)
end

def all
parse(get)
rescue => e
raise ProxyException.new(url, e, N_("Unable to get PuppetCA certificates"))
end
end
end
(8-8/13)