class Dependabot::Clients::GitlabWithRetries

def self.for_source(source:, credentials:)

def self.for_source(source:, credentials:)
  access_token =
    credentials
    .select { |cred| cred["type"] == "git_source" }
    .select { |cred| cred["password"] }
    .find { |cred| cred["host"] == source.hostname }
    &.fetch("password")
  new(
    endpoint: source.api_endpoint,
    private_token: access_token || ""
  )
end