debian-mirror-gitlab/lib/container_registry/registry.rb

34 lines
790 B
Ruby
Raw Normal View History

2018-12-13 13:39:08 +05:30
# frozen_string_literal: true
2016-06-02 11:05:42 +05:30
module ContainerRegistry
class Registry
2022-04-04 11:22:00 +05:30
include Gitlab::Utils::StrongMemoize
2016-06-02 11:05:42 +05:30
attr_reader :uri, :client, :path
def initialize(uri, options = {})
@uri = uri
2022-04-04 11:22:00 +05:30
@options = options
@path = @options[:path] || default_path
@client = ContainerRegistry::Client.new(@uri, @options)
end
def gitlab_api_client
strong_memoize(:gitlab_api_client) do
token = Auth::ContainerRegistryAuthenticationService.import_access_token
url = Gitlab.config.registry.api_url
host_port = Gitlab.config.registry.host_port
ContainerRegistry::GitlabApiClient.new(url, token: token, path: host_port)
end
2016-06-02 11:05:42 +05:30
end
private
def default_path
2018-03-17 18:26:18 +05:30
@uri.sub(%r{^https?://}, '')
2016-06-02 11:05:42 +05:30
end
end
end