Revision cd46f3b4 lib/cmdlib.py
b/lib/cmdlib.py | ||
---|---|---|
2155 | 2155 |
"NODE_NAME": self.op.node_name, |
2156 | 2156 |
} |
2157 | 2157 |
all_nodes = self.cfg.GetNodeList() |
2158 |
all_nodes.remove(self.op.node_name) |
|
2158 |
if self.op.node_name in all_nodes: |
|
2159 |
all_nodes.remove(self.op.node_name) |
|
2159 | 2160 |
return env, all_nodes, all_nodes |
2160 | 2161 |
|
2161 | 2162 |
def CheckPrereq(self): |
... | ... | |
2198 | 2199 |
|
2199 | 2200 |
self.context.RemoveNode(node.name) |
2200 | 2201 |
|
2202 |
# Run post hooks on the node before it's removed |
|
2203 |
hm = self.proc.hmclass(self.rpc.call_hooks_runner, self) |
|
2204 |
try: |
|
2205 |
h_results = hm.RunPhase(constants.HOOKS_PHASE_POST, [node.name]) |
|
2206 |
finally: |
|
2207 |
res = h_results[node.name] |
|
2208 |
if res.fail_msg: |
|
2209 |
if not res.offline: |
|
2210 |
self.LogError("Failed to start hooks on %s: %s" % |
|
2211 |
(node.name, res.fail_msg)) |
|
2212 |
for script, hkr, output in res.payload: |
|
2213 |
if hkr != constants.HKR_FAIL: |
|
2214 |
continue |
|
2215 |
if output: |
|
2216 |
self.LogWarning("On %s script %s failed, output: %s" % |
|
2217 |
(node.name, script, output)) |
|
2218 |
else: |
|
2219 |
self.LogWarning("On %s script %s failed (no output)." % |
|
2220 |
(node.name, script)) |
|
2221 |
|
|
2201 | 2222 |
result = self.rpc.call_node_leave_cluster(node.name) |
2202 | 2223 |
msg = result.fail_msg |
2203 | 2224 |
if msg: |
Also available in: Unified diff