Sha256: 100f5023531317fe223cd2ad0a8bf92bddfcba1b625a54275d03ecbfd67fc5b0

Contents?: true

Size: 713 Bytes

Versions: 2

Compression:

Stored size: 713 Bytes

Contents

module Uricp::Strategy
  class RbdCacheBaseSnap
    include Uricp::Strategy::Common
    include Methadone::SH

    def appropriate?
      if rbd_cache_name &&
        rbd_image_spec(from) == rbd_cache_name
        return proposal
      end
      debug "#{self.class.name}: not appropriate"
      false
    end

    def command
      "rbd snap create --id #{rbd_id} '#{rbd_clone_snapshot(rbd_cache_name)}';"\
      "rbd snap protect --id #{rbd_id} '#{rbd_clone_snapshot(rbd_cache_name)}';"
    end

    def proposal
      @proposed_options = options.dup
      @proposed_options['from_uri'] = rbd_uri(rbd_clone_snapshot(rbd_cache_name))
      @proposed_options.delete('rbd_cache_name')
      self
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
uricp-0.0.23 lib/uricp/strategy/rbd_cache_base_snap.rb
uricp-0.0.22 lib/uricp/strategy/rbd_cache_base_snap.rb