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