Revision d0cb68cb

b/qa/ganeti-qa.py
363 363
  if qa_config.TestEnabled('tags'):
364 364
    RunTest(qa_tags.TestClusterTags)
365 365

  
366
  if qa_config.TestEnabled('node-readd'):
367
    master = qa_config.GetMasterNode()
368
    pnode = qa_config.AcquireNode(exclude=master)
369
    try:
366
  pnode = qa_config.AcquireNode(exclude=qa_config.GetMasterNode())
367
  try:
368
    if qa_config.TestEnabled('node-readd'):
370 369
      RunTest(qa_node.TestNodeReadd, pnode)
371
    finally:
372
      qa_config.ReleaseNode(pnode)
370

  
371
    if qa_config.TestEnabled("node-modify"):
372
      RunTest(qa_node.TestNodeModify, pnode)
373
  finally:
374
    qa_config.ReleaseNode(pnode)
373 375

  
374 376
  pnode = qa_config.AcquireNode()
375 377
  try:
b/qa/qa-sample.json
55 55
    "node-volumes": true,
56 56
    "node-readd": true,
57 57
    "node-storage": true,
58
    "node-modify": true,
58 59

  
59 60
    "# This test needs at least three nodes": null,
60 61
    "node-evacuate": false,
b/qa/qa_node.py
219 219
                         utils.ShellQuoteArgs(cmd)).wait(), 0)
220 220
  finally:
221 221
    qa_config.ReleaseNode(node3)
222

  
223

  
224
def TestNodeModify(node):
225
  """gnt-node modify"""
226
  master = qa_config.GetMasterNode()
227

  
228
  for flag in ["master-candidate", "drained", "offline"]:
229
    for value in ["yes", "no"]:
230
      cmd = ["gnt-node", "modify", "--force",
231
             "--%s=%s" % (flag, value), node["primary"]]
232
      AssertEqual(StartSSH(master["primary"],
233
                           utils.ShellQuoteArgs(cmd)).wait(), 0)
234

  
235
  cmd = ["gnt-node", "modify", "--master-candidate=yes", "--auto-promote",
236
         node["primary"]]
237
  AssertEqual(StartSSH(master["primary"],
238
                       utils.ShellQuoteArgs(cmd)).wait(), 0)

Also available in: Unified diff