ceph_chef_pool_set

in libraries/ceph_chef_helper.rb [135:188]


def ceph_chef_pool_set(pool)
  if !node['ceph']['pools'][pool]['federated_names'].empty? && node['ceph']['pools'][pool]['federated_enable']
    node_loop = node['ceph']['pools'][pool]['federated_names']
    node_loop.each do |name|
      
      next unless name['type'] == 'replicated'
      val = if node['ceph']['pools'][pool]['settings']['size']
              node['ceph']['pools'][pool]['settings']['size']
            else
              node['ceph']['osd']['size']['max']
            end

      if node['ceph']['pools']['version'] != 2
          ceph_chef_pool name do
            action :set
            key 'size'
            value val
            not_if "ceph osd pool get #{name} size | grep #{val}"
          end
      else
          execute "ceph-pool-set-#{name}" do
            command lazy { "ceph osd pool set #{name} size #{val}" }
            not_if "ceph osd pool get #{name} size | grep #{val}"
          end
      end
    end
  else
    node_loop = node['ceph']['pools'][pool]['pools']
    node_loop.each do |pool_val|
      
      next unless pool_val['type'] == 'replicated'
      val = if node['ceph']['pools'][pool]['settings']['size']
              node['ceph']['pools'][pool]['settings']['size']
            else
              node['ceph']['osd']['size']['max']
            end

      if node['ceph']['pools']['version'] != 2
          ceph_chef_pool pool_val['name'] do
            action :set
            key 'size'
            value val
            not_if "ceph osd pool get #{pool_val['name']} size | grep #{val}"
          end
      else
          execute "ceph-pool-set-#{pool_val['name']}" do
            command lazy { "ceph osd pool set #{pool_val['name']} size #{val}" }
            not_if "ceph osd pool get #{pool_val['name']} size | grep #{val}"
          end
      end
    end
  end
end