Converted the views to partials that compose the menu item "pipelines"

This commit is contained in:
Jose Ivan Vargas 2017-01-03 17:57:55 -06:00
parent ee43dcd5d6
commit 58110293d4
12 changed files with 58 additions and 41 deletions

View File

@ -2,20 +2,13 @@ class Projects::PipelinesSettingsController < Projects::ApplicationController
before_action :authorize_admin_pipeline!
def show
@ref = params[:ref] || @project.default_branch || 'master'
@badges = [Gitlab::Badge::Build::Status,
Gitlab::Badge::Coverage::Report]
@badges.map! do |badge|
badge.new(@project, @ref).metadata
end
redirect_to namespace_project_settings_pipelines_path(@project.namespace, @project)
end
def update
if @project.update_attributes(update_params)
flash[:notice] = "CI/CD Pipelines settings for '#{@project.name}' were successfully updated."
redirect_to namespace_project_pipelines_settings_path(@project.namespace, @project)
redirect_to namespace_project_settings_pipelines_path(@project.namespace, @project)
else
render 'show'
end

View File

@ -5,11 +5,7 @@ class Projects::RunnersController < Projects::ApplicationController
layout 'project_settings'
def index
@project_runners = project.runners.ordered
@assignable_runners = current_user.ci_authorized_runners.
assignable_for(project).ordered.page(params[:page]).per(20)
@shared_runners = Ci::Runner.shared.active
@shared_runners_count = @shared_runners.count(:all)
redirect_to namespace_project_settings_pipelines_path(@project.namespace, @project)
end
def edit
@ -53,7 +49,7 @@ class Projects::RunnersController < Projects::ApplicationController
def toggle_shared_runners
project.toggle!(:shared_runners_enabled)
redirect_to namespace_project_runners_path(project.namespace, project)
redirect_to namespace_project_settings_pipelines_path(@project.namespace, @project)
end
protected

View File

@ -0,0 +1,30 @@
module Projects
module Settings
class PipelinesController < Projects::ApplicationController
before_action :authorize_admin_pipeline!
def show
# runners
@project_runners = @project.runners.ordered
@assignable_runners = current_user.ci_authorized_runners.
assignable_for(project).ordered.page(params[:page]).per(20)
@shared_runners = Ci::Runner.shared.active
@shared_runners_count = @shared_runners.count(:all)
# variables
@variable = Ci::Variable.new
# triggers
@triggers = @project.triggers
@trigger = Ci::Trigger.new
# pipelines
@ref = params[:ref] || @project.default_branch || 'master'
@badges = [Gitlab::Badge::Build::Status,
Gitlab::Badge::Coverage::Report]
@badges.map! do |badge|
badge.new(@project, @ref).metadata
end
end
end
end
end

View File

@ -4,8 +4,7 @@ class Projects::TriggersController < Projects::ApplicationController
layout 'project_settings'
def index
@triggers = project.triggers
@trigger = Ci::Trigger.new
redirect_to namespace_project_settings_pipelines_path(@project.namespace, @project)
end
def create
@ -13,7 +12,7 @@ class Projects::TriggersController < Projects::ApplicationController
@trigger.save
if @trigger.valid?
redirect_to namespace_project_triggers_path(@project.namespace, @project)
redirect_to namespace_project_settings_pipelines_path(@project.namespace, @project)
else
@triggers = project.triggers.select(&:persisted?)
render :index
@ -23,7 +22,7 @@ class Projects::TriggersController < Projects::ApplicationController
def destroy
trigger.destroy
redirect_to namespace_project_triggers_path(@project.namespace, @project)
redirect_to namespace_project_settings_pipelines_path(@project.namespace, @project)
end
private

View File

