from ganeti import query
from ganeti import utils
from ganeti.cmdlib.base import LogicalUnit, NoHooksLU, QueryBase
-from ganeti.cmdlib.common import ShareAll, CheckNodeGroupInstances
+from ganeti.cmdlib.common import ShareAll
def _BuildNetworkHookEnv(name, subnet, gateway, network6, gateway6,
self.group_uuid = self.cfg.LookupNodeGroup(self.group_name)
self.needed_locks = {
- locking.LEVEL_INSTANCE: [],
locking.LEVEL_NODEGROUP: [self.group_uuid],
}
- self.share_locks[locking.LEVEL_INSTANCE] = 1
if self.op.conflicts_check:
+ self.needed_locks[locking.LEVEL_INSTANCE] = locking.ALL_SET
self.needed_locks[locking.LEVEL_NETWORK] = [self.network_uuid]
self.share_locks[locking.LEVEL_NETWORK] = 1
+ self.share_locks[locking.LEVEL_INSTANCE] = 1
def DeclareLocks(self, level):
- if level == locking.LEVEL_INSTANCE:
- assert not self.needed_locks[locking.LEVEL_INSTANCE]
-
- # Lock instances optimistically, needs verification once group lock has
- # been acquired
- if self.op.conflicts_check:
- self.needed_locks[locking.LEVEL_INSTANCE] = \
- self.cfg.GetInstanceNames(
- self.cfg.GetNodeGroupInstances(self.group_uuid))
+ pass
def BuildHooksEnv(self):
ret = {
# Check if locked instances are still correct
owned_instance_names = frozenset(self.owned_locks(locking.LEVEL_INSTANCE))
- if self.op.conflicts_check:
- CheckNodeGroupInstances(self.cfg, self.group_uuid, owned_instance_names)
self.netparams = {
constants.NIC_MODE: self.network_mode,
self.group_uuid = self.cfg.LookupNodeGroup(self.group_name)
self.needed_locks = {
- locking.LEVEL_INSTANCE: [],
+ locking.LEVEL_INSTANCE: locking.ALL_SET,
locking.LEVEL_NODEGROUP: [self.group_uuid],
}
self.share_locks[locking.LEVEL_INSTANCE] = 1
def DeclareLocks(self, level):
- if level == locking.LEVEL_INSTANCE:
- assert not self.needed_locks[locking.LEVEL_INSTANCE]
-
- # Lock instances optimistically, needs verification once group lock has
- # been acquired
- self.needed_locks[locking.LEVEL_INSTANCE] = \
- self.cfg.GetInstanceNames(
- self.cfg.GetNodeGroupInstances(self.group_uuid))
+ pass
def BuildHooksEnv(self):
ret = {
# Check if locked instances are still correct
owned_instances = frozenset(self.owned_locks(locking.LEVEL_INSTANCE))
- CheckNodeGroupInstances(self.cfg, self.group_uuid, owned_instances)
self.group = self.cfg.GetNodeGroup(self.group_uuid)
self.connected = True