[PATCH Audrey] https://bugzilla.redhat.com/show_bug.cgi?id=766012

gblomqui at redhat.com gblomqui at redhat.com
Fri Dec 9 21:24:37 UTC 2011


From: Greg Blomquist <gblomqui at redhat.com>

Throw 404 instead of 500 when attempting to delete missing configs.
---
 configserver/Rakefile                    |    2 +-
 configserver/aeolus-configserver.spec.in |    5 ++++-
 configserver/src/configserver.rb         |   12 ++++++++++--
 3 files changed, 15 insertions(+), 4 deletions(-)

diff --git a/configserver/Rakefile b/configserver/Rakefile
index 8236bbc..4729b3d 100644
--- a/configserver/Rakefile
+++ b/configserver/Rakefile
@@ -24,7 +24,7 @@ require 'rake/clean'
 require 'rubygems'
 require 'rubygems/package_task'
 
-version = '0.4.2'
+version = '0.4.3'
 man_section = '8'
 pkg_name = 'aeolus-configserver'
 
diff --git a/configserver/aeolus-configserver.spec.in b/configserver/aeolus-configserver.spec.in
index df9f52a..8ebdd2b 100644
--- a/configserver/aeolus-configserver.spec.in
+++ b/configserver/aeolus-configserver.spec.in
@@ -17,7 +17,7 @@
 
 Name:       aeolus-configserver
 Version:    @VERSION@
-Release:    2%{?dist}
+Release:    1%{?dist}
 Summary:    The Aeolus Config Server
 
 Group:      Applications/System
@@ -169,6 +169,9 @@ fi
 %doc COPYING
 
 %changelog
+* Fri Dec 09 2011 Greg Blomquist <gblomqui at redhat.com> 0.4.3-1
+- Fix 500 on HTTP DELETE of deployment data
+- (https://bugzilla.redhat.com/show_bug.cgi?id=766012)
 * Tue Nov 29 2011 Greg Blomquist <gblomqui at redhat.com> 0.4.2-2
 - Allow deletion of deployment configs
 * Tue Nov 29 2011 Joe VLcek <jvlcek at redhat.com> 0.4.1-4
diff --git a/configserver/src/configserver.rb b/configserver/src/configserver.rb
index 4afa872..4e90dc7 100644
--- a/configserver/src/configserver.rb
+++ b/configserver/src/configserver.rb
@@ -144,14 +144,22 @@ end
 ## DELETE /configs/
 # Permanently delete the configuration data for an instance
 delete '/configs/:version/:uuid' do
-  configs.delete(params[:uuid])
+  if not configs.exists?(params[:uuid])
+    not_found
+  else
+    configs.delete(params[:uuid])
+  end
 end
 
 ## DELETE /deployment/
 # Permanently delete the configuration data for an entire deployment
 #  - delete all instance configurations under that deployment
 delete '/deployment/:version/:uuid' do
-  configs.delete_deployment(params[:uuid])
+  if not configs.exists?(params[:uuid])
+    not_found
+  else
+    configs.delete_deployment(params[:uuid])
+  end
 end
 
 ## GET /files/
-- 
1.7.7.4




More information about the aeolus-devel mailing list