This patch should be applied on top of Scott's new deployment patchset.
From: Jan Provaznik jprovazn@redhat.com
--- src/app/controllers/deployments_controller.rb | 10 ++++++---- src/app/models/deployment.rb | 7 ++++--- 2 files changed, 10 insertions(+), 7 deletions(-)
diff --git a/src/app/controllers/deployments_controller.rb b/src/app/controllers/deployments_controller.rb index 8b07b1b..46465a4 100644 --- a/src/app/controllers/deployments_controller.rb +++ b/src/app/controllers/deployments_controller.rb @@ -82,12 +82,14 @@ class DeploymentsController < ApplicationController @deployment.owner = current_user respond_to do |format| if @deployment.save - flash[:notice] = "Deployment launched" - errors = @deployment.launch(params[:hw_profiles] || {}, current_user) - unless errors.empty? + status = @deployment.launch(params[:hw_profiles] || {}, current_user) + if status[:errors].empty? + flash[:notice] = "Deployment launched" + else flash[:error] = { :summary => "Failed to launch following assemblies:", - :failures => errors + :failures => status[:errors], + :successes => status[:successes] } end format.js { render :partial => 'properties' } diff --git a/src/app/models/deployment.rb b/src/app/models/deployment.rb index 6bfa5fc..cd5371f 100644 --- a/src/app/models/deployment.rb +++ b/src/app/models/deployment.rb @@ -122,7 +122,7 @@ class Deployment < ActiveRecord::Base end
def launch(hw_profiles, user) - errors = [] + status = { :errors => {}, :successes => {} } deployable_xml.assemblies.each do |assembly| # TODO: for now we try to start all instances even if some of them fails begin @@ -146,13 +146,14 @@ class Deployment < ActiveRecord::Base :action => InstanceTask::ACTION_CREATE}) condormatic_instance_create(task) end + status[:successes][assembly.name] = 'launched' rescue logger.error $! logger.error $!.backtrace.join("\n ") - errors << "#{assembly.name}: #{$!}" + status[:errors][assembly.name] = $! end end - errors + status end
def self.list_or_search(query,order_field,order_dir)
On 06/13/2011 02:48 PM, jprovazn@redhat.com wrote:
From: Jan Provaznikjprovazn@redhat.com
src/app/controllers/deployments_controller.rb | 10 ++++++---- src/app/models/deployment.rb | 7 ++++--- 2 files changed, 10 insertions(+), 7 deletions(-)
diff --git a/src/app/controllers/deployments_controller.rb b/src/app/controllers/deployments_controller.rb index 8b07b1b..46465a4 100644 --- a/src/app/controllers/deployments_controller.rb +++ b/src/app/controllers/deployments_controller.rb @@ -82,12 +82,14 @@ class DeploymentsController< ApplicationController @deployment.owner = current_user respond_to do |format| if @deployment.save
flash[:notice] = "Deployment launched"
errors = @deployment.launch(params[:hw_profiles] || {}, current_user)
unless errors.empty?
status = @deployment.launch(params[:hw_profiles] || {}, current_user)
if status[:errors].empty?
flash[:notice] = "Deployment launched"
else flash[:error] = { :summary => "Failed to launch following assemblies:",
:failures => errors
:failures => status[:errors],
:successes => status[:successes] } end format.js { render :partial => 'properties' }
diff --git a/src/app/models/deployment.rb b/src/app/models/deployment.rb index 6bfa5fc..cd5371f 100644 --- a/src/app/models/deployment.rb +++ b/src/app/models/deployment.rb @@ -122,7 +122,7 @@ class Deployment< ActiveRecord::Base end
def launch(hw_profiles, user)
- errors = []
- status = { :errors => {}, :successes => {} } deployable_xml.assemblies.each do |assembly| # TODO: for now we try to start all instances even if some of them fails begin
@@ -146,13 +146,14 @@ class Deployment< ActiveRecord::Base :action => InstanceTask::ACTION_CREATE}) condormatic_instance_create(task) end
status[:successes][assembly.name] = 'launched' rescue logger.error $! logger.error $!.backtrace.join("\n ")
errors<< "#{assembly.name}: #{$!}"
status[:errors][assembly.name] = $! end end
- errors
status end
def self.list_or_search(query,order_field,order_dir)
ACK.
aeolus-devel@lists.fedorahosted.org