Revision 8de8e68d
b/lib/rapi/client.py | ||
---|---|---|
1427 | 1427 |
("/%s/nodes/%s/role" % |
1428 | 1428 |
(GANETI_RAPI_VERSION, node)), None, None) |
1429 | 1429 |
|
1430 |
def SetNodeRole(self, node, role, force=False): |
|
1430 |
def SetNodeRole(self, node, role, force=False, auto_promote=None):
|
|
1431 | 1431 |
"""Sets the role for a node. |
1432 | 1432 |
|
1433 | 1433 |
@type node: str |
... | ... | |
1436 | 1436 |
@param role: the role to set for the node |
1437 | 1437 |
@type force: bool |
1438 | 1438 |
@param force: whether to force the role change |
1439 |
@type auto_promote: bool |
|
1440 |
@param auto_promote: Whether node(s) should be promoted to master candidate |
|
1441 |
if necessary |
|
1439 | 1442 |
|
1440 | 1443 |
@rtype: string |
1441 | 1444 |
@return: job id |
... | ... | |
1445 | 1448 |
("force", force), |
1446 | 1449 |
] |
1447 | 1450 |
|
1451 |
if auto_promote is not None: |
|
1452 |
query.append(("auto-promote", auto_promote)) |
|
1453 |
|
|
1448 | 1454 |
return self._SendRequest(HTTP_PUT, |
1449 | 1455 |
("/%s/nodes/%s/role" % |
1450 | 1456 |
(GANETI_RAPI_VERSION, node)), query, role) |
b/lib/rapi/rlib2.py | ||
---|---|---|
415 | 415 |
node_name = self.items[0] |
416 | 416 |
role = self.request_body |
417 | 417 |
|
418 |
auto_promote = bool(self._checkIntVariable("auto-promote")) |
|
419 |
|
|
418 | 420 |
if role == _NR_REGULAR: |
419 | 421 |
candidate = False |
420 | 422 |
offline = False |
... | ... | |
439 | 441 |
master_candidate=candidate, |
440 | 442 |
offline=offline, |
441 | 443 |
drained=drained, |
444 |
auto_promote=auto_promote, |
|
442 | 445 |
force=bool(self.useForce())) |
443 | 446 |
|
444 | 447 |
return baserlib.SubmitJob([op]) |
Also available in: Unified diff