Signed-off-by: Cao Xueliang <caoxl78320(a)163.com>
---
src/delimiter/constants.rb | 1 +
src/delimiter/utils.rb | 17 +++++++++++------
2 files changed, 12 insertions(+), 6 deletions(-)
diff --git a/src/delimiter/constants.rb b/src/delimiter/constants.rb
index 23b5053..457e33d 100644
--- a/src/delimiter/constants.rb
+++ b/src/delimiter/constants.rb
@@ -13,3 +13,4 @@ DELIMITER_TASK_QUEUE = 'delimiter'
BISECT_RUN_SCRIPT = "#{ENV['CCI_SRC']}/src/delimiter/find-commit/bisect_run_script.rb"
# The files which are in this dir can be uploaded by lkp-tests
TMP_RESULT_ROOT = ENV['TMP_RESULT_ROOT'] || '/tmp/lkp/result'
+PROCESS_JOB_YAML = "/tmp/process.yaml"
diff --git a/src/delimiter/utils.rb b/src/delimiter/utils.rb
index aaad394..2c6549c 100644
--- a/src/delimiter/utils.rb
+++ b/src/delimiter/utils.rb
@@ -61,15 +61,17 @@ module Utils
return monitor.run
end
+ def save_job_to_yaml(job, yaml_file)
+ File.open(yaml_file, 'w') { |f| YAML.dump(job, f) }
+ end
+
def submit_job(job)
- sched = SchedClient.new
- response = sched.submit_job(job.to_json)
+ save_job_to_yaml(job, PROCESS_JOB_YAML)
+ response = %x(#{LKP_SRC}/sbin/submit #{PROCESS_JOB_YAML})
puts "submit job response: #{response}"
- res_arr = JSON.parse(response)
- return nil if res_arr.empty? || !res_arr[0]['message'].empty?
+ return $1 if response =~ /job id=(.*)/
- # just consider build-pkg job
- return res_arr[0]['job_id']
+ return nil
end
# submit the bad job
@@ -84,6 +86,8 @@ module Utils
extract_finished = monitor_run_stop(query)
return nil unless extract_finished.zero?
+ raise "the job is incredible for bisect: #{new_job_id}" unless credible?(job['bad_job_id'], new_job_id, error_id)
+
stats = query_stats(new_job_id, 10)
raise "es cant query #{new_job_id} stats field!" unless stats
@@ -138,6 +142,7 @@ module Utils
job['my_token'] = account_info['my_token']
job['bad_job_id'] = job_id
+ job.delete('tboxgroup')
job.delete('subqueue')
job.delete('queue')
job.delete('id')
--
2.23.0