summaryrefslogtreecommitdiff
path: root/app/controllers/admin
diff options
context:
space:
mode:
authorGrzegorz Bizon <grzesiek.bizon@gmail.com>2016-05-18 17:23:26 +0200
committerGrzegorz Bizon <grzesiek.bizon@gmail.com>2016-05-19 22:01:53 +0200
commit52ba3a2d05ab93caa5ddbc6207359e99301dda91 (patch)
tree93680c02c1a80f3265cf2f4b2202b344e7a35ba1 /app/controllers/admin
parentbf9cc351c28a349ca4c573978c869d2b90209d52 (diff)
downloadgitlab-ce-52ba3a2d05ab93caa5ddbc6207359e99301dda91.tar.gz
Display validation errors when admin edits a runner
Diffstat (limited to 'app/controllers/admin')
-rw-r--r--app/controllers/admin/runners_controller.rb26
1 files changed, 16 insertions, 10 deletions
diff --git a/app/controllers/admin/runners_controller.rb b/app/controllers/admin/runners_controller.rb
index 8b8a7320072..a164209455b 100644
--- a/app/controllers/admin/runners_controller.rb
+++ b/app/controllers/admin/runners_controller.rb
@@ -9,19 +9,13 @@ class Admin::RunnersController < Admin::ApplicationController
end
def show
- @builds = @runner.builds.order('id DESC').first(30)
- @projects =
- if params[:search].present?
- ::Project.search(params[:search])
- else
- Project.all
- end
- @projects = @projects.where.not(id: @runner.projects.select(:id)) if @runner.projects.any?
- @projects = @projects.page(params[:page]).per(30)
+ set_builds_and_projects
end
def update
- @runner.update_attributes(runner_params)
+ unless @runner.update_attributes(runner_params)
+ set_builds_and_projects and return render 'show'
+ end
respond_to do |format|
format.js
@@ -60,4 +54,16 @@ class Admin::RunnersController < Admin::ApplicationController
def runner_params
params.require(:runner).permit(Ci::Runner::FORM_EDITABLE)
end
+
+ def set_builds_and_projects
+ @builds = runner.builds.order('id DESC').first(30)
+ @projects =
+ if params[:search].present?
+ ::Project.search(params[:search])
+ else
+ Project.all
+ end
+ @projects = @projects.where.not(id: runner.projects.select(:id)) if runner.projects.any?
+ @projects = @projects.page(params[:page]).per(30)
+ end
end