def test_get_cpu_info_success(self): st2debug.utils.system_info.CPU_INFO_PATH = os.path.join(FIXTURES_DIR, 'proc_cpuinfo') cpu_info = get_cpu_info() self.assertEqual(len(cpu_info), 4) self.assertEqual(cpu_info[0]['model_name'], 'Intel(R) Core(TM) i7-2640M CPU @ 2.80GHz')
def test_get_cpu_info_success(self): st2debug.utils.system_info.CPU_INFO_PATH = os.path.join( FIXTURES_DIR, 'proc_cpuinfo') cpu_info = get_cpu_info() self.assertEqual(len(cpu_info), 4) self.assertEqual(cpu_info[0]['model_name'], 'Intel(R) Core(TM) i7-2640M CPU @ 2.80GHz')
def get_system_information(): """ Retrieve system information which is included in the report. :rtype: ``dict`` """ system_information = { 'hostname': socket.gethostname(), 'operating_system': {}, 'hardware': { 'cpu': {}, 'memory': {} }, 'python': {}, 'stackstorm': {} } # Operating system information system_information['operating_system']['system'] = platform.system() system_information['operating_system']['release'] = platform.release() system_information['operating_system'][ 'operating_system'] = platform.platform() system_information['operating_system']['platform'] = platform.system() system_information['operating_system']['architecture'] = ' '.join( platform.architecture()) if platform.system().lower() == 'linux': distribution = ' '.join(platform.linux_distribution()) system_information['operating_system'][ 'distribution'] = distribution system_information['python']['version'] = sys.version.split('\n')[0] # Hardware information cpu_info = get_cpu_info() if cpu_info: core_count = len(cpu_info) model = cpu_info[0]['model_name'] system_information['hardware']['cpu'] = { 'core_count': core_count, 'model_name': model } else: # Unsupported platform system_information['hardware']['cpu'] = 'unsupported platform' memory_info = get_memory_info() if memory_info: total = memory_info['MemTotal'] / 1024 free = memory_info['MemFree'] / 1024 used = (total - free) system_information['hardware']['memory'] = { 'total': total, 'used': used, 'free': free } else: # Unsupported platform system_information['hardware']['memory'] = 'unsupported platform' # StackStorm information system_information['stackstorm']['version'] = st2_version st2common_path = st2common.__file__ st2common_path = os.path.dirname(st2common_path) if 'st2common/st2common' in st2common_path: # Assume we are running source install base_install_path = st2common_path.replace('/st2common/st2common', '') revision_hash = get_repo_latest_revision_hash( repo_path=base_install_path) system_information['stackstorm']['installation_method'] = 'source' system_information['stackstorm']['revision_hash'] = revision_hash else: package_list = get_package_list(name_startswith='st2') system_information['stackstorm']['installation_method'] = 'package' system_information['stackstorm']['packages'] = package_list return system_information
def get_system_information(): """ Retrieve system information which is included in the report. :rtype: ``dict`` """ system_information = { 'hostname': socket.gethostname(), 'operating_system': {}, 'hardware': { 'cpu': {}, 'memory': {} }, 'python': {}, 'stackstorm': {}, 'mistral': {} } # Operating system information system_information['operating_system']['system'] = platform.system() system_information['operating_system']['release'] = platform.release() system_information['operating_system']['operating_system'] = platform.platform() system_information['operating_system']['platform'] = platform.system() system_information['operating_system']['architecture'] = ' '.join(platform.architecture()) if platform.system().lower() == 'linux': distribution = ' '.join(platform.linux_distribution()) system_information['operating_system']['distribution'] = distribution system_information['python']['version'] = sys.version.split('\n')[0] # Hardware information cpu_info = get_cpu_info() if cpu_info: core_count = len(cpu_info) model = cpu_info[0]['model_name'] system_information['hardware']['cpu'] = { 'core_count': core_count, 'model_name': model } else: # Unsupported platform system_information['hardware']['cpu'] = 'unsupported platform' memory_info = get_memory_info() if memory_info: total = memory_info['MemTotal'] / 1024 free = memory_info['MemFree'] / 1024 used = (total - free) system_information['hardware']['memory'] = { 'total': total, 'used': used, 'free': free } else: # Unsupported platform system_information['hardware']['memory'] = 'unsupported platform' # StackStorm information system_information['stackstorm']['version'] = st2_version st2common_path = st2common.__file__ st2common_path = os.path.dirname(st2common_path) if 'st2common/st2common' in st2common_path: # Assume we are running source install base_install_path = st2common_path.replace('/st2common/st2common', '') revision_hash = get_repo_latest_revision_hash(repo_path=base_install_path) system_information['stackstorm']['installation_method'] = 'source' system_information['stackstorm']['revision_hash'] = revision_hash else: package_list = get_package_list(name_startswith='st2') system_information['stackstorm']['installation_method'] = 'package' system_information['stackstorm']['packages'] = package_list # Mistral information repo_path = '/opt/openstack/mistral' revision_hash = get_repo_latest_revision_hash(repo_path=repo_path) system_information['mistral']['installation_method'] = 'source' system_information['mistral']['revision_hash'] = revision_hash return system_information
def test_get_cpu_info_no_procinfo_file(self): st2debug.utils.system_info.CPU_INFO_PATH = 'doesntexist' cpu_info = get_cpu_info() self.assertEqual(cpu_info, {})