From e0191f0934244805a47a8fc6dbb86231c8be47ec Mon Sep 17 00:00:00 2001 From: huang Date: Mon, 22 May 2017 16:51:44 +0800 Subject: [PATCH] =?UTF-8?q?challenge=E5=88=9B=E5=BB=BA=E6=95=B4=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/challenges_controller.rb | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/app/controllers/challenges_controller.rb b/app/controllers/challenges_controller.rb index de3f68799..62f274224 100644 --- a/app/controllers/challenges_controller.rb +++ b/app/controllers/challenges_controller.rb @@ -45,17 +45,14 @@ class ChallengesController < ApplicationController jenkins_shixuns = Redmine::Configuration['jenkins_shixuns'] params = {:challengeStage => "#{@challenge.position}", :challengeType => "#{@challenge.evaluation_way.to_i}", :challengeProgramName => "#{@challenge.exec_path}", :trainingID => "#{@shixun.id}", :operationEnvironment => @shixun.language} uri = URI("#{jenkins_shixuns}/jenkins-exec/game/generatePipelineScriptForChallenge") - if res['code'] == 0 + res = uri_exec uri, {challengeInfo: params.to_json} + if res && res['code'] == 0 @challenge.update_attribute(:pipeline_script, res['msg']) respond_to do |format| format.html {redirect_to shixun_challenge_path(@challenge, :shixun_id => @shixun)} end else logger.error("res['code'] is #{res['code']}, res['msg'] is #{res['msg']}") - # unless res['msg'].blank? - # test_msg = Base64.decode64(res['msg']) - # end - # logger.info("###############{test_msg}") raise("脚本构建失败:本关执行文件名格式错误") end rescue Exception => e @@ -124,7 +121,7 @@ class ChallengesController < ApplicationController params = {:challengeStage => "#{@challenge.position}", :challengeType => "#{@challenge.evaluation_way.to_i}", :challengeProgramName => "#{@challenge.exec_path}", :trainingID => "#{@shixun.id}", :operationEnvironment => @shixun.language} uri = URI("#{jenkins_shixuns}/jenkins-exec/game/generatePipelineScriptForChallenge") res = uri_exec uri, {challengeInfo: params.to_json} - if res['code'] == 0 + if res && res['code'] == 0 @challenge.update_attribute(:pipeline_script, res['msg']) else logger.error("res['code'] is #{res['code']}, res['msg'] is #{res['code']}")