Sha256: c2e320267ec25c4f19a1ee2cbdb1d45a5be9359148333ca2105ea288d4112c86
Contents?: true
Size: 1.16 KB
Versions: 4
Compression:
Stored size: 1.16 KB
Contents
require 'uri' module Uricp::Strategy class RbdCacheCheck include Uricp::Strategy::Common include Uricp::Strategy::CacheCommon include Methadone::SH def appropriate? unless (from.scheme == 'rbd') != (to.scheme == 'rbd') debug "#{self.class.name}: not appropriate" return false end with_active_cache do if from.scheme == 'rbd' cache_check = in_rbd_cache(rbd_cache_image_spec(from)) return proposal(cache_check) if cache_check debug "#{self.class.name}: no rbd cache entry for #{options['from_uri']}" elsif to.scheme == 'rbd' cache_check = in_rbd_cache(rbd_cache_image_spec(to)) return proposal(cache_check) if cache_check debug "#{self.class.name}: no rbd cache entry for #{options['to_uri']}" end false end end def command ':;' end def proposal(cache_check) @proposed_options = options.dup @proposed_options['from_uri'] = rbd_uri(cache_check) @proposed_options.delete('cache') @proposed_options.delete('cache_name') @proposed_options.delete('dry-cache') self end end end
Version data entries
4 entries across 4 versions & 1 rubygems