Sha256: 553c25f0165c93b8e811c2fb70e0b4a58087e6c128980f2fe2f5fffb1582148d

Contents?: true

Size: 1.07 KB

Versions: 4

Compression:

Stored size: 1.07 KB

Contents

# frozen_string_literal: true

# tau docker image tag check
module DockerImageTagCheck
  # Backend method for docker image tag check.
  # @return [Boolean] does docker image tag exist?
  def docker_image_tag_check(tag)
    log.debug "Check if docker image tag \"#{tag}\" exists"

    return false unless docker_check_daemon

    if tag.to_s.chomp.empty?
      log.warn 'No docker image tag specified'
      return false
    end

    image = "#{@docker_user}/#{@docker_repo}:#{tag}"

    return false unless _docker_image_check_image? image

    log.debug "Found docker image \"#{image}\""
    true
  end

  private

  # Check if image exists.
  # rubocop:disable Metrics/MethodLength
  def _docker_image_check_image?(image)
    cmd_docker_images =
      format(
        config.active['cmd_docker_image_tag_check_docker_images'],
        docker: config.active['cmd_docker'],
        image: image
      )

    if (run cmd_docker_images).to_s.chomp.empty?
      log.debug "No docker image \"#{image}\" found"
      return false
    end

    true
  end
  # rubocop:enable Metrics/MethodLength
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
takeltau-0.43.16 lib/takeltau/docker/image/tag/check.rb
takeltau-0.43.15 lib/takeltau/docker/image/tag/check.rb
takeltau-0.43.14 lib/takeltau/docker/image/tag/check.rb
takeltau-0.43.10 lib/takeltau/docker/image/tag/check.rb