Merge pull request #34670 from isbm/isbm-osmajorrelease-grain-suse

Add "osmajorrelease" grain (2016.3)
This commit is contained in:
Mike Place 2016-07-20 08:39:38 -06:00 committed by GitHub
commit 62ef8fdb35
2 changed files with 10 additions and 26 deletions

View file

@ -1482,32 +1482,6 @@ def os_data():
grains.update(_virtual(grains))
grains.update(_ps(grains))
# Load additional OS family grains
if grains['os_family'] == "RedHat":
grains['osmajorrelease'] = grains['osrelease'].split('.', 1)[0]
grains['osfinger'] = '{os}-{ver}'.format(
os=grains['osfullname'],
ver=grains['osrelease'].partition('.')[0])
elif grains.get('osfullname') == 'Ubuntu':
grains['osmajorrelease'] = grains['osrelease'].split('.', 1)[0]
grains['osfinger'] = '{os}-{ver}'.format(
os=grains['osfullname'],
ver=grains['osrelease'])
elif grains.get('osfullname') == "Debian":
grains['osmajorrelease'] = grains['osrelease'].split('.', 1)[0]
grains['osfinger'] = '{os}-{ver}'.format(
os=grains['osfullname'],
ver=grains['osrelease'].partition('.')[0])
elif grains.get('os') in ('FreeBSD', 'OpenBSD', 'NetBSD', 'Mac', 'Raspbian'):
grains['osmajorrelease'] = grains['osrelease'].split('.', 1)[0]
grains['osfinger'] = '{os}-{ver}'.format(
os=grains['os'],
ver=grains['osrelease'])
if grains.get('osrelease', ''):
osrelease_info = grains['osrelease'].split('.')
for idx, value in enumerate(osrelease_info):
@ -1515,6 +1489,9 @@ def os_data():
continue
osrelease_info[idx] = int(value)
grains['osrelease_info'] = tuple(osrelease_info)
grains['osmajorrelease'] = str(grains['osrelease_info'][0]) # This will be an integer in the next release
os_name = 'os' if grains.get('os') in ('FreeBSD', 'OpenBSD', 'NetBSD', 'Mac', 'Raspbian') else 'osfullname'
grains['osfinger'] = '{0}-{1}'.format(grains[os_name], grains['osrelease_info'][0])
return grains

View file

@ -234,6 +234,7 @@ class CoreGrainsTestCase(TestCase):
self.assertEqual(os_grains.get('oscodename'), os_release_map['oscodename'])
self.assertEqual(os_grains.get('osrelease'), os_release_map['osrelease'])
self.assertListEqual(list(os_grains.get('osrelease_info')), os_release_map['osrelease_info'])
self.assertEqual(os_grains.get('osmajorrelease'), os_release_map['osmajorrelease'])
@skipIf(not salt.utils.is_linux(), 'System is not Linux')
def test_suse_os_grains_sles11sp3(self):
@ -249,6 +250,7 @@ PATCHLEVEL = 3
'osfullname': "SLES",
'osrelease': '11.3',
'osrelease_info': [11, 3],
'osmajorrelease': '11',
'files': ["/etc/SuSE-release"],
}
self._run_suse_os_grains_tests(_os_release_map)
@ -272,6 +274,7 @@ PATCHLEVEL = 3
'osfullname': "SLES",
'osrelease': '11.4',
'osrelease_info': [11, 4],
'osmajorrelease': '11',
'files': ["/etc/os-release"],
}
self._run_suse_os_grains_tests(_os_release_map)
@ -295,6 +298,7 @@ PATCHLEVEL = 3
'osfullname': "SLES",
'osrelease': '12',
'osrelease_info': [12],
'osmajorrelease': '12',
'files': ["/etc/os-release"],
}
self._run_suse_os_grains_tests(_os_release_map)
@ -318,6 +322,7 @@ PATCHLEVEL = 3
'osfullname': "SLES",
'osrelease': '12.1',
'osrelease_info': [12, 1],
'osmajorrelease': '12',
'files': ["/etc/os-release"],
}
self._run_suse_os_grains_tests(_os_release_map)
@ -341,6 +346,7 @@ PATCHLEVEL = 3
'osfullname': "Leap",
'osrelease': '42.1',
'osrelease_info': [42, 1],
'osmajorrelease': '42',
'files': ["/etc/os-release"],
}
self._run_suse_os_grains_tests(_os_release_map)
@ -364,6 +370,7 @@ PATCHLEVEL = 3
'osfullname': "Tumbleweed",
'osrelease': '20160504',
'osrelease_info': [20160504],
'osmajorrelease': '20160504',
'files': ["/etc/os-release"],
}
self._run_suse_os_grains_tests(_os_release_map)