Exemplo n.º 1
0
 def test_get_leader_name_malformed(self, m_get):
     m_get.return_value = mock.Mock(json=mock.Mock(
         return_value={'name2': 'foo'}))
     res = utils.get_leader_name()
     m_get.assert_called_once_with(
         'http://localhost:%d' % CONF.kubernetes.controller_ha_elector_port)
     self.assertIsNone(res)
Exemplo n.º 2
0
    def monitor_leader(self, context):
        leader = utils.get_leader_name()
        if leader is None:
            # Error when fetching current leader. We're paranoid, so just to
            # make sure we won't break anything we'll try to step down.
            self.on_revoke_leader()
        elif leader != self.current_leader and leader == self.node_name:
            # I'm becoming the leader.
            self.on_become_leader()
        elif leader != self.current_leader and self.is_leader():
            # I'm revoked from being the leader.
            self.on_revoke_leader()
        elif leader == self.current_leader and self.is_leader():
            # I continue to be the leader
            self.on_continue_leader()

        self.current_leader = leader
Exemplo n.º 3
0
 def test_get_leader_name_exc(self, m_get):
     m_get.side_effect = Exception
     res = utils.get_leader_name()
     m_get.assert_called_once_with(
         'http://localhost:%d' % CONF.kubernetes.controller_ha_elector_port)
     self.assertIsNone(res)