Пример #1
0
    def update_from_ica(self, log_path):
        parsed_ica = parse_ica_log(log_path)
        logger.debug('Parsed ICA log file')
        logger.debug('Parsed content %s', parsed_ica)

        self.timestamp = parsed_ica['timestamp']
        logger.debug('Saving timestamp - %s', self.timestamp)

        try:
            self.log_path = parsed_ica['logPath']
            logger.debug('Saving log folder path - %s', self.log_path)
        except KeyError:
            logger.warning('Log folder path not found in ICA log')

        try:
            self.lis_version = parsed_ica['lisVersion']
            logger.debug('Saving LIS version - %s', self.lis_version)
        except KeyError:
            logger.warning('LIS Version not found in ICA Log')

        for vm_name, props in parsed_ica['vms'].iteritems():
            logger.debug('Updating VM, %s, with details from ICA log',
                         vm_name)
            self.vms[vm_name].host_os = props['hostOS']
            self.vms[vm_name].hv_server = props['hvServer']
            self.vms[vm_name].location = props['TestLocation']

        for test_name, test_props in self.test_cases.iteritems():
            self.test_cases[test_name].update_results(parsed_ica['tests'][test_name])
            logger.debug(
                'Saving test result for %s - %s',
                test_name, parsed_ica['tests'][test_name][1]
            )
Пример #2
0
    def update_from_ica(self, log_path, lis_version=None):
        parsed_ica = parse_ica_log(log_path)
        logger.debug('Parsed ICA log file')
        logger.debug('Parsed content %s', parsed_ica)

        self.timestamp = parsed_ica['timestamp']
        logger.debug('Saving timestamp - %s', self.timestamp)

        try:
            self.log_path = parsed_ica['logPath']
            logger.debug('Saving log folder path - %s', self.log_path)
        except KeyError:
            logger.warning('Log folder path not found in ICA log')

        if not lis_version:
            try:
                self.lis_version = parsed_ica['lisVersion']
                logger.debug('Saving LIS version - %s', self.lis_version)
            except KeyError:
                logger.warning('LIS Version not found in ICA Log')
        else:
            self.lis_version = lis_version

        for vm_name, props in parsed_ica['vms'].iteritems():
            logger.debug('Updating VM, %s, with details from ICA log',
                         vm_name)
            self.vms[vm_name].host_os = props['hostOS']
            self.vms[vm_name].hv_server = props['hvServer']
            self.vms[vm_name].location = props['TestLocation']

        to_remove = []
        remove_vms = self.vms.keys()
        for test_name, test_props in self.test_cases.iteritems():
            try:
                self.test_cases[test_name].update_results(parsed_ica['tests'][test_name])

                # Remove dependency VMs
                if parsed_ica['tests'][test_name][0] in remove_vms:
                    remove_vms.remove(parsed_ica['tests'][test_name][0])

                logger.debug(
                    'Saving test result for %s - %s',
                    test_name, parsed_ica['tests'][test_name][1]
                )
            except KeyError:
                logger.warning('Result for %s was not found in ICA log file', test_name)
                to_remove.append(test_name)

        if remove_vms:
            for vm_name in remove_vms:
                del self.vms[vm_name]

        if to_remove:
            self.remove_cases(to_remove)
Пример #3
0
    def update_from_ica(self, log_path, lis_version=None):
        parsed_ica = parse_ica_log(log_path)
        logger.debug('Parsed ICA log file')
        logger.debug('Parsed content %s', parsed_ica)

        self.timestamp = parsed_ica['timestamp']
        logger.debug('Saving timestamp - %s', self.timestamp)

        try:
            self.log_path = parsed_ica['logPath']
            logger.debug('Saving log folder path - %s', self.log_path)
        except KeyError:
            logger.warning('Log folder path not found in ICA log')

        if not lis_version:
            try:
                self.lis_version = parsed_ica['lisVersion']
                logger.debug('Saving LIS version - %s', self.lis_version)
            except KeyError:
                logger.warning('LIS Version not found in ICA Log')
        else:
            self.lis_version = lis_version

        for vm_name, props in parsed_ica['vms'].iteritems():
            logger.debug('Updating VM, %s, with details from ICA log',
                         vm_name)
            self.vms[vm_name].host_os = props['hostOS']
            self.vms[vm_name].hv_server = props['hvServer']
            self.vms[vm_name].location = props['TestLocation']

        to_remove = []
        remove_vms = self.vms.keys()
        for test_name, test_props in self.test_cases.iteritems():
            try:
                self.test_cases[test_name].update_results(parsed_ica['tests'][test_name])

                # Remove dependency VMs
                if parsed_ica['tests'][test_name][0] in remove_vms:
                    remove_vms.remove(parsed_ica['tests'][test_name][0])

                logger.debug(
                    'Saving test result for %s - %s',
                    test_name, parsed_ica['tests'][test_name][1]
                )
            except KeyError:
                logger.warning('Result for %s was not found in ICA log file', test_name)
                to_remove.append(test_name)

        if remove_vms:
            for vm_name in remove_vms:
                del self.vms[vm_name]

        if to_remove:
            self.remove_cases(to_remove)
Пример #4
0
    def update_from_ica(self, log_path):
        parsed_ica = parse_ica_log(log_path)
        logger.debug("Parsed ICA log file")
        logger.debug("Parsed content %s", parsed_ica)

        self.timestamp = parsed_ica["timestamp"]
        logger.debug("Saving timestamp - %s", self.timestamp)

        try:
            self.log_path = parsed_ica["logPath"]
            logger.debug("Saving log folder path - %s", self.log_path)
        except KeyError:
            logger.warning("Log folder path not found in ICA log")

        try:
            self.lis_version = parsed_ica["lisVersion"]
            logger.debug("Saving LIS version - %s", self.lis_version)
        except KeyError:
            logger.warning("LIS Version not found in ICA Log")

        for vm_name, props in parsed_ica["vms"].iteritems():
            logger.debug("Updating VM, %s, with details from ICA log", vm_name)
            self.vms[vm_name].host_os = props["hostOS"]
            self.vms[vm_name].hv_server = props["hvServer"]
            self.vms[vm_name].location = props["TestLocation"]

        to_remove = []
        remove_vms = self.vms.keys()
        for test_name, test_props in self.test_cases.iteritems():
            try:
                self.test_cases[test_name].update_results(parsed_ica["tests"][test_name])

                # Remove dependency VMs
                if parsed_ica["tests"][test_name][0] in remove_vms:
                    remove_vms.remove(parsed_ica["tests"][test_name][0])

                logger.debug("Saving test result for %s - %s", test_name, parsed_ica["tests"][test_name][1])
            except KeyError:
                logger.warning("Result for %s was not found in ICA log file", test_name)
                to_remove.append(test_name)

        if remove_vms:
            for vm_name in remove_vms:
                del self.vms[vm_name]

        if to_remove:
            self.remove_cases(to_remove)