Porting #49148 to master

This commit is contained in:
Gareth J. Greenaway 2022-09-26 14:56:20 -07:00
parent d4cd0a7d2f
commit 9f76e593e7
No known key found for this signature in database
GPG key ID: 10B62F8A7CAD7A41
2 changed files with 28 additions and 0 deletions

View file

@ -159,6 +159,7 @@ def _linux_cpudata():
# Parse over the cpuinfo file
if os.path.isfile(cpuinfo):
with salt.utils.files.fopen(cpuinfo, "r") as _fp:
grains["num_cpus"] = 0
for line in _fp:
comps = line.split(":")
if not len(comps) > 1:

View file

@ -2603,6 +2603,33 @@ def test_osdata_virtual_key_win():
assert osdata_grains["virtual"] != "physical"
@pytest.mark.skip_unless_on_linux
def test_linux_cpu_data_num_cpus():
cpuinfo_list = []
for i in range(0, 20):
cpuinfo_dict = {
"processor": i,
"cpu_family": 6,
"model_name": "Intel(R) Core(TM) i7-7700HQ CPU @ 2.80GHz",
"flags": "fpu vme de pse tsc msr pae mce cx8 apic sep mtrr",
}
cpuinfo_list.append(cpuinfo_dict)
cpuinfo_content = ""
for item in cpuinfo_list:
cpuinfo_content += (
"processor: {}\n" "cpu family: {}\n" "model name: {}\n" "flags: {}\n\n"
).format(
item["processor"], item["cpu_family"], item["model_name"], item["flags"]
)
with patch.object(os.path, "isfile", MagicMock(return_value=True)), patch(
"salt.utils.files.fopen", mock_open(read_data=cpuinfo_content)
):
ret = core._linux_cpudata()
assert "num_cpus" in ret
assert len(cpuinfo_list) == ret["num_cpus"]
@pytest.mark.skip_on_windows
def test_bsd_osfullname():
"""