From: Greg Farnum Date: Wed, 8 Aug 2012 16:45:37 +0000 (-0700) Subject: keep track of which disks have been prepared (crowbar) X-Git-Tag: rebased~4 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=ea9bdace8a2fd7f6382d46a10498c3dea5a7979e;p=ceph-cookbooks.git keep track of which disks have been prepared (crowbar) This way we can only prepare disks which aren't already set up. --- diff --git a/recipes/bootstrap_osd.rb b/recipes/bootstrap_osd.rb index c578329..ec1e3e3 100644 --- a/recipes/bootstrap_osd.rb +++ b/recipes/bootstrap_osd.rb @@ -45,7 +45,12 @@ else do_trigger = false node["crowbar"]["disks"].each do |disk, data| - if node["crowbar"]["disks"][disk]["usage"] == "Storage" + already_prepared = false + if not node["crowbar_wall"].nil? and not node["crowbar_wall"]["ceph"].nil? and not node["crowbar_wall"]["ceph"][disk].nil? and not node["crowbar_wall"]["ceph"][disk]["prepared"].nil? + already_prepared = true unless node["crowbar_wall"]["ceph"][disk]["prepared"] == false + end + + if node["crowbar"]["disks"][disk]["usage"] == "Storage" and not already_prepared puts "Disk: #{disk} should be used for ceph" system 'ceph-disk-prepare', \ @@ -54,7 +59,9 @@ else do_trigger = true - node["crowbar"]["disks"][disk]["usage"] = "ceph-osd" + node["crowbar_wall"]["ceph"] = {} unless node["crowbar_wall"]["ceph"] + node["crowbar_wall"]["ceph"][disk] = {} unless node["crowbar_wall"]["ceph"][disk] + node["crowbar_wall"]["ceph"][disk]["prepared"] = true node.save end end