debian-mirror-gitlab/app/controllers/projects/pipelines/application_controller.rb
2022-07-17 14:43:12 +02:00

27 lines
693 B
Ruby

# frozen_string_literal: true
# Abstract class encapsulating common logic for creating new controllers in a pipeline context
module Projects
module Pipelines
class ApplicationController < Projects::ApplicationController
include Gitlab::Utils::StrongMemoize
before_action :pipeline
before_action :authorize_read_pipeline!
feature_category :continuous_integration
urgency :low
private
def pipeline
strong_memoize(:pipeline) do
project.all_pipelines.find(params[:pipeline_id]).tap do |pipeline|
render_404 unless can?(current_user, :read_pipeline, pipeline)
end
end
end
end
end
end