#
#
-# Copyright (C) 2007, 2011 Google Inc.
+# Copyright (C) 2007, 2011, 2012 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
def _GetGenericAddParameters():
- params = ["-B", "%s=%s" % (constants.BE_MEMORY, qa_config.get("mem"))]
+ params = ["-B"]
+ params.append("%s=%s,%s=%s" % (constants.BE_MINMEM,
+ qa_config.get(constants.BE_MINMEM),
+ constants.BE_MAXMEM,
+ qa_config.get(constants.BE_MAXMEM)))
for idx, size in enumerate(qa_config.get("disk")):
params.extend(["--disk", "%s:size=%s" % (idx, size)])
return params
_ReadSsconfInstanceList())
-def TestInstanceRename(rename_source, rename_target):
- """gnt-instance rename"""
- _CheckSsconfInstanceList(rename_source)
- AssertCommand(["gnt-instance", "rename", rename_source, rename_target])
- _CheckSsconfInstanceList(rename_target)
- AssertCommand(["gnt-instance", "rename", rename_target, rename_source])
+def TestInstanceRenameAndBack(rename_source, rename_target):
+ """gnt-instance rename
+
+ This must leave the instance with the original name, not the target
+ name.
+
+ """
_CheckSsconfInstanceList(rename_source)
+ # first do a rename to a different actual name, expecting it to fail
qa_utils.AddToEtcHosts(["meeeeh-not-exists", rename_target])
try:
AssertCommand(["gnt-instance", "rename", rename_source, rename_target],
_CheckSsconfInstanceList(rename_source)
finally:
qa_utils.RemoveFromEtcHosts(["meeeeh-not-exists", rename_target])
+ # and now rename instance to rename_target...
AssertCommand(["gnt-instance", "rename", rename_source, rename_target])
_CheckSsconfInstanceList(rename_target)
+ # and back
+ AssertCommand(["gnt-instance", "rename", rename_target, rename_source])
+ _CheckSsconfInstanceList(rename_source)
def TestInstanceFailover(instance):
instance["name"]])
AssertCommand(["gnt-instance", "start", instance["name"]])
AssertCommand(cmd)
+ AssertCommand(["gnt-instance", "modify", "-B",
+ ("%s=%s" %
+ (constants.BE_ALWAYS_FAILOVER, constants.VALUE_TRUE)),
+ instance["name"]])
+ AssertCommand(cmd, fail=True)
+ AssertCommand(["gnt-instance", "migrate", "--force", "--allow-failover",
+ instance["name"]])
+ AssertCommand(["gnt-instance", "modify", "-B",
+ ("%s=%s" %
+ (constants.BE_ALWAYS_FAILOVER, constants.VALUE_FALSE)),
+ instance["name"]])
+ AssertCommand(cmd)
def TestInstanceInfo(instance):
test_kernel = "/sbin/init"
test_initrd = test_kernel
- orig_memory = qa_config.get("mem")
+ orig_maxmem = qa_config.get(constants.BE_MAXMEM)
+ orig_minmem = qa_config.get(constants.BE_MINMEM)
#orig_bridge = qa_config.get("bridge", "xen-br0")
args = [
- ["-B", "%s=128" % constants.BE_MEMORY],
- ["-B", "%s=%s" % (constants.BE_MEMORY, orig_memory)],
+ ["-B", "%s=128" % constants.BE_MINMEM],
+ ["-B", "%s=128" % constants.BE_MAXMEM],
+ ["-B", "%s=%s,%s=%s" % (constants.BE_MINMEM, orig_minmem,
+ constants.BE_MAXMEM, orig_maxmem)],
["-B", "%s=2" % constants.BE_VCPUS],
["-B", "%s=1" % constants.BE_VCPUS],
["-B", "%s=%s" % (constants.BE_VCPUS, constants.VALUE_DEFAULT)],
+ ["-B", "%s=%s" % (constants.BE_ALWAYS_FAILOVER, constants.VALUE_TRUE)],
+ ["-B", "%s=%s" % (constants.BE_ALWAYS_FAILOVER, constants.VALUE_DEFAULT)],
["-H", "%s=%s" % (constants.HV_KERNEL_PATH, test_kernel)],
["-H", "%s=%s" % (constants.HV_KERNEL_PATH, constants.VALUE_DEFAULT)],