From bea42b95e4a0412ac7e2d324503a2b91940e7623 Mon Sep 17 00:00:00 2001 From: Linda <2294690300@qq.com> Date: Fri, 21 Apr 2017 20:35:54 +0800 Subject: [PATCH 001/206] ignore --- .gitignore | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 .gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 000000000..bb4b68554 --- /dev/null +++ b/.gitignore @@ -0,0 +1,39 @@ +*.swp +/.project +/.idea +/.bundle +*.swp +/config/database.yml +/config/configuration.yml +/config/additional_environment.rb +/config/oneapm.yml +/config/environments/production.rb + + +/files/* +/log/* +/public/tmp/* +/tmp/* +/public/cache/* +/config/newrelic.yml +/public/images/avatars/* +/db/schema.rb +/Gemfile.lock +/lib/plugins/acts_as_versioned/test/debug.log +.rbenv-gemsets +.DS_Store +public/api_doc/ +/.metadata +vendor/cache +/files +/public/images/avatars +/public/files +/tags +/config/initializers/gitlab_config.rb +1234567 +public/javascripts/wechat/node_modules/ +.ruby-version +.access_token +tmux*.log +config/wechat.yml +config/oneapm.yml From 6a0f8181cfae69dcffb3d297379e990208f79cfe Mon Sep 17 00:00:00 2001 From: huang Date: Fri, 21 Jul 2017 21:44:43 +0800 Subject: [PATCH 002/206] =?UTF-8?q?k8s=20=20yaml=E5=AE=9A=E5=88=B6?= =?UTF-8?q?=E5=8F=8A=E5=90=AF=E5=8A=A8pod=E6=9C=8D=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/assets/javascripts/kubernete.js.coffee | 3 ++ app/assets/stylesheets/kubernete.css.scss | 3 ++ app/controllers/kubernete_controller.rb | 55 ++++++++++++++++++++++ app/helpers/kubernete_helper.rb | 2 + app/views/kubernete/new.html.erb | 10 ++++ config/routes.rb | 6 +++ 6 files changed, 79 insertions(+) create mode 100644 app/assets/javascripts/kubernete.js.coffee create mode 100644 app/assets/stylesheets/kubernete.css.scss create mode 100644 app/controllers/kubernete_controller.rb create mode 100644 app/helpers/kubernete_helper.rb create mode 100644 app/views/kubernete/new.html.erb diff --git a/app/assets/javascripts/kubernete.js.coffee b/app/assets/javascripts/kubernete.js.coffee new file mode 100644 index 000000000..761567942 --- /dev/null +++ b/app/assets/javascripts/kubernete.js.coffee @@ -0,0 +1,3 @@ +# Place all the behaviors and hooks related to the matching controller here. +# All this logic will automatically be available in application.js. +# You can use CoffeeScript in this file: http://jashkenas.github.com/coffee-script/ diff --git a/app/assets/stylesheets/kubernete.css.scss b/app/assets/stylesheets/kubernete.css.scss new file mode 100644 index 000000000..3a633505e --- /dev/null +++ b/app/assets/stylesheets/kubernete.css.scss @@ -0,0 +1,3 @@ +// Place all the styles related to the kubernete controller here. +// They will automatically be included in application.css. +// You can use Sass (SCSS) here: http://sass-lang.com/ diff --git a/app/controllers/kubernete_controller.rb b/app/controllers/kubernete_controller.rb new file mode 100644 index 000000000..b97385268 --- /dev/null +++ b/app/controllers/kubernete_controller.rb @@ -0,0 +1,55 @@ +class KuberneteController < ApplicationController + + require 'open3' + layout "base_edu" + + RC_PATH = "files/k8s/webssh/controller.yaml" + SVC_PATH = "files/k8s/webssh/service.yaml" + # YAML.load(File.open(rc_PATH)) + def exec_pod + # 生成ymal文件 + nod_name = params[:name] + path_type = params[:type] + rc = YAML.load(File.open(RC_PATH)) + svc = YAML.load(File.open(SVC_PATH)) + File.new(File.join("files/k8s/#{path_type}", "controller-#{nod_name}.yaml"),"w+") + File.new(File.join("files/k8s/#{path_type}", "service-#{nod_name}.yaml"),"w+") + rc = change_yaml_info(rc, nod_name, "rc") + svc = change_yaml_info(svc, nod_name, "svc") + current_rc_path = "files/k8s/#{path_type}/controller-#{nod_name}.yaml" + current_svc_path = "files/k8s/#{path_type}/service-#{nod_name}.yaml" + open(current_rc_path, 'w') { |f| YAML.dump(rc, f) } + open(current_svc_path, 'w') { |f| YAML.dump(svc, f) } + # 启动容器 + server_url = "https://106.75.96.108:6443" + token = "c7dd73a7c86992fb" + # 删除容器命令 + kubenete_rc = "kubectl --server='" + server_url + "' --token='" + token + "' --insecure-skip-tls-verify=true " + "create -f " + current_rc_path + kubenete_svc = "kubectl --server='" + server_url + "' --token='" + token + "' --insecure-skip-tls-verify=true " + "create -f " + current_svc_path + Open3.popen3(kubenete_rc) + Open3.popen3(kubenete_svc) + render :json => {:status => "good"} + end + + def new + end + + def create + + end + + private + # yaml数据处理 + # 处理数据类型如下 + def change_yaml_info rc, nod_name, type + rc['metadata']['name'] = rc['metadata']['name'] + nod_name + rc['metadata']['labels']['name'] = rc['metadata']['labels']['name'] + nod_name + rc['spec']['selector']['name'] = rc['spec']['selector']['name'] + nod_name + if type == "rc" + rc['spec']['template']['metadata']['labels']['name'] = rc['spec']['template']['metadata']['labels']['name'] + nod_name + elsif type == "svc" + rc['spec']['ports'][0]['nodePort'] = rc['spec']['ports'][0]['nodePort'].to_i + nod_name.to_i + end + return rc + end +end diff --git a/app/helpers/kubernete_helper.rb b/app/helpers/kubernete_helper.rb new file mode 100644 index 000000000..2e3436028 --- /dev/null +++ b/app/helpers/kubernete_helper.rb @@ -0,0 +1,2 @@ +module KuberneteHelper +end diff --git a/app/views/kubernete/new.html.erb b/app/views/kubernete/new.html.erb new file mode 100644 index 000000000..0c619695f --- /dev/null +++ b/app/views/kubernete/new.html.erb @@ -0,0 +1,10 @@ +
+
+

K8S开启容器

+
    +
  • 创建容器名:<%= link_to "huang-01", {:controller => "kubernete", :action => "exec_pod", :name => 1} %>
  • +
  • 创建容器名:<%= link_to "huang-02", {:controller => "kubernete", :action => "exec_pod", :name => 2} %>
  • +
  • 创建容器名:<%= link_to "huang-03", {:controller => "kubernete", :action => "exec_pod", :name => 3} %>
  • +
+
+
diff --git a/config/routes.rb b/config/routes.rb index f605ed94c..b47bf1384 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -28,6 +28,12 @@ RedmineApp::Application.routes.draw do mount Mobile::API => '/api' + resources :kubernete do + collection do + get 'exec_pod' + end + end + resources :mark_down do end From edef0e68a7b2ee05206734d34eac08a24afa3e25 Mon Sep 17 00:00:00 2001 From: huang Date: Sun, 23 Jul 2017 17:13:58 +0800 Subject: [PATCH 003/206] 0 --- app/controllers/kubernete_controller.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/controllers/kubernete_controller.rb b/app/controllers/kubernete_controller.rb index b97385268..491180e3c 100644 --- a/app/controllers/kubernete_controller.rb +++ b/app/controllers/kubernete_controller.rb @@ -24,7 +24,7 @@ class KuberneteController < ApplicationController server_url = "https://106.75.96.108:6443" token = "c7dd73a7c86992fb" # 删除容器命令 - kubenete_rc = "kubectl --server='" + server_url + "' --token='" + token + "' --insecure-skip-tls-verify=true " + "create -f " + current_rc_path + kubenete_rc = "ssh -t kubectl --server='" + server_url + "' --token='" + token + "' --insecure-skip-tls-verify=true " + "create -f " + current_rc_path kubenete_svc = "kubectl --server='" + server_url + "' --token='" + token + "' --insecure-skip-tls-verify=true " + "create -f " + current_svc_path Open3.popen3(kubenete_rc) Open3.popen3(kubenete_svc) From 620b808c9a9182fdd78d91420bd96b2e02191a95 Mon Sep 17 00:00:00 2001 From: huang Date: Tue, 25 Jul 2017 09:37:23 +0800 Subject: [PATCH 004/206] =?UTF-8?q?k8s=E5=88=9B=E5=BB=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/kubernete_controller.rb | 6 +++++- app/views/kubernete/new.html.erb | 6 +++--- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/app/controllers/kubernete_controller.rb b/app/controllers/kubernete_controller.rb index 491180e3c..aec0bfa70 100644 --- a/app/controllers/kubernete_controller.rb +++ b/app/controllers/kubernete_controller.rb @@ -6,6 +6,7 @@ class KuberneteController < ApplicationController RC_PATH = "files/k8s/webssh/controller.yaml" SVC_PATH = "files/k8s/webssh/service.yaml" # YAML.load(File.open(rc_PATH)) + # REDO:销毁的时候文件一并要销毁 def exec_pod # 生成ymal文件 nod_name = params[:name] @@ -24,8 +25,11 @@ class KuberneteController < ApplicationController server_url = "https://106.75.96.108:6443" token = "c7dd73a7c86992fb" # 删除容器命令 - kubenete_rc = "ssh -t kubectl --server='" + server_url + "' --token='" + token + "' --insecure-skip-tls-verify=true " + "create -f " + current_rc_path + # 如果连接到其它服务器可以使用ssh -t + kubenete_rc = "kubectl --server='" + server_url + "' --token='" + token + "' --insecure-skip-tls-verify=true " + "create -f " + current_rc_path kubenete_svc = "kubectl --server='" + server_url + "' --token='" + token + "' --insecure-skip-tls-verify=true " + "create -f " + current_svc_path + logger.info("webss kubenete_rc is" + kubenete_rc) + logger.info("webss kubenete_svc is" + kubenete_svc) Open3.popen3(kubenete_rc) Open3.popen3(kubenete_svc) render :json => {:status => "good"} diff --git a/app/views/kubernete/new.html.erb b/app/views/kubernete/new.html.erb index 0c619695f..61ed7e545 100644 --- a/app/views/kubernete/new.html.erb +++ b/app/views/kubernete/new.html.erb @@ -2,9 +2,9 @@

K8S开启容器

    -
  • 创建容器名:<%= link_to "huang-01", {:controller => "kubernete", :action => "exec_pod", :name => 1} %>
  • -
  • 创建容器名:<%= link_to "huang-02", {:controller => "kubernete", :action => "exec_pod", :name => 2} %>
  • -
  • 创建容器名:<%= link_to "huang-03", {:controller => "kubernete", :action => "exec_pod", :name => 3} %>
  • +
  • 创建容器名:<%= link_to "huang-01", {:controller => "kubernete", :action => "exec_pod", :name => 1, :type => "webssh"} %>
  • +
  • 创建容器名:<%= link_to "huang-02", {:controller => "kubernete", :action => "exec_pod", :name => 2, :type => "webssh"} %>
  • +
  • 创建容器名:<%= link_to "huang-03", {:controller => "kubernete", :action => "exec_pod", :name => 3, :type => "webssh"} %>
From 1ab40329df7916c5d4aca3ed4caa30ca02bd30cb Mon Sep 17 00:00:00 2001 From: huang Date: Tue, 25 Jul 2017 11:01:53 +0800 Subject: [PATCH 005/206] =?UTF-8?q?kubernetes=E5=88=9B=E5=BB=BA=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E6=97=A5=E5=BF=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/kubernete_controller.rb | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/app/controllers/kubernete_controller.rb b/app/controllers/kubernete_controller.rb index aec0bfa70..671e72e8e 100644 --- a/app/controllers/kubernete_controller.rb +++ b/app/controllers/kubernete_controller.rb @@ -30,8 +30,10 @@ class KuberneteController < ApplicationController kubenete_svc = "kubectl --server='" + server_url + "' --token='" + token + "' --insecure-skip-tls-verify=true " + "create -f " + current_svc_path logger.info("webss kubenete_rc is" + kubenete_rc) logger.info("webss kubenete_svc is" + kubenete_svc) - Open3.popen3(kubenete_rc) - Open3.popen3(kubenete_svc) + logger_rc = Open3.popen3(kubenete_rc) + logger.info("Open3 result is ###"+ logger_rc) + logger_svc = Open3.popen3(kubenete_svc) + logger.info("Open3 result is ###"+ logger_svc) render :json => {:status => "good"} end From 2de5f98289e072e29b14bcb42908f76e45eeecdb Mon Sep 17 00:00:00 2001 From: huang Date: Tue, 25 Jul 2017 11:20:08 +0800 Subject: [PATCH 006/206] =?UTF-8?q?k8s=E6=B7=BB=E5=8A=A0=E6=97=A5=E5=BF=97?= =?UTF-8?q?=E8=B0=83=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/kubernete_controller.rb | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/app/controllers/kubernete_controller.rb b/app/controllers/kubernete_controller.rb index 671e72e8e..8220f20f7 100644 --- a/app/controllers/kubernete_controller.rb +++ b/app/controllers/kubernete_controller.rb @@ -30,10 +30,10 @@ class KuberneteController < ApplicationController kubenete_svc = "kubectl --server='" + server_url + "' --token='" + token + "' --insecure-skip-tls-verify=true " + "create -f " + current_svc_path logger.info("webss kubenete_rc is" + kubenete_rc) logger.info("webss kubenete_svc is" + kubenete_svc) - logger_rc = Open3.popen3(kubenete_rc) - logger.info("Open3 result is ###"+ logger_rc) - logger_svc = Open3.popen3(kubenete_svc) - logger.info("Open3 result is ###"+ logger_svc) + stdin, stdout, stderr = Open3.popen3(kubenete_rc) + logger.info("Open3 result is ###"+ stdout.gets) + stdin2, stdout2, stderr2 = Open3.popen3(kubenete_svc) + logger.info("Open3 result is ###"+ stdout2.gets) render :json => {:status => "good"} end From 3ea080664288a7158d7e4afdef4272215d5f4fdb Mon Sep 17 00:00:00 2001 From: huang Date: Tue, 25 Jul 2017 16:18:14 +0800 Subject: [PATCH 007/206] =?UTF-8?q?k8s=E5=BB=B6=E6=97=B6=E6=8F=90=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/kubernete_controller.rb | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/app/controllers/kubernete_controller.rb b/app/controllers/kubernete_controller.rb index 8220f20f7..77a1bf0a6 100644 --- a/app/controllers/kubernete_controller.rb +++ b/app/controllers/kubernete_controller.rb @@ -30,6 +30,8 @@ class KuberneteController < ApplicationController kubenete_svc = "kubectl --server='" + server_url + "' --token='" + token + "' --insecure-skip-tls-verify=true " + "create -f " + current_svc_path logger.info("webss kubenete_rc is" + kubenete_rc) logger.info("webss kubenete_svc is" + kubenete_svc) + # stdin, stdout, stderr, wait_thr = Open3.popen3([env,] cmd... [, opts]) + # 可以多少秒以后执行 stdin, stdout, stderr = Open3.popen3(kubenete_rc) logger.info("Open3 result is ###"+ stdout.gets) stdin2, stdout2, stderr2 = Open3.popen3(kubenete_svc) @@ -37,6 +39,8 @@ class KuberneteController < ApplicationController render :json => {:status => "good"} end + + def new end From 9df9a4118f4777ff7352a631f6339af90a279d33 Mon Sep 17 00:00:00 2001 From: huang Date: Wed, 26 Jul 2017 20:13:42 +0800 Subject: [PATCH 008/206] =?UTF-8?q?k8s=E4=B8=80=E4=BA=9B=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/kubernete_controller.rb | 7 ++++++- app/views/kubernete/exec_container.jsl.erb | 0 app/views/kubernete/new.html.erb | 4 ++-- config/routes.rb | 1 + 4 files changed, 9 insertions(+), 3 deletions(-) create mode 100644 app/views/kubernete/exec_container.jsl.erb diff --git a/app/controllers/kubernete_controller.rb b/app/controllers/kubernete_controller.rb index 77a1bf0a6..5bc423fc8 100644 --- a/app/controllers/kubernete_controller.rb +++ b/app/controllers/kubernete_controller.rb @@ -39,7 +39,12 @@ class KuberneteController < ApplicationController render :json => {:status => "good"} end - + # 控制container,包括克隆代码/执行文件 + def exec_container + # kubectl exec webssh-master1-gn1ww -c webssh python -v + + format.js + end def new end diff --git a/app/views/kubernete/exec_container.jsl.erb b/app/views/kubernete/exec_container.jsl.erb new file mode 100644 index 000000000..e69de29bb diff --git a/app/views/kubernete/new.html.erb b/app/views/kubernete/new.html.erb index 61ed7e545..cfa4cd700 100644 --- a/app/views/kubernete/new.html.erb +++ b/app/views/kubernete/new.html.erb @@ -2,8 +2,8 @@

K8S开启容器

    -
  • 创建容器名:<%= link_to "huang-01", {:controller => "kubernete", :action => "exec_pod", :name => 1, :type => "webssh"} %>
  • -
  • 创建容器名:<%= link_to "huang-02", {:controller => "kubernete", :action => "exec_pod", :name => 2, :type => "webssh"} %>
  • +
  • 创建webssh容器名:<%= link_to "huang-01", {:controller => "kubernete", :action => "exec_pod", :name => 1, :type => "webssh"} %>
  • +
  • 创建jdk容器名:<%= link_to "huang-02", {:controller => "kubernete", :action => "exec_pod", :name => 2, :type => "jdk"} %>
  • 创建容器名:<%= link_to "huang-03", {:controller => "kubernete", :action => "exec_pod", :name => 3, :type => "webssh"} %>
diff --git a/config/routes.rb b/config/routes.rb index c05650a5f..8bc7ea0c1 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -31,6 +31,7 @@ RedmineApp::Application.routes.draw do resources :kubernete do collection do get 'exec_pod' + get 'exec_container' end end From 115125b2c933d5e3dd85f843c379d7cc531d7061 Mon Sep 17 00:00:00 2001 From: huang Date: Fri, 28 Jul 2017 09:56:06 +0800 Subject: [PATCH 009/206] k8s --- .idea/dataSources.xml | 12 ++++++------ app/controllers/kubernete_controller.rb | 16 +++++++++------- 2 files changed, 15 insertions(+), 13 deletions(-) diff --git a/.idea/dataSources.xml b/.idea/dataSources.xml index 37b752e8c..934f79cf7 100644 --- a/.idea/dataSources.xml +++ b/.idea/dataSources.xml @@ -28,25 +28,25 @@ mysql com.mysql.jdbc.Driver - jdbc:mysql://127.0.0.1/trustie + jdbc:mysql://127.0.0.1/0604new root - dfcbdfc6dfcbdfc4dfc6dfc5dfc4dfcd + df9bdf98df99df9e mysql com.mysql.jdbc.Driver - jdbc:mysql://127.0.0.1/trustie + jdbc:mysql://127.0.0.1/20161227data root - dfcbdfc6dfcbdfc4dfc6dfc5dfc4dfcd + df9bdf98df99df9e mysql com.mysql.jdbc.Driver - jdbc:mysql://127.0.0.1/trustie + jdbc:mysql://127.0.0.1/0623newblank root - dfcbdfc6dfcbdfc4dfc6dfc5dfc4dfcd + df9bdf98df99df9e diff --git a/app/controllers/kubernete_controller.rb b/app/controllers/kubernete_controller.rb index 5bc423fc8..84575841d 100644 --- a/app/controllers/kubernete_controller.rb +++ b/app/controllers/kubernete_controller.rb @@ -1,10 +1,11 @@ class KuberneteController < ApplicationController - require 'open3' layout "base_edu" RC_PATH = "files/k8s/webssh/controller.yaml" SVC_PATH = "files/k8s/webssh/service.yaml" + SERVER_URL = "https://106.75.96.108:6443" + TOKEN = "c7dd73a7c86992fb" # YAML.load(File.open(rc_PATH)) # REDO:销毁的时候文件一并要销毁 def exec_pod @@ -22,12 +23,10 @@ class KuberneteController < ApplicationController open(current_rc_path, 'w') { |f| YAML.dump(rc, f) } open(current_svc_path, 'w') { |f| YAML.dump(svc, f) } # 启动容器 - server_url = "https://106.75.96.108:6443" - token = "c7dd73a7c86992fb" # 删除容器命令 # 如果连接到其它服务器可以使用ssh -t - kubenete_rc = "kubectl --server='" + server_url + "' --token='" + token + "' --insecure-skip-tls-verify=true " + "create -f " + current_rc_path - kubenete_svc = "kubectl --server='" + server_url + "' --token='" + token + "' --insecure-skip-tls-verify=true " + "create -f " + current_svc_path + kubenete_rc = "kubectl --server='" + SERVER_URL + "' --token='" + TOKEN + "' --insecure-skip-tls-verify=true " + "create -f " + current_rc_path + kubenete_svc = "kubectl --server='" + SERVER_URL + "' --token='" + TOKEN + "' --insecure-skip-tls-verify=true " + "create -f " + current_svc_path logger.info("webss kubenete_rc is" + kubenete_rc) logger.info("webss kubenete_svc is" + kubenete_svc) # stdin, stdout, stderr, wait_thr = Open3.popen3([env,] cmd... [, opts]) @@ -39,10 +38,13 @@ class KuberneteController < ApplicationController render :json => {:status => "good"} end - # 控制container,包括克隆代码/执行文件 def exec_container + pod_name = "webssh-master#{parmas[:myshixun_id]}" + git_url = # kubectl exec webssh-master1-gn1ww -c webssh python -v - + # webssh 容器中执行命令,克隆代码,注意代码存放位置 + git_clone = "kubectl --server='#{SERVER_URL}' --token='#{TOKEN}' --insecure-skip-tls-verify=true exec webssh-master1-gn1ww -c webssh clone #{git_url}" + stdin, stdout, stderr = Open3.popen3(git_clone) format.js end From f99121a353aaeb6d1512d2753675df0a36b08a76 Mon Sep 17 00:00:00 2001 From: XuCheng642 <287102909@qq.com> Date: Fri, 28 Jul 2017 17:01:42 +0800 Subject: [PATCH 010/206] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=8D=95=E4=BD=8D?= =?UTF-8?q?=E5=88=97=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/managements_controller.rb | 27 ++++++++++++----------- app/views/school/upload_logo.html.erb | 20 ++++++++--------- app/views/shixuns/_shixun_yx.html | 2 +- config/routes.rb | 5 ++++- 4 files changed, 29 insertions(+), 25 deletions(-) diff --git a/app/controllers/managements_controller.rb b/app/controllers/managements_controller.rb index f0cb3aacd..37539b09c 100644 --- a/app/controllers/managements_controller.rb +++ b/app/controllers/managements_controller.rb @@ -145,23 +145,22 @@ class ManagementsController < ApplicationController @menu_type = 2 @sub_type = 1 @syllabus = Syllabus.where("0=0") - @sx_order = params[:sx_order].blank? ? "desc" : params[:sx_order] unless params[:school_id] || params[:search] || params[:keyword] || params[:status] - user_exs=UserExtensions.where(:user_id=> @syllabus.map(&:user_id)) + user_exs = UserExtensions.where(:user_id=> @syllabus.map(&:user_id)) @schools = School.where(:id =>user_exs.map(&:school_id)) end - major_level_option=params[:major_level_option] - discipline_category_option=params[:discipline_category_option] - first_level_discipline_option=params[:first_level_discipline_option] - syllabus_major_option=params[:syllabus_major_option] - keyword=params[:keyword] - search=params[:search] + major_level_option = params[:major_level_option] + discipline_category_option = params[:discipline_category_option] + first_level_discipline_option = params[:first_level_discipline_option] + syllabus_major_option = params[:syllabus_major_option] + keyword = params[:keyword] + search = params[:search] if major_level_option!='0' - @syllabus=@syllabus.where(:major_level=>major_level_option) + @syllabus = @syllabus.where(:major_level=>major_level_option) else - @syllabus=@syllabus + @syllabus = @syllabus end if discipline_category_option !=nil @@ -183,15 +182,16 @@ class ManagementsController < ApplicationController end if search.blank? - @syllabus = @syllabus + @syllabus = @syllabus.where("0=0") else if "u_name" == keyword user_id = User.where("concat(lastname, firstname) like '%#{search}%'") @syllabus = @syllabus.includes(:user).where("concat(users.lastname, users.firstname) like '%#{search}%'") else - @syllabus= @syllabus.where("user_id like '%#{search}%'") + @syllabus= @syllabus.where("title like '%#{search}%'") end end + @syllabus = @syllabus.order("created_at #{@sx_order}") @syllabus_count = @syllabus.count limit = 20 @is_remote = true @@ -199,8 +199,8 @@ class ManagementsController < ApplicationController @offset ||= @syllabus_pages.offset @syllabus = paginateHelper @syllabus, limit respond_to do |format| - format.html format.js + format.html end end @@ -239,6 +239,7 @@ class ManagementsController < ApplicationController @courses= @courses.where("name like '%#{search}%'").order("created_at #{@sx_order}") end @courses = @courses.select("courses.*,(SELECT MAX(updated_at) FROM `course_activities` WHERE course_activities.course_id = courses.id) AS updatetime").reorder("updatetime desc") + @courses = @courses.order("created_at #{@sx_order}") @courses_count = @courses.count limit = 20 @is_remote = true diff --git a/app/views/school/upload_logo.html.erb b/app/views/school/upload_logo.html.erb index 11e23c22c..cab1cb861 100644 --- a/app/views/school/upload_logo.html.erb +++ b/app/views/school/upload_logo.html.erb @@ -11,18 +11,18 @@ function showPreview(source) { } -<%= form_tag(upload_school_path(@school.id),method: "post", multipart: true,:id => "school_form") do %> +<%= form_tag(upload_school_path(@school.id),method: "post", multipart: true,:id => "school_form",:class=>"mt50 ml35") do %> <%#= text_field_tag 'school'%> -
- +
+ <%= image_tag(@school.logo_link, id: "avatar_image", :class=>"school_avatar")%> - 上传图片 + 上传图片 <%= file_field_tag 'logo',:style => "display:none;", :id => "file", :onchange => "showPreview(this)"%>
-
学校名称:
+
学校名称:
学校省份: - + @@ -60,9 +60,9 @@ function showPreview(source) {
-
- - +
+ 提交 + 取消 <%#= submit_tag('提交',:class=>'mr5') %> <%#= submit_tag('取消') %>
diff --git a/app/views/shixuns/_shixun_yx.html b/app/views/shixuns/_shixun_yx.html index 88478f5e8..39aef80e2 100644 --- a/app/views/shixuns/_shixun_yx.html +++ b/app/views/shixuns/_shixun_yx.html @@ -6,7 +6,7 @@ - + diff --git a/config/routes.rb b/config/routes.rb index 275207c83..22b1ec281 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -378,6 +378,7 @@ RedmineApp::Application.routes.draw do collection do get 'apply_add_school' get 'search_repeat_schoolname' + get 'upload_logo' end member do @@ -1785,7 +1786,9 @@ RedmineApp::Application.routes.draw do #######confusing######## get 'welcome/search', to: 'welcome#search' get 'school/index', to: 'school#index' - get 'school/:school_id', to: 'welcome#course', :as => 'school_course_list' + get 'school/:school_id', to: + + 'welcome#course', :as => 'school_course_list' post 'school/get_options/:province', :to => 'school#get_options' get 'school/get_options/:province', :to => 'school#get_options' From ca20c827f658d3dc1514dff8acb9338b7db2a77c Mon Sep 17 00:00:00 2001 From: XuCheng642 <287102909@qq.com> Date: Mon, 31 Jul 2017 17:41:42 +0800 Subject: [PATCH 011/206] =?UTF-8?q?=E8=B6=85=E7=BA=A7=E7=AE=A1=E7=90=86?= =?UTF-8?q?=E5=91=98=E9=A1=B5=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/managements_controller.rb | 3 +- app/helpers/managements_helper.rb | 49 +++++++++++-------- app/models/shixun_major_course.rb | 12 ++--- .../_applicable_course_list.html.erb | 27 +++++++--- .../_classroom_classment_list.html.erb | 4 +- .../managements/_classroom_list.html.erb | 4 +- app/views/managements/classroom.html.erb | 4 +- .../managements/classroom_classment.html.erb | 4 +- .../identity_authentication.html.erb | 24 ++++----- app/views/school/upload_logo.html.erb | 8 +-- 10 files changed, 81 insertions(+), 58 deletions(-) diff --git a/app/controllers/managements_controller.rb b/app/controllers/managements_controller.rb index 37539b09c..5ff3498e0 100644 --- a/app/controllers/managements_controller.rb +++ b/app/controllers/managements_controller.rb @@ -43,9 +43,10 @@ class ManagementsController < ApplicationController # 实训适用课程 def applicable_course - @majorcourse=MajorCourse.where("0=0") + @courselist = CourseList.find_by_sql("SELECT id, name as name FROM `course_lists` where id in (SELECT id FROM `major_courses`);") end + # 单位部门列表 def departments @menu_type = 6 diff --git a/app/helpers/managements_helper.rb b/app/helpers/managements_helper.rb index c1dac27f6..811e2a78c 100644 --- a/app/helpers/managements_helper.rb +++ b/app/helpers/managements_helper.rb @@ -1,20 +1,29 @@ -module ManagementsHelper - - def trial_authorization_status status - case status - when "0", nil - 0 - when "1" - 1 - when "2" - 2 - else - [1,2] - end - end - - def query_user_status_num status - user = (status == 0) ? user = User.all : User.where(:status => status) - return user.count - end -end +module ManagementsHelper + + def trial_authorization_status status + case status + when "0", nil + 0 + when "1" + 1 + when "2" + 2 + else + [1,2] + end + end + + def query_user_status_num status + user = (status == 0) ? user = User.all : User.where(:status => status) + return user.count + end + + def course_list_major_time id + Major.where(:id => id).first.try(:name) + end + + # params[:id]: course_list_id + def get_course_list_major id + ShixunMajorCourse.where(:course_list_id => id) + end +end diff --git a/app/models/shixun_major_course.rb b/app/models/shixun_major_course.rb index 7d288ecf0..83305a09b 100644 --- a/app/models/shixun_major_course.rb +++ b/app/models/shixun_major_course.rb @@ -1,6 +1,6 @@ -class ShixunMajorCourse < ActiveRecord::Base - belongs_to :shixun - belongs_to :major - belongs_to :course_list - #attr_accessible :course_list -end +class ShixunMajorCourse < ActiveRecord::Base + belongs_to :shixun + belongs_to :major + belongs_to :course_list + #attr_accessible :course_list +end diff --git a/app/views/managements/_applicable_course_list.html.erb b/app/views/managements/_applicable_course_list.html.erb index b69b84f6e..0bb2206a8 100644 --- a/app/views/managements/_applicable_course_list.html.erb +++ b/app/views/managements/_applicable_course_list.html.erb @@ -9,13 +9,26 @@ - <% @majorcourse.each_with_index do |majorcourse,index|%> - - <%= majorcourse.course_list_id%> - - - - + <% @courselist.each_with_index do |courselist,index|%> + + <%= index + 1 %> + + <%= courselist.name %> + + + <% get_course_list_major(courselist.id).each do |smc| %> + <%= course_list_major_time(smc.major_id) %> + <%= format_time smc.created_at %> + <% end %> + + + <%# get_course_list_major(courselist.id).each do |smc| %> + <%#= course_list_major_time(smc.major_id) %> + <%#= format_time smc.created_at %> + <%# end %> + + + <% end %> diff --git a/app/views/managements/_classroom_classment_list.html.erb b/app/views/managements/_classroom_classment_list.html.erb index 88c237bfb..68f789e50 100644 --- a/app/views/managements/_classroom_classment_list.html.erb +++ b/app/views/managements/_classroom_classment_list.html.erb @@ -32,8 +32,8 @@ <%= link_to course.teacher.show_name, user_path(course.teacher) %> <%= format_time(course.updatetime) %> - - + + <% end %> diff --git a/app/views/managements/_classroom_list.html.erb b/app/views/managements/_classroom_list.html.erb index 57467d02f..de34f4b14 100644 --- a/app/views/managements/_classroom_list.html.erb +++ b/app/views/managements/_classroom_list.html.erb @@ -24,8 +24,8 @@ <%= link_to syllabus.user.show_name, user_path(syllabus.user) %> <%= format_time syllabus.created_at %> - - + + <% end %> diff --git a/app/views/managements/classroom.html.erb b/app/views/managements/classroom.html.erb index 9d53671f2..45858896c 100644 --- a/app/views/managements/classroom.html.erb +++ b/app/views/managements/classroom.html.erb @@ -15,8 +15,8 @@ - - + + 搜索 diff --git a/app/views/managements/classroom_classment.html.erb b/app/views/managements/classroom_classment.html.erb index 1793a5420..fda65b3df 100644 --- a/app/views/managements/classroom_classment.html.erb +++ b/app/views/managements/classroom_classment.html.erb @@ -19,8 +19,8 @@ 搜索 清除 - - + +
<% end%> diff --git a/app/views/managements/identity_authentication.html.erb b/app/views/managements/identity_authentication.html.erb index 2bacddd95..d96fba6ab 100644 --- a/app/views/managements/identity_authentication.html.erb +++ b/app/views/managements/identity_authentication.html.erb @@ -1,17 +1,17 @@
- - - - - - - - - - - +
+ +
    +
  • + <%= link_to "身份认证", {:controller => "managements", :action => "", :type => 0}, :class => "tab_type", :remote => true %> +
  • +
  • + <%= link_to "职业认证", {:controller => "managements", :action => "", :type => 0}, :class => "tab_type", :remote => true %> +
  • +
+
- +
diff --git a/app/views/school/upload_logo.html.erb b/app/views/school/upload_logo.html.erb index cab1cb861..735571ed6 100644 --- a/app/views/school/upload_logo.html.erb +++ b/app/views/school/upload_logo.html.erb @@ -15,13 +15,13 @@ function showPreview(source) { <%#= text_field_tag 'school'%>
- <%= image_tag(@school.logo_link, id: "avatar_image", :class=>"school_avatar")%> - 上传图片 + <%= image_tag(@school.logo_link, id: "avatar_image", :class=>"school_avatar ml25")%> + 上传图片 <%= file_field_tag 'logo',:style => "display:none;", :id => "file", :onchange => "showPreview(this)"%>
学校名称:
学校省份: - @@ -43,7 +43,7 @@ function showPreview(source) { - + From 357b28aa130580059bcad2d4085c6d470ae6811f Mon Sep 17 00:00:00 2001 From: huang Date: Fri, 4 Aug 2017 09:16:55 +0800 Subject: [PATCH 012/206] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=90=AF=E5=8A=A8?= =?UTF-8?q?=E7=9A=84=E6=97=B6=E5=80=99=E8=B7=AF=E7=94=B1=E8=8E=AB=E5=90=8D?= =?UTF-8?q?=E8=B5=B0=E7=BB=84=E7=BB=87=E5=9F=9F=E5=90=8D=E7=9A=84=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/routes.rb | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/config/routes.rb b/config/routes.rb index 8560cc3a0..af1add892 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -185,13 +185,13 @@ RedmineApp::Application.routes.draw do # Enable Grack support # mount Trustie::Grack.new, at: '/', constraints: lambda { |request| /[-\/\w\.]+\.git\//.match(request.path_info) }, via: [:get, :post] - constraints(Subdomain.new) do - get '/', to: 'organizations#show' - end - - constraints(Subdomain.new(sub: true)) do - get '/:sub_dir_name', to: 'fake#fake' - end + # constraints(Subdomain.new) do + # get '/', to: 'organizations#show' + # end + # + # constraints(Subdomain.new(sub: true)) do + # get '/:sub_dir_name', to: 'fake#fake' + # end resources :shield_wechat_messages do collection do From 04c142698fe272a7c31bcb4c47f1b5814c0e9372 Mon Sep 17 00:00:00 2001 From: huang Date: Fri, 4 Aug 2017 14:19:22 +0800 Subject: [PATCH 013/206] =?UTF-8?q?kubernetes=E6=96=B0=E6=9E=B6=E6=9E=84?= =?UTF-8?q?=E4=B8=8B=E7=9A=84=E4=B8=80=E4=BA=9B=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/games_controller.rb | 8 ++++---- app/controllers/myshixuns_controller.rb | 12 ++++++------ app/controllers/shixuns_controller.rb | 8 ++++---- app/helpers/application_helper.rb | 4 ++-- 4 files changed, 16 insertions(+), 16 deletions(-) diff --git a/app/controllers/games_controller.rb b/app/controllers/games_controller.rb index d08e976bf..0be7c66c1 100644 --- a/app/controllers/games_controller.rb +++ b/app/controllers/games_controller.rb @@ -174,11 +174,11 @@ class GamesController < ApplicationController modifyStatus = 1 gameInfo = shixun.gameInfo end - jenkins_shixuns = Redmine::Configuration['jenkins_shixuns'] + shixun_tomcat = Redmine::Configuration['shixun_tomcat'] step = game_challenge.try(:position) # 注意:这个地方的参数写的时候不能换行 params = {:jobNameForInstance => "#{jobName}", :buildID => "#{taskId}", :instanceGitURL => "#{gitUrl}", :instanceChallenge => "#{step}", :resubmit => resubmit, :modifyStatus => "#{modifyStatus}", :gameInfo => "#{gameInfo}"} - uri = URI("#{jenkins_shixuns}/jenkins-exec/api/buildJobForInstance") + uri = URI("#{shixun_tomcat}/bridge/game/buildJobForInstance") res = uri_exec uri, params logger.info("#####################buildJobForInstance result is #{res}") logger.info("#####################buildJobForInstance params is #{params}") @@ -313,9 +313,9 @@ class GamesController < ApplicationController # 如果该方法异常则直接返回0,跳过等待 def waiting_info begin - jenkins_shixuns = Redmine::Configuration['jenkins_shixuns'] + shixun_tomcat = Redmine::Configuration['shixun_tomcat'] params = {:buildID => "#{@game.id}"} - uri = URI("#{jenkins_shixuns}/jenkins-exec/api/getWaitingTime") + uri = URI("#{shixun_tomcat}/jenkins-exec/api/getWaitingTime") res = uri_exec uri, params if (res && res['code'] != 0) raise("获取等待任务数异常") diff --git a/app/controllers/myshixuns_controller.rb b/app/controllers/myshixuns_controller.rb index e69e9fd9f..b444ee134 100644 --- a/app/controllers/myshixuns_controller.rb +++ b/app/controllers/myshixuns_controller.rb @@ -24,8 +24,8 @@ class MyshixunsController < ApplicationController username = Redmine::Configuration['webssh_username'] password = Redmine::Configuration['webssh_password'] begin - jenkins_shixuns = Redmine::Configuration['jenkins_shixuns'] - uri = URI("#{jenkins_shixuns}/jenkins-exec/webssh/getConnectInfo") + shixun_tomcat = Redmine::Configuration['shixun_tomcat'] + uri = URI("#{shixun_tomcat}/jenkins-exec/webssh/getConnectInfo") user_id = User.current.id params = {gameID:@myshixun.id, operationEnvironment:@myshixun.shixun.try(:language)} res = uri_exec uri, params @@ -45,8 +45,8 @@ class MyshixunsController < ApplicationController username = Redmine::Configuration['webssh_username'] password = Redmine::Configuration['webssh_password'] begin - jenkins_shixuns = Redmine::Configuration['jenkins_shixuns'] - uri = URI("#{jenkins_shixuns}/jenkins-exec/webssh/deleteSSH") + shixun_tomcat = Redmine::Configuration['shixun_tomcat'] + uri = URI("#{shixun_tomcat}/jenkins-exec/webssh/deleteSSH") user_id = User.current.id logger.info("#############################") logger.info("game_id:" + @_params[:id]) @@ -67,7 +67,7 @@ class MyshixunsController < ApplicationController ActiveRecord::Base.transaction do begin g = Gitlab.client - jenkins_shixuns = Redmine::Configuration['jenkins_shixuns'] + shixun_tomcat = Redmine::Configuration['shixun_tomcat'] shixun = @myshixun.shixun myshixun_job = Base64.encode64("myshixun_#{@myshixun.id}") StudentWork.where(:myshixun_id => @myshixun.id).update_all(:myshixun_id => nil, :work_status => 0) @@ -85,7 +85,7 @@ class MyshixunsController < ApplicationController end # job的删除放异步里面处理 # params = {:jobName => "#{myshixun_job}"} - # uri = URI("#{jenkins_shixuns}/jenkins-exec/game/deleteJob") + # uri = URI("#{shixun_tomcat}/jenkins-exec/game/deleteJob") # res = uri_exec uri, params # if res && res['code'].to_i != 0 && res['code'].to_i != 1 # raise("实训云平台繁忙(繁忙等级:89)") diff --git a/app/controllers/shixuns_controller.rb b/app/controllers/shixuns_controller.rb index eab591a15..16d962b08 100644 --- a/app/controllers/shixuns_controller.rb +++ b/app/controllers/shixuns_controller.rb @@ -235,10 +235,10 @@ class ShixunsController < ApplicationController # jenkins回调脚本 # gameID 及实训ID def publish - jenkins_shixuns = Redmine::Configuration['jenkins_shixuns'] + shixun_tomcat = Redmine::Configuration['shixun_tomcat'] begin gameInfo = @shixun.gameInfo - uri = URI("#{jenkins_shixuns}/jenkins-exec/game/publishGame") + uri = URI("#{shixun_tomcat}/bridge/game/publishGame") logger.info(gameInfo) params = {gameInfo:gameInfo} logger.info(params) @@ -609,7 +609,7 @@ class ShixunsController < ApplicationController myshixun.shixun_id = shixun.id myshixun.user_id = User.current.id myshixun.gpid = gshixun.id - jenkins_shixuns = Redmine::Configuration['jenkins_shixuns'] + shixun_tomcat = Redmine::Configuration['shixun_tomcat'] if myshixun.save! code = CODES.sample(10).join code = CODES.sample(10).join if Myshixun.where(identifier: code).present? @@ -620,7 +620,7 @@ class ShixunsController < ApplicationController rep.save! login = User.find_by_mail("educoder@163.com").try(:login) rep_url = Base64.encode64(git_shixun_url_ip shixun, login) - uri = URI("#{jenkins_shixuns}/jenkins-exec/game/openGameInstance") + uri = URI("#{shixun_tomcat}/bridge/game/openGameInstance") pipeLine = "#{shixun.script}" params = {jobNameForInstance: "myshixun_#{myshixun.id}", gameInfo: shixun.gameInfo, instanceGitURL:rep_url} logger.info("openGameInstance params is #{params}") diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb index 3adf2cc17..5cfacceb8 100644 --- a/app/helpers/application_helper.rb +++ b/app/helpers/application_helper.rb @@ -48,9 +48,9 @@ module ApplicationHelper # type 0:表示已经是最新的了;1:表示已经有修改 # 功能:1、产生变更记录;2、生成pipeline脚本 def add_shixun_modify_status shixun, type - jenkins_shixuns = Redmine::Configuration['jenkins_shixuns'] + shixun_tomcat = Redmine::Configuration['shixun_tomcat'] gameInfo = shixun.gameInfo - uri = URI("#{jenkins_shixuns}/jenkins-exec/game/publishGame") + uri = URI("#{shixun_tomcat}/bridge/game/publishGame") params = {gameInfo:gameInfo} res = uri_exec uri, params if res && res['code'].to_i != 0 From 8a6a1694343d58dc55da29b2f18bba8be29ed5c6 Mon Sep 17 00:00:00 2001 From: huang Date: Fri, 4 Aug 2017 21:34:37 +0800 Subject: [PATCH 014/206] =?UTF-8?q?=E8=AF=84=E6=B5=8B=E7=9A=84=E6=97=B6?= =?UTF-8?q?=E5=80=99=E6=B7=BB=E5=8A=A0gameInfo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/games_controller.rb | 1 + 1 file changed, 1 insertion(+) diff --git a/app/controllers/games_controller.rb b/app/controllers/games_controller.rb index f0f576017..5676def69 100644 --- a/app/controllers/games_controller.rb +++ b/app/controllers/games_controller.rb @@ -177,6 +177,7 @@ class GamesController < ApplicationController modifyStatus = 1 gameInfo = shixun.gameInfo end + gameInfo = shixun.gameInfo shixun_tomcat = Redmine::Configuration['shixun_tomcat'] step = game_challenge.try(:position) # 注意:这个地方的参数写的时候不能换行 From da60bb87bcbfcf099f720ee23a4d397afad9f297 Mon Sep 17 00:00:00 2001 From: huang Date: Fri, 4 Aug 2017 22:02:20 +0800 Subject: [PATCH 015/206] =?UTF-8?q?=E5=BC=80=E5=90=AF=E5=AE=9E=E8=AE=AD?= =?UTF-8?q?=E7=9A=84=E6=97=B6=E5=80=99git=E5=9C=B0=E5=9D=80=E4=BC=A0?= =?UTF-8?q?=E9=80=81tpi=E7=9A=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/shixuns_controller.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/controllers/shixuns_controller.rb b/app/controllers/shixuns_controller.rb index 16d962b08..8df09ca82 100644 --- a/app/controllers/shixuns_controller.rb +++ b/app/controllers/shixuns_controller.rb @@ -619,7 +619,7 @@ class ShixunsController < ApplicationController rep.type = "Repository::Gitlab" rep.save! login = User.find_by_mail("educoder@163.com").try(:login) - rep_url = Base64.encode64(git_shixun_url_ip shixun, login) + rep_url = Base64.encode64(git_myshixun_url_ip(myshixun, myshixun.try(:user_id))) uri = URI("#{shixun_tomcat}/bridge/game/openGameInstance") pipeLine = "#{shixun.script}" params = {jobNameForInstance: "myshixun_#{myshixun.id}", gameInfo: shixun.gameInfo, instanceGitURL:rep_url} From 07ac46e725274fd3a6dc89cc6a0f99d234140a67 Mon Sep 17 00:00:00 2001 From: huang Date: Fri, 4 Aug 2017 22:22:36 +0800 Subject: [PATCH 016/206] =?UTF-8?q?=E7=BC=96=E7=A0=81=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/myshixuns_controller.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/controllers/myshixuns_controller.rb b/app/controllers/myshixuns_controller.rb index b444ee134..cc4d0beda 100644 --- a/app/controllers/myshixuns_controller.rb +++ b/app/controllers/myshixuns_controller.rb @@ -114,14 +114,14 @@ class MyshixunsController < ApplicationController status = jsonTestDetails['status'] game_id = jsonTestDetails['buildID'] resubmit = jsonTestDetails['resubmit'] - outPut = Base64.urlsafe_decode64(jsonTestDetails['outPut'].strip().gsub(" ", "+")).force_encoding("utf-8") unless jsonTestDetails['outPut'].blank? + outPut = Base64.decode64(jsonTestDetails['outPut']).force_encoding("utf-8") unless jsonTestDetails['outPut'].blank? jenkins_testsets = jsonTestDetails['msg'] # message = Base64.decode64(params[:msg]) unless params[:msg].blank? game = Game.find(game_id) challenge = game.challenge unless jenkins_testsets.blank? jenkins_testsets.each do |j_test_set| - actual_output = Base64.urlsafe_decode64(j_test_set['output'].gsub(" ", "+")).force_encoding("utf-8") unless j_test_set['output'].blank? + actual_output = Base64.decode64(j_test_set['output']).force_encoding("utf-8") unless j_test_set['output'].blank? output = Output.where(:game_id => game.id, :test_set_position => j_test_set['caseId'].to_i).first logger.info("#############{outPut}") if output.nil? From b5fe488328fee060fd24c8056dd64cff23d966c5 Mon Sep 17 00:00:00 2001 From: huang Date: Sun, 6 Aug 2017 10:48:09 +0800 Subject: [PATCH 017/206] =?UTF-8?q?=E5=85=8B=E9=9A=86=E7=9A=84=E6=97=B6?= =?UTF-8?q?=E5=80=99=E4=BD=BF=E7=94=A8TPM=E5=9C=B0=E5=9D=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/shixuns_controller.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/controllers/shixuns_controller.rb b/app/controllers/shixuns_controller.rb index 8df09ca82..16d962b08 100644 --- a/app/controllers/shixuns_controller.rb +++ b/app/controllers/shixuns_controller.rb @@ -619,7 +619,7 @@ class ShixunsController < ApplicationController rep.type = "Repository::Gitlab" rep.save! login = User.find_by_mail("educoder@163.com").try(:login) - rep_url = Base64.encode64(git_myshixun_url_ip(myshixun, myshixun.try(:user_id))) + rep_url = Base64.encode64(git_shixun_url_ip shixun, login) uri = URI("#{shixun_tomcat}/bridge/game/openGameInstance") pipeLine = "#{shixun.script}" params = {jobNameForInstance: "myshixun_#{myshixun.id}", gameInfo: shixun.gameInfo, instanceGitURL:rep_url} From 218d0502ac1b6edb18b995d02406376ed3238a92 Mon Sep 17 00:00:00 2001 From: caishi <1149225589@qq.com> Date: Sun, 6 Aug 2017 11:18:42 +0800 Subject: [PATCH 018/206] =?UTF-8?q?TPI=E9=80=89=E9=A1=B9=E5=8D=A1=E9=BB=98?= =?UTF-8?q?=E8=AE=A4=E9=80=89=E4=B8=AD=E7=9A=84=E5=AD=97=E4=BD=93=E9=A2=9C?= =?UTF-8?q?=E8=89=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/games/_choice_question.html.erb | 2 +- app/views/games/_game_show.html.erb | 2 +- public/stylesheets/css/edu-subject.css | 3 ++- public/stylesheets/css/taskstyle.css | 5 ++++- 4 files changed, 8 insertions(+), 4 deletions(-) diff --git a/app/views/games/_choice_question.html.erb b/app/views/games/_choice_question.html.erb index dec6a00d3..fe5ad93bd 100644 --- a/app/views/games/_choice_question.html.erb +++ b/app/views/games/_choice_question.html.erb @@ -15,7 +15,7 @@ 错误

<% @game_challenge.challenge_questions.each_with_index do |question, i| %> -
" onclick="choice_answer('<%= @st %>', this)"> +
" onclick="choice_answer('<%= @st %>', this)">
<%= (question.position + 65).chr %>. diff --git a/app/views/games/_game_show.html.erb b/app/views/games/_game_show.html.erb index dc63113b8..8bbebf031 100644 --- a/app/views/games/_game_show.html.erb +++ b/app/views/games/_game_show.html.erb @@ -63,7 +63,7 @@
-