Sha256: 74698e1c8a6ad475e4c20bc55891829b4d535d530156261ef395f859a3a80f16
Contents?: true
Size: 1.14 KB
Versions: 1
Compression:
Stored size: 1.14 KB
Contents
require 'uri' module Uricp::Strategy class RbdCacheCheck include Uricp::Strategy::Common include Uricp::Strategy::CacheCommon 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
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
uricp-0.0.24 | lib/uricp/strategy/rbd_cache_check.rb |