Class: Ci::CommitStatusesFinder

Inherits:
Object
  • Object
show all
Includes:
Gitlab::Utils::StrongMemoize
Defined in:
app/finders/ci/commit_statuses_finder.rb

Instance Method Summary collapse

Constructor Details

#initialize(project, repository, current_user, refs, ref_type: nil) ⇒ CommitStatusesFinder

Returns a new instance of CommitStatusesFinder.



7
8
9
10
11
12
13
# File 'app/finders/ci/commit_statuses_finder.rb', line 7

def initialize(project, repository, current_user, refs, ref_type: nil)
  @project = project
  @repository = repository
  @current_user = current_user
  @refs = refs
  @ref_type = ref_type
end

Instance Method Details

#executeObject



15
16
17
18
19
20
21
# File 'app/finders/ci/commit_statuses_finder.rb', line 15

def execute
  return {} unless Ability.allowed?(@current_user, :read_pipeline, @project)

  pipelines.to_h do |pipeline|
    [pipeline.ref, pipeline.detailed_status(current_user)]
  end
end