lib/cabal/api/common/public_key.rb in cabal-api-0.2.2 vs lib/cabal/api/common/public_key.rb in cabal-api-0.2.3

- old
+ new

@@ -1,22 +1,28 @@ require 'cabal/util' -require 'cabal/api/cluster' +require 'cabal/api' +require 'cabal/api/common/services' module Cabal module API module Common module PublicKey def self.included(base) base.class_eval do + include Cabal::API::Common::Services + formatter :txt, ->(object, env) { object[:public_ssh_key] } get '/key/:name' do - cluster = Cabal::API::Cluster.by_cluster_name(params[:name]) + name = Cabal::Util.normalize(params[:name]) + cluster_service.create(name) unless cluster_service.names.include?(name) + key = cluster_service.public_key(name) + { - name: cluster.name, - public_ssh_key: cluster.public_key + name: name, + public_ssh_key: key } end end end end