self.gen_persistent_disk_data

in cookbooks/fb_storage/libraries/storage.rb [356:387]


    def self.gen_persistent_disk_data(disks)
      id_list = []
      
      
      id_map = {}
      Dir.open(DEV_ID_DIR).each do |entry|
        next if %w{. ..}.include?(entry)

        p = "#{DEV_ID_DIR}/#{entry}"
        id_map[File.basename(File.readlink(p))] = entry
      end
      disks.each do |disk|
        id = id_map[disk]
        if id.nil?
          msg = "fb_storage: Can't convert #{disk} to an id"
          if FB::Fstab.get_in_maint_disks.include?(disk)
            Chef::Log.warn(
              "#{msg}, but it's in maintenance, so using #{disk}",
            )
            id = disk
          else
            fail "fb_storage: Can't convert #{disk} to an id"
          end
        end
        id_list << id
      end
      {
        'version' => 2,
        'disks' => id_list,
      }
    end