From 992d9d762d5e3670923ebd8e4be89a666f9d02fc Mon Sep 17 00:00:00 2001 From: Sungmin kim Date: Mon, 15 Apr 2013 17:07:04 +0900 Subject: [PATCH] [title] Fixed cancel job about "Multi build" password --- dibs-web/app/controllers/jobs_controller.rb | 30 ++++++++++++++++++--- dibs-web/app/controllers/utils.rb | 3 ++- dibs-web/public/javascripts/log.js | 3 ++- 3 files changed, 31 insertions(+), 5 deletions(-) diff --git a/dibs-web/app/controllers/jobs_controller.rb b/dibs-web/app/controllers/jobs_controller.rb index 37b936e..0172bb6 100644 --- a/dibs-web/app/controllers/jobs_controller.rb +++ b/dibs-web/app/controllers/jobs_controller.rb @@ -630,13 +630,37 @@ class JobsController < ApplicationController end end + # get password when Multi build + if job.job_type.eql? "MULTIBUILD" + sub_job = Job.find(:first, :conditions => ["parent_job_id=?", id]) + sub_job_project_info = Project.find(sub_job.project_id) + job_password = sub_job_project_info.password + else + job_password = job.project_password + end + # Excute command + message = "" begin - Utils.sbi_cancel_command(id, job.project_password) + result, message = Utils.sbi_cancel_command(id, job_password) rescue => e render :text => e.message, :status => 406 - return end - render :xml=> "OK" + + #generate to XML + doc = Builder::XmlMarkup.new( :target => out_string = "", :indent => 2 ) + doc.Responser { + generate_xml_header(doc) + doc.Data { + doc.JobId(id) + doc.Distribution(job.distribution_name) + doc.Project(job.project_name) + doc.Builder(job.user_name) + doc.Status(job.status) + doc.Message(message) + } + } + + render :text => out_string, :content_type => "text/xml" end end diff --git a/dibs-web/app/controllers/utils.rb b/dibs-web/app/controllers/utils.rb index d6b9ba4..d4a5d2c 100644 --- a/dibs-web/app/controllers/utils.rb +++ b/dibs-web/app/controllers/utils.rb @@ -108,7 +108,8 @@ puts "[[[#{cmd}]]]" cmd = "#{DIBS_PATH}/build-cli cancel #{options}" puts "Cancel command" puts "[[[#{cmd}]]]" - return execute_shell_return(cmd) + result, msg = execute_shell_return(cmd) + return result, msg end def Utils.sbi_fullbuild_command(server_name, dist_name) diff --git a/dibs-web/public/javascripts/log.js b/dibs-web/public/javascripts/log.js index b5f0677..de72f9b 100644 --- a/dibs-web/public/javascripts/log.js +++ b/dibs-web/public/javascripts/log.js @@ -149,7 +149,8 @@ function moreLog() { function cancelJob() { cancelJobsJobid(job_id, function(xml) { - alert("Reqeusted cancel job : "+job_id); + var message = $(xml).find("Data").find("Message").text(); + alert(message); }); } -- 2.34.1