self.scsi_device_sort

in cookbooks/fb_storage/libraries/storage.rb [214:240]


    def self.scsi_device_sort(a, b, disk_to_scsi_mapping)
      Chef::Log.debug(
        "fb_storage: scsi_device_sort: Sorting #{a} and #{b}",
      )
      if disk_to_scsi_mapping[a] && !disk_to_scsi_mapping[b]
        Chef::Log.debug(
          "fb_storage: #{a} is on SCSI bus, #{b} is not, #{a} " +
            'sorts first',
        )
        return -1
      elsif !disk_to_scsi_mapping[a] && disk_to_scsi_mapping[b]
        Chef::Log.debug(
          "fb_storage: #{a} is not on SCSI bus, #{b} is, #{b} " +
            'sorts first',
        )
        return 1
      elsif disk_to_scsi_mapping[a] && disk_to_scsi_mapping[b]
        Chef::Log.debug(
          "fb_storage: #{a} and #{b} are both on the SCSI bus " +
            'sorting by address',
        )
        return sort_scsi_slots(disk_to_scsi_mapping[a],
                               disk_to_scsi_mapping[b])
      end
      0
    end