#Install selected packages from backports
in_chroot -- \
- apt-get -y --no-install-recommends -t squeeze-backports install \
+ $APT_INSTALL -t squeeze-backports \
git \
+ git-email \
vim
in_chroot -- \
DRBD_HELPER_OPT, NODRBD_STORAGE_OPT, DEFAULT_IALLOCATOR_OPT,
RESERVED_LVS_OPT, DRY_RUN_OPT, PRIORITY_OPT, PREALLOC_WIPE_DISKS_OPT,
NODE_PARAMS_OPT, USE_EXTERNAL_MIP_SCRIPT, DISK_PARAMS_OPT, HV_STATE_OPT,
- DISK_STATE_OPT, SUBMIT_OPT, ENABLED_DISK_TEMPLATES_OPT,
- IPOLICY_STD_SPECS_OPT, MODIFY_ETCHOSTS_OPT] + INSTANCE_POLICY_OPTS,
+ DISK_STATE_OPT] + SUBMIT_OPTS +
- [ENABLED_DISK_TEMPLATES_OPT, IPOLICY_STD_SPECS_OPT] + INSTANCE_POLICY_OPTS,
++ [ENABLED_DISK_TEMPLATES_OPT, IPOLICY_STD_SPECS_OPT, MODIFY_ETCHOSTS_OPT] +
++ INSTANCE_POLICY_OPTS,
"[opts...]",
"Alters the parameters of the cluster"),
"renew-crypto": (
"pnode", "snodes",
"disk_template",
"nic.ips", "nic.macs", "nic.modes",
- "nic.links", "nic.networks", "nic.bridges",
+ "nic.links", "nic.networks", "nic.networks.names", "nic.bridges",
"network_port",
- "disk.sizes", "disk_usage",
+ "disk.sizes", "disk.spindles", "disk_usage",
"beparams", "hvparams",
"oper_state", "oper_ram", "oper_vcpus", "status",
"custom_hvparams", "custom_beparams", "custom_nicparams",
-- lists here.
genNodeList :: Gen Node.Node -> Gen Node.List
genNodeList ngen = fmap (snd . Loader.assignIndices) names_nodes
- where names_nodes = (fmap . map) (\n -> (Node.name n, n)) $ listOf1 ngen
+ where names_nodes = (fmap . map) (\n -> (Node.name n, n)) nodes
+ nodes = listOf1 ngen `suchThat`
+ ((\ns -> ns == nub ns) . map Node.name)
+-- | Node list generator where node names are unique
+genUniqueNodeList :: Gen Node.Node -> Gen (Node.List, Types.NameAssoc)
+genUniqueNodeList ngen = (do
+ nl <- genNodeList ngen
+ let na = (fst . Loader.assignIndices) $
+ map (\n -> (Node.name n, n)) (Container.elems nl)
+ return (nl, na)) `suchThat`
+ (\(nl, na) -> Container.size nl == Map.size na)
+
-- | Generate a node list, an instance list, and a node graph.
-- We choose instances with nodes contained in the node list.
genNodeGraph :: Gen (Maybe Graph.Graph, Node.List, Instance.List)