def needs_update?
      LOG.debug { "needs_update?(#{@image.inspect})" }
      parent = Baha::Image.get_image!(@parent)
      LOG.debug { "got parent: #{parent.inspect}" }
      begin
        image = Baha::Image.get_image!(@image)
        LOG.debug { "got image: #{image.inspect}" }
        parent_id = image.info['Parent']
        this_tags = image.history[0]["Tags"]
        local_tag = "#{@image[:name]}:#{@image[:tag]}"
        remote_tag = "#{@image[:ns]}/#{local_tag}"
        LOG.debug { "current parent id = #{parent_id}" }
        LOG.debug { "current image tags = #{parent_id}" }
        LOG.debug { "current parent id = #{parent_id}" }
        parent_id != parent.id or not ( this_tags.include?(local_tag) or this_tags.include?(remote_tag) )
      rescue
        true
      end
    end
def needs_update?
      LOG.debug { "needs_update?(#{@image.inspect})" }
      parent = Baha::Image.get_image!(@parent)
      LOG.debug { "got parent: #{parent.inspect}" }
      begin
        image = Baha::Image.get_image!(@image)
        LOG.debug { "got image: #{image.inspect}" }
        parent_id = image.info['Parent']
        this_tags = image.history[0]["Tags"]
        local_tag = "#{@image[:name]}:#{@image[:tag]}"
        remote_tag = "#{@image[:ns]}/#{local_tag}"
        LOG.debug { "current parent id = #{parent_id}" }
        LOG.debug { "current image tags = #{parent_id}" }
        LOG.debug { "current parent id = #{parent_id}" }
        parent_id != parent.id or not ( this_tags.include?(local_tag) or this_tags.include?(remote_tag) )
      rescue
        true
      end
    end
Checks if the image needs updating
 1. If it's parent image has changed
 2. If the desired tag is not found
 Will raise Baha::ImageNotFoundError if the parent image can not be found