Sha256: aa8d9d2cdc13d52ccfe73de390120c7d05bec2879fafa01ae425d239fe51a1dc

Contents?: true

Size: 1.1 KB

Versions: 15

Compression:

Stored size: 1.1 KB

Contents

# takelage docker image tag list module
module DockerImageTagListModule

  # Backend method for docker image tag list local.
  # @return [Array] local docker image tags
  def docker_image_tag_list_local
    tags = []

    cmd_docker_images = 'docker images'
    images = run cmd_docker_images

    images.scan(/.*#{@docker_repo}\/#{@docker_image}.*/) do |line|
      tags << line.split(/\s+/)[1]
    end

    tags.sort_by(&Gem::Version.method(:new))
  end

  # Backend method for docker image tag list remote.
  # @return [Array] remote docker image tags
  def docker_image_tag_list_remote
    log.debug "Getting docker remote tags from \"#{@docker_tagsurl}\""

    begin
      @res = Net::HTTP.get_response URI(@docker_tagsurl)
      unless @res.code.eql? '200'
        log.error "Unable to connect to \"#{@docker_tagsurl}\""
        return
      end
    rescue SocketError => e
      log.debug e
      exit false
    end

    begin
      tags = JSON.parse @res.body
    rescue JSON::ParserError
      log.error 'Unable to parse JSON'
      exit false
    end

    tags['tags'].sort_by(&Gem::Version.method(:new))
  end
end

Version data entries

15 entries across 15 versions & 1 rubygems

Version Path
takelage-0.4.5 lib/takelage/docker/image/tag/list/module.rb
takelage-0.4.4 lib/takelage/docker/image/tag/list/module.rb
takelage-0.4.3 lib/takelage/docker/image/tag/list/module.rb
takelage-0.4.2 lib/takelage/docker/image/tag/list/module.rb
takelage-0.4.1 lib/takelage/docker/image/tag/list/module.rb
takelage-0.4.0 lib/takelage/docker/image/tag/list/module.rb
takelage-0.3.0 lib/takelage/docker/image/tag/list/module.rb
takelage-0.2.1 lib/takelage/docker/image/tag/list/module.rb
takelage-0.2.0 lib/takelage/docker/image/tag/list/module.rb
takelage-0.1.5 lib/takelage/docker/image/tag/list/module.rb
takelage-0.1.4 lib/takelage/docker/image/tag/list/module.rb
takelage-0.1.3 lib/takelage/docker/image/tag/list/module.rb
takelage-0.1.2 lib/takelage/docker/image/tag/list/module.rb
takelage-0.1.1 lib/takelage/docker/image/tag/list/module.rb
takelage-0.1.0 lib/takelage/docker/image/tag/list/module.rb