Manipulation
# File lib/ironfan/provider/chef/client.rb, line 59 def self.create!(computer) return if computer.client? client = Client.new client.name computer.server.full_name client.admin false params = {:name => client.name, :admin => client.admin, :private_key => true } result = ChefServer.post_rest("clients", params) client.private_key(result["private_key"]) computer[:client] = client remember client end
# File lib/ironfan/provider/chef/client.rb, line 73 def self.destroy!(computer) return unless computer.client? forget computer.client.name computer.client.destroy File.delete(computer.client.key_filename) computer.delete(:client) end
# File lib/ironfan/provider/chef/client.rb, line 29 def self.expected_ids(computer) [computer.server.full_name]; end
# File lib/ironfan/provider/chef/client.rb, line 31 def self.key_dir Chef::Config.client_key_dir || "/tmp/#{ENV['USER']}-client_keys" end
Discovery
# File lib/ironfan/provider/chef/client.rb, line 47 def self.load!(cluster=nil) query = cluster && "name:#{cluster.name}-* OR clientname:#{cluster.name}-*" ChefServer.search(:client, query) do |raw| next unless raw.present? client = register(raw) Chef::Log.debug("Loaded #{client}") end end
# File lib/ironfan/provider/chef/client.rb, line 27 def self.multiple?() false; end
Generated with the Darkfish Rdoc Generator 2.