From: donghee yang Date: Mon, 29 Oct 2012 04:51:50 +0000 (+0900) Subject: [Title] Added "start_time", "end_time" to Job attributes X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=4470afe0dea14201a84ac46116921a0ef2881722;p=sdk%2Ftools%2Fsdk-build.git [Title] Added "start_time", "end_time" to Job attributes --- diff --git a/src/build_server/BuildServer.rb b/src/build_server/BuildServer.rb index 407df75..cd3b160 100644 --- a/src/build_server/BuildServer.rb +++ b/src/build_server/BuildServer.rb @@ -567,7 +567,7 @@ class BuildServer db.do "CREATE TABLE IF NOT EXISTS project_packages(prj_id INTEGER, pkg_ver VARCHAR(64), pkg_name VARCHAR(64), pkg_os VARCHAR(32))" # JOBS - db.do "CREATE TABLE IF NOT EXISTS jobs(id INTEGER PRIMARY KEY, jtype VARCHAR(32), os_name VARCHAR(32), user_id INTEGER, parent_job_id INTEGER, status VARCHAR(32), prj_id INTEGER, dist_name VARCHAR(32) )" + db.do "CREATE TABLE IF NOT EXISTS jobs(id INTEGER PRIMARY KEY, jtype VARCHAR(32), os_name VARCHAR(32), user_id INTEGER, parent_job_id INTEGER, status VARCHAR(32), prj_id INTEGER, dist_name VARCHAR(32), start_time VARCHAR(32), end_time VARCHAR(32) )" rescue DBI::DatabaseError => e puts "DB Creation failed!" diff --git a/src/build_server/CommonJob.rb b/src/build_server/CommonJob.rb index 3d20cc5..00f69d1 100644 --- a/src/build_server/CommonJob.rb +++ b/src/build_server/CommonJob.rb @@ -27,6 +27,7 @@ Contributors: =end require "fileutils" +require "time" $LOAD_PATH.unshift File.dirname(__FILE__) $LOAD_PATH.unshift File.dirname(File.dirname(__FILE__))+"/common" require "utils.rb" @@ -56,6 +57,9 @@ class CommonJob @status = "JUST_CREATED" @log = nil + @start_time = Time.now + @end_time = nil + @sub_pid = 0 end @@ -192,9 +196,14 @@ class CommonJob row=db.select_one("SELECT * FROM jobs WHERE id=#{@id}") if row.nil? then - db.do "INSERT INTO jobs VALUES (#{@id},'#{@type}','#{@os}', #{@user_id}, #{parent_id}, '#{@status}', #{prj_id}, '#{dist_name}')" + start_time = @start_time.strftime("%F %T") + db.do "INSERT INTO jobs VALUES (#{@id},'#{@type}','#{@os}', #{@user_id}, #{parent_id}, '#{@status}', #{prj_id}, '#{dist_name}', '#{start_time}', '')" else db.do "UPDATE jobs SET status='#{@status}' WHERE id=#{@id}" + if @status == "FINISHED" or @status == "ERROR" or @status == "CANCELED" then + @end_time = Time.now.strftime("%F %T") + db.do "UPDATE jobs SET end_time='#{@end_time}' WHERE id=#{@id}" + end end end