Class: ContainerRepositoriesFinder

Inherits:
Object
  • Object
show all
Defined in:
app/finders/container_repositories_finder.rb

Constant Summary collapse

VALID_SUBJECTS =
[Group, Project].freeze

Instance Method Summary collapse

Constructor Details

#initialize(user:, subject:, params: {}) ⇒ ContainerRepositoriesFinder

Returns a new instance of ContainerRepositoriesFinder.



6
7
8
9
10
# File 'app/finders/container_repositories_finder.rb', line 6

def initialize(user:, subject:, params: {})
  @user = user
  @subject = subject
  @params = params
end

Instance Method Details

#executeObject

Raises:

  • (ArgumentError)


12
13
14
15
16
17
18
19
# File 'app/finders/container_repositories_finder.rb', line 12

def execute
  raise ArgumentError, "invalid subject_type" unless valid_subject_type?
  return unless authorized?

  repositories = @subject.is_a?(Project) ? project_repositories : group_repositories
  repositories = filter_by_image_name(repositories)
  sort(repositories)
end