#
#
-# Copyright (C) 2006, 2007, 2010 Google Inc.
+# Copyright (C) 2006, 2007, 2010, 2011 Google Inc.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
class FakeConfig:
- """Fake configuration object"""
+ """Fake configuration object"""
- def IsCluster(self):
- return True
+ def IsCluster(self):
+ return True
- def GetNodeList(self):
- return ["a", "b", "c"]
+ def GetNodeList(self):
+ return ["a", "b", "c"]
- def GetHostKey(self):
- return FAKE_CLUSTER_KEY
+ def GetHostKey(self):
+ return FAKE_CLUSTER_KEY
- def GetClusterName(self):
- return "test.cluster"
+ def GetClusterName(self):
+ return "test.cluster"
- def GetMasterNode(self):
- return netutils.Hostname.GetSysName()
+ def GetMasterNode(self):
+ return netutils.Hostname.GetSysName()
- def GetDefaultIAllocator(Self):
- return "testallocator"
+ def GetDefaultIAllocator(Self):
+ return "testallocator"
class FakeProc:
- """Fake processor object"""
+ """Fake processor object"""
- def Log(self, msg, *args, **kwargs):
- pass
+ def Log(self, msg, *args, **kwargs):
+ pass
- def LogWarning(self, msg, *args, **kwargs):
- pass
+ def LogWarning(self, msg, *args, **kwargs):
+ pass
- def LogInfo(self, msg, *args, **kwargs):
- pass
+ def LogInfo(self, msg, *args, **kwargs):
+ pass
- def LogStep(self, current, total, message):
- pass
+ def LogStep(self, current, total, message):
+ pass
+
+
+class FakeGLM:
+ """Fake global lock manager object"""
+
+ def list_owned(self, level):
+ return set()
class FakeContext:
- """Fake context object"""
+ """Fake context object"""
- def __init__(self):
- self.cfg = FakeConfig()
- # TODO: decide what features a mock Ganeti Lock Manager must have
- self.GLM = None
+ def __init__(self):
+ self.cfg = FakeConfig()
+ self.glm = FakeGLM()
class FakeGetentResolver:
- """Fake runtime.GetentResolver"""
-
- def __init__(self):
- # As we nomally don't run under root we use our own uid/gid for all
- # fields. This way we don't run into permission denied problems.
- uid = os.getuid()
- gid = os.getgid()
-
- self.masterd_uid = uid
- self.masterd_gid = gid
- self.confd_uid = uid
- self.confd_gid = gid
- self.rapi_uid = uid
- self.rapi_gid = gid
- self.noded_uid = uid
-
- self.daemons_gid = gid
- self.admin_gid = gid
+ """Fake runtime.GetentResolver"""
+
+ def __init__(self):
+ # As we nomally don't run under root we use our own uid/gid for all
+ # fields. This way we don't run into permission denied problems.
+ uid = os.getuid()
+ gid = os.getgid()
+
+ self.masterd_uid = uid
+ self.masterd_gid = gid
+ self.confd_uid = uid
+ self.confd_gid = gid
+ self.rapi_uid = uid
+ self.rapi_gid = gid
+ self.noded_uid = uid
+ self.noded_gid = gid
+
+ self.daemons_gid = gid
+ self.admin_gid = gid
+
+ def LookupUid(self, uid):
+ return "user%s" % uid
+
+ def LookupGid(self, gid):
+ return "group%s" % gid