def test_get_osd_to_host_mapping_osd_down_and_out_from_epoch1( self, mocket): """ That we don't get a mapping when osd_map contains osd_metadata no data """ mocket.getnameinfo.return_value = [OSD_HOSTNAME] mocket.getfqdn.return_value = OSD_FQDN osd_map = { "osd_metadata": [], "osds": [{ "cluster_addr": ":/0", "down_at": 0, "heartbeat_back_addr": ":/0", "heartbeat_front_addr": ":/0", "in": 0, "last_clean_begin": 0, "last_clean_end": 0, "lost_at": 0, "osd": 0, "primary_affinity": 1.0, "public_addr": ":/0", "state": ["exists", "new"], "up": 0, "up_from": 0, "up_thru": 0, "uuid": "f53e0a25-d29c-4aa3-9a2e-f6ebee538f8e", "weight": 0.0 }] } sm = ServerMonitor(Mock(), Mock(), Mock()) self.assertEqual({}, sm.get_hostname_to_osds(osd_map))
def test_get_osd_to_host_mapping_osd_metadata_partial_exists(self, mocket): """ That we get a mapping when osd_map contains osd_metadata no data """ mocket.getnameinfo.return_value = [OSD_HOSTNAME] mocket.getfqdn.return_value = OSD_FQDN osd_map = { "osds": [{ "cluster_addr": "192.34.58.142:6808/14001122", "osd": 0 }, { "cluster_addr": "192.34.58.142:6802/17383", "osd": 1 }], "osd_metadata": [{ "back_addr": "192.34.58.142:6808/14001122", "hostname": "gravel2", "id": 0, "hb_back_addr": "192.34.58.142:6809/14001122", "hb_front_addr": "192.34.58.142:6810/14001122", "front_addr": "192.34.58.142:6800/1122" }] } sm = ServerMonitor(Mock(), Mock(), Mock()) self.assertEqual( { ('gravel2.rockery', 'gravel2'): [{ 'cluster_addr': '192.34.58.142:6808/14001122', 'osd': 0 }, { 'cluster_addr': '192.34.58.142:6802/17383', 'osd': 1 }] }, sm.get_hostname_to_osds(osd_map))
def test_get_osd_to_host_mapping_osd_metadata_exists(self, mocket): """ That we get a mapping when osd_map contains osd_metadata no data """ osd_map = { "osds": [{ "cluster_addr": "192.34.58.142:6808/14001122", "osd": 0 }], "osd_metadata": [{ "back_addr": "192.34.58.142:6808/14001122", "hostname": "gravel2.rockery", "id": 0, "hb_back_addr": "192.34.58.142:6809/14001122", "hb_front_addr": "192.34.58.142:6810/14001122", "front_addr": "192.34.58.142:6800/1122" }] } sm = ServerMonitor(Mock(), Mock(), Mock()) self.assertEqual( { ('gravel2.rockery', 'gravel2'): [{ 'cluster_addr': '192.34.58.142:6808/14001122', 'osd': 0 }] }, sm.get_hostname_to_osds(osd_map)) self.assertEqual(False, mocket.called)
def test_get_osd_to_host_mapping_empty(self): """ That we get an empty mapping when osd_map contains no data """ osd_map = {'tree': {'nodes': []}, 'osds': []} sm = ServerMonitor(Mock(), Mock(), Mock()) self.assertEqual({}, sm.get_hostname_to_osds(osd_map))
def test_get_osd_to_host_mapping_osd_metadata_absent(self, mocket): """ That we get a mapping when osd_map contains osd_metadata no data """ mocket.getnameinfo.return_value = [OSD_HOSTNAME] mocket.getfqdn.return_value = OSD_FQDN osd_map = { "osds": [{ "cluster_addr": "192.34.58.142:6808/14001122", "osd": 0 }] } sm = ServerMonitor(Mock(), Mock(), Mock()) self.assertEqual( { ('gravel2.rockery', 'gravel2'): [{ 'cluster_addr': '192.34.58.142:6808/14001122', 'osd': 0 }] }, sm.get_hostname_to_osds(osd_map))