Commit 0611c5c6120503b57237c2580fddf318cd6a552a

Authored by Dmitriy Zaporozhets
1 parent 50e8d6c0

Fix deploy key api 500 if key is empty

Showing 1 changed file with 16 additions and 14 deletions   Show diff stats
lib/api/projects.rb
@@ -428,21 +428,23 @@ module API @@ -428,21 +428,23 @@ module API
428 post ":id/keys" do 428 post ":id/keys" do
429 attrs = attributes_for_keys [:title, :key] 429 attrs = attributes_for_keys [:title, :key]
430 430
431 - attrs[:key].strip!  
432 -  
433 - # check if key already exist in project  
434 - key = user_project.deploy_keys.find_by_key(attrs[:key])  
435 - if key  
436 - present key, with: Entities::SSHKey  
437 - return  
438 - end 431 + if attrs[:key].present?
  432 + attrs[:key].strip!
  433 +
  434 + # check if key already exist in project
  435 + key = user_project.deploy_keys.find_by_key(attrs[:key])
  436 + if key
  437 + present key, with: Entities::SSHKey
  438 + return
  439 + end
439 440
440 - # Check for available deploy keys in other projects  
441 - key = current_user.owned_deploy_keys.find_by_key(attrs[:key])  
442 - if key  
443 - user_project.deploy_keys << key  
444 - present key, with: Entities::SSHKey  
445 - return 441 + # Check for available deploy keys in other projects
  442 + key = current_user.owned_deploy_keys.find_by_key(attrs[:key])
  443 + if key
  444 + user_project.deploy_keys << key
  445 + present key, with: Entities::SSHKey
  446 + return
  447 + end
446 end 448 end
447 449
448 key = DeployKey.new attrs 450 key = DeployKey.new attrs