@ -4,7 +4,7 @@ class Projects::VariablesController < Projects::ApplicationController
layout 'project_settings'
def index
@variable = Ci::Variable.new
redirect_to namespace_project_settings_pipelines_path(project.namespace, project)
end
def show
@ -15,7 +15,7 @@ class Projects::VariablesController < Projects::ApplicationController
@variable = @project.variables.find(params[:id])
if @variable.update_attributes(project_params)
redirect_to namespace_project_variables_path(project.namespace, project), notice: 'Variable was successfully updated.'
redirect_to namespace_project_settings_pipelines_path(project.namespace, project), notice: 'Variable was successfully updated.'
else
render action: "show"
end
@ -25,7 +25,7 @@ class Projects::VariablesController < Projects::ApplicationController
@variable = Ci::Variable.new(project_params)
if @variable.valid? && @project.variables << @variable
redirect_to namespace_project_variables_path(project.namespace, project), notice: 'Variables were successfully updated.'
redirect_to namespace_project_settings_pipelines_path(project.namespace, project), notice: 'Variables were successfully updated.'
else
render action: "index"
end
@ -35,7 +35,7 @@ class Projects::VariablesController < Projects::ApplicationController
@key = @project.variables.find(params[:id])
@key.destroy
redirect_to namespace_project_variables_path(project.namespace, project), notice: 'Variable was successfully removed.'
redirect_to namespace_project_settings_pipelines_path(project.namespace, project), notice: 'Variable was successfully removed.'
end
private

View File

@ -1,5 +1,3 @@
- page_title "CI/CD Pipelines"
.row.prepend-top-default
.col-lg-3.profile-settings-sidebar
%h4.prepend-top-0
@ -95,4 +93,4 @@
%hr
.row.prepend-top-default
= render partial: 'badge', collection: @badges
= render partial: 'projects/pipelines_settings/badge', collection: @badges

View File

@ -1,5 +1,3 @@
- page_title "Runners"
.light.prepend-top-default
%p
A 'Runner' is a process which runs a job.
@ -22,6 +20,6 @@
%p.lead To start serving your jobs you can either add specific Runners to your project or use shared Runners
.row
.col-sm-6
= render 'specific_runners'
= render 'projects/runners/specific_runners'
.col-sm-6
= render 'shared_runners'
= render 'projects/runners/shared_runners'

View File

@ -20,10 +20,10 @@
- if @project_runners.any?
%h4.underlined-title Runners activated for this project
%ul.bordered-list.activated-specific-runners
= render partial: 'runner', collection: @project_runners, as: :runner
= render partial: 'projects/runners/runner', collection: @project_runners, as: :runner
- if @assignable_runners.any?
%h4.underlined-title Available specific runners
%ul.bordered-list.available-specific-runners
= render partial: 'runner', collection: @assignable_runners, as: :runner
= render partial: 'projects/runners/runner', collection: @assignable_runners, as: :runner
= paginate @assignable_runners, theme: "gitlab"

View File

@ -0,0 +1,6 @@
- page_title "Pipelines"
= render 'projects/runners/index'
= render 'projects/variables/index'
= render 'projects/triggers/index'
= render 'projects/pipelines_settings/show'

View File

@ -1,5 +1,3 @@
- page_title "Triggers"
.row.prepend-top-default.append-bottom-default
.col-lg-3
%h4.prepend-top-0
@ -25,12 +23,12 @@
%th
%strong Last used
%th
= render partial: 'trigger', collection: @triggers, as: :trigger
= render partial: 'projects/triggers/trigger', collection: @triggers, as: :trigger
- else
%p.settings-message.text-center.append-bottom-default
No triggers have been created yet. Add one using the button below.
= form_for @trigger, url: url_for(controller: 'projects/triggers', action: 'create') do |f|
= form_for @trigger, url: url_for(controller: '/projects/triggers', action: 'create') do |f|
= f.submit "Add trigger", class: 'btn btn-success'
.panel-footer

View File

@ -1,12 +1,10 @@
- page_title "Variables"
.row.prepend-top-default.append-bottom-default
.col-lg-3
= render "content"
= render "projects/variables/content"
.col-lg-9
%h5.prepend-top-0
Add a variable
= render "form", btn_text: "Add new variable"
= render "projects/variables/form", btn_text: "Add new variable"
%hr
%h5.prepend-top-0
Your variables (#{@project.variables.size})
@ -14,5 +12,5 @@
%p.settings-message.text-center.append-bottom-0
No variables found, add one with the form above.
- else
= render "table"
= render "projects/variables/table"
%button.btn.btn-info.js-btn-toggle-reveal-values{ "data-status" => 'hidden' } Reveal Values

View File

@ -316,6 +316,7 @@ constraints(ProjectUrlConstrainer.new) do
namespace :settings do
resource :members, only: [:show]
resource :integrations, only: [:show]
resource :pipelines, only: [:show]
end
# Since both wiki and repository routing contains wildcard characters