Module: DockerHub

Defined in:
lib/scripts/generated/docker_hub_tags.rb

Overview

Queries Docker Hub Registry API v2 for official image tags.

Constant Summary collapse

REGISTRY_API =
'https://registry.hub.docker.com/v2'
PAGE_SIZE =
100

Class Method Summary collapse

Class Method Details

.fetch_tags(image, page_size: PAGE_SIZE) ⇒ Object

Fetch tags for a library (official) image from Docker Hub. Returns an array of tag name strings.



31
32
33
34
# File 'lib/scripts/generated/docker_hub_tags.rb', line 31

def self.fetch_tags(image, page_size: PAGE_SIZE)
  url = "#{REGISTRY_API}/repositories/library/#{image}/tags?page_size=#{page_size}"
  collect_all_pages(url)
end

.tag_exists?(image, tag) ⇒ Boolean

Check whether a specific tag exists for an image.

Returns:

  • (Boolean)


37
38
39
40
41
# File 'lib/scripts/generated/docker_hub_tags.rb', line 37

def self.tag_exists?(image, tag)
  uri = URI.parse("#{REGISTRY_API}/repositories/library/#{image}/tags/#{tag}")
  response = Net::HTTP.get_response(uri)
  response.is_a?(Net::HTTPSuccess)
end