Revision d833acc6
b/lib/client/gnt_node.py | ||
---|---|---|
163 | 163 |
readd = opts.readd |
164 | 164 |
|
165 | 165 |
try: |
166 |
output = cl.QueryNodes(names=[node], fields=['name', 'sip'], |
|
166 |
output = cl.QueryNodes(names=[node], fields=['name', 'sip', 'master'],
|
|
167 | 167 |
use_locking=False) |
168 |
node_exists, sip = output[0] |
|
168 |
node_exists, sip, is_master = output[0]
|
|
169 | 169 |
except (errors.OpPrereqError, errors.OpExecError): |
170 | 170 |
node_exists = "" |
171 | 171 |
sip = None |
... | ... | |
175 | 175 |
ToStderr("Node %s not in the cluster" |
176 | 176 |
" - please retry without '--readd'", node) |
177 | 177 |
return 1 |
178 |
if is_master: |
|
179 |
ToStderr("Node %s is the master, cannot readd", node) |
|
180 |
return 1 |
|
178 | 181 |
else: |
179 | 182 |
if node_exists: |
180 | 183 |
ToStderr("Node %s already in the cluster (as %s)" |
b/lib/cmdlib.py | ||
---|---|---|
4053 | 4053 |
self.hostname = netutils.GetHostname(name=self.op.node_name, |
4054 | 4054 |
family=self.primary_ip_family) |
4055 | 4055 |
self.op.node_name = self.hostname.name |
4056 |
|
|
4057 |
if self.op.readd and self.op.node_name == self.cfg.GetMasterNode(): |
|
4058 |
raise errors.OpPrereqError("Cannot readd the master node", |
|
4059 |
errors.ECODE_STATE) |
|
4060 |
|
|
4056 | 4061 |
if self.op.readd and self.op.group: |
4057 | 4062 |
raise errors.OpPrereqError("Cannot pass a node group when a node is" |
4058 | 4063 |
" being readded", errors.ECODE_INVAL) |
Also available in: Unified diff