docs: def get_raid_fgi_status(report):
      """Gather fgi(foreground initialization) information of raid configuration
  
      This function returns a fgi status which contains activity status
      and its values from the report.
  
      :param report: SCCI report information
      :returns: dict of fgi status of logical_drives, such as Initializing (10%)
                or Idle. e.g: {'0': 'Idle', '1': 'Initializing (10%)'}
      :raises: SCCIInvalidInputError: fail report input.
               SCCIRAIDNotReady: waiting for RAID configuration to complete.
      """
      fgi_status = {}
      raid_path = "./Software/ServerView/ServerViewRaid"
  
      if not report.find(raid_path):
          raise SCCIInvalidInputError(
              "ServerView RAID not available in Bare metal Server")
      if not report.find(raid_path + "/amEMSV/System/Adapter/LogicalDrive"):
          raise SCCIRAIDNotReady(
              "RAID configuration not configure in Bare metal Server yet")
  
      logical_drives = report.findall(raid_path +
                                      "/amEMSV/System/Adapter/LogicalDrive")
      for logical_drive_name in logical_drives:
          status = logical_drive_name.find("./Activity").text
          name = logical_drive_name.find("./LogDriveNumber").text
          fgi_status.update({name: status})
  
      return fgi_status