disk_template = info["Disk template"]
if not disk_template:
raise qa_error.Error("Can't get instance disk template")
- storage_type = constants.DISK_TEMPLATES_STORAGE_TYPE[disk_template]
+ storage_type = constants.MAP_DISK_TEMPLATE_STORAGE_TYPE[disk_template]
re_drbdnode = re.compile(r"^([^\s,]+),\s+minor=([0-9]+)$")
vols = []
drbd_min = {}
for (count, diskinfo) in enumerate(info["Disks"]):
(dtype, _) = diskinfo["disk/%s" % count].split(",", 1)
- if dtype == constants.LD_DRBD8:
+ if dtype == constants.DT_DRBD8:
for child in diskinfo["child devices"]:
vols.append(child["logical_id"])
for key in ["nodeA", "nodeB"]:
minor = int(m.group(2))
minorlist = drbd_min.setdefault(node, [])
minorlist.append(minor)
- elif dtype == constants.LD_LV:
+ elif dtype == constants.DT_PLAIN:
vols.append(diskinfo["logical_id"])
assert nodes
@InstanceCheck(None, INST_UP, RETURN_VALUE)
+def TestInstanceAddSharedFile(nodes):
+ """gnt-instance add -t sharedfile"""
+ assert len(nodes) == 1
+ if constants.DT_SHARED_FILE in qa_config.GetEnabledDiskTemplates():
+ return CreateInstanceByDiskTemplateOneNode(nodes, constants.DT_SHARED_FILE)
+
+
+@InstanceCheck(None, INST_UP, RETURN_VALUE)
def TestInstanceAddDiskless(nodes):
"""gnt-instance add -t diskless"""
assert len(nodes) == 1
def TestInstanceExport(instance, node):
"""gnt-backup export -n ..."""
name = instance.name
+ # Export does not work for file-based templates, thus we skip the test
+ if instance.disk_template in [constants.DT_FILE, constants.DT_SHARED_FILE]:
+ return
AssertCommand(["gnt-backup", "export", "-n", node.primary, name])
return qa_utils.ResolveInstanceName(name)
def TestInstanceImport(newinst, node, expnode, name):
"""gnt-backup import"""
templ = constants.DT_PLAIN
+ if not qa_config.IsTemplateSupported(templ):
+ return
cmd = (["gnt-backup", "import",
"--disk-template=%s" % templ,
"--no-ip-check",
# Setup the cluster with the enabled_disk_templates
AssertCommand(
["gnt-cluster", "modify",
- "--enabled-disk-template=%s" %
- ",".join(enabled_disk_templates)],
+ "--enabled-disk-templates=%s" % ",".join(enabled_disk_templates),
+ "--ipolicy-disk-templates=%s" % ",".join(enabled_disk_templates)],
fail=False)
# Test instance creation for enabled disk templates
for (enabled, disabled) in [(templates1, templates2),
(templates2, templates1)]:
AssertCommand(["gnt-cluster", "modify",
- "--enabled-disk-template=%s" %
- ",".join(enabled)],
+ "--enabled-disk-templates=%s" % ",".join(enabled),
+ "--ipolicy-disk-templates=%s" % ",".join(enabled)],
fail=False)
for disk_template in disabled:
CreateInstanceByDiskTemplate(nodes, disk_template, fail=True)
set([constants.DT_DISKLESS, constants.DT_BLOCK]) -
set(enabled_disk_templates))
AssertCommand(["gnt-cluster", "modify",
- "--enabled-disk-template=%s" %
+ "--enabled-disk-templates=%s" %
+ ",".join(other_disk_templates),
+ "--ipolicy-disk-templates=%s" %
",".join(other_disk_templates)],
fail=False)
CreateInstanceByDiskTemplate(nodes, enabled_disk_templates[0], fail=True)
# Restore initially enabled disk templates
AssertCommand(["gnt-cluster", "modify",
- "--enabled-disk-template=%s" %
+ "--enabled-disk-templates=%s" %
+ ",".join(enabled_disk_templates),
+ "--ipolicy-disk-templates=%s" %
",".join(enabled_disk_templates)],
fail=False)