services_controller.rb 782 字节
Newer Older
1
class Projects::ServicesController < Projects::ApplicationController
D
Dmitriy Zaporozhets 已提交
2 3
  # Authorize
  before_filter :authorize_admin_project!
4
  before_filter :service, only: [:edit, :update, :test]
D
Dmitriy Zaporozhets 已提交
5 6 7

  respond_to :html

8 9
  layout "project_settings"

D
Dmitriy Zaporozhets 已提交
10
  def index
11
    @project.build_missing_services
D
Dmitriy Zaporozhets 已提交
12
    @services = @project.services.reload
D
Dmitriy Zaporozhets 已提交
13 14 15 16 17 18 19
  end

  def edit
  end

  def update
    if @service.update_attributes(params[:service])
20
      redirect_to edit_project_service_path(@project, @service.to_param)
D
Dmitriy Zaporozhets 已提交
21 22 23 24 25 26
    else
      render 'edit'
    end
  end

  def test
27
    data = GitPushService.new.sample_data(project, current_user)
D
Dmitriy Zaporozhets 已提交
28 29 30 31 32

    @service.execute(data)

    redirect_to :back
  end
33 34 35 36 37 38

  private

  def service
    @service ||= @project.services.find { |service| service.to_param == params[:id] }
  end
D
Dmitriy Zaporozhets 已提交
39
end