Esempio n. 1
0
    def update_case_status(self, event):
        mi_caseid = event['case']['id']
        try:
            hive_caseid = self.get_hive_case_id(mi_caseid)
            updated_case = Case()
            keys_to_del = updated_case.__dict__
            print(keys_to_del)
            for key in list(keys_to_del):
                delattr(updated_case, key)

            updated_case.status = case_status_mappings[event['case']
                                                       ['status'].lower()]
            if updated_case.status != 'Resolved':
                pass
            else:
                updated_case.resolutionStatus = case_resolution_mappings[
                    event['case']['status'].lower()]
                updated_case.impactStatus = 'WithImpact'
                updated_case.id = hive_caseid
                response = self.api.update_case(updated_case)
                log.info("case updated status: %s", response.status_code)
                log.info("response body: %s", response.text)
            self.update_case_tasks(event)
        except Exception:
            log.error("An error occurred while updating a case : %s",
                      mi_caseid,
                      exc_info=True)
Esempio n. 2
0
 def update_case_priority(self, event):
     mi_caseid = event['case']['id']
     try:
         hive_caseid = self.get_hive_case_id(mi_caseid)
         response_dict = self.api.get_case(hive_caseid).json()
         print(json.dumps(response_dict, indent=4, sort_keys=True))
         new_severity = case_priority_mappings[event['case']
                                               ['priority'].lower()]
         # updated_case = Case(**response_dict)
         updated_case = Case(severity=new_severity)
         keys_to_del = updated_case.__dict__
         print(keys_to_del)
         for key in list(keys_to_del):
             delattr(updated_case, key)
         updated_case.severity = new_severity
         updated_case.id = hive_caseid
         response = self.api.update_case(updated_case)
         log.info("case updated status: {}".format(response.status_code))
         log.info("response body: {}".format(response.text))
         self.update_case_tasks(event)
     except Exception:
         log.error("An error occurred while updating a case : %s",
                   mi_caseid,
                   exc_info=True)