Revision 9f774ee8
b/lib/jqueue.py | ||
---|---|---|
330 | 330 |
def AddNode(self, node_name): |
331 | 331 |
assert node_name != self._my_hostname |
332 | 332 |
|
333 |
# TODO: Clean queue directory on added node |
|
333 |
# Clean queue directory on added node |
|
334 |
rpc.call_jobqueue_purge(node_name) |
|
334 | 335 |
|
335 | 336 |
# Upload the whole queue excluding archived jobs |
336 | 337 |
files = [self._GetJobPath(job_id) for job_id in self._GetJobIDsUnlocked()] |
... | ... | |
339 | 340 |
files.append(constants.JOB_QUEUE_SERIAL_FILE) |
340 | 341 |
|
341 | 342 |
for file_name in files: |
342 |
result = rpc.call_upload_file([node_name], file_name) |
|
343 |
# Read file content |
|
344 |
fd = open(file_name, "r") |
|
345 |
try: |
|
346 |
content = fd.read() |
|
347 |
finally: |
|
348 |
fd.close() |
|
349 |
|
|
350 |
result = rpc.call_jobqueue_update([node_name], file_name, content) |
|
343 | 351 |
if not result[node_name]: |
344 | 352 |
logging.error("Failed to upload %s to %s", file_name, node_name) |
345 | 353 |
|
... | ... | |
361 | 369 |
utils.WriteFile(file_name, data=data) |
362 | 370 |
|
363 | 371 |
failed_nodes = 0 |
364 |
result = rpc.call_upload_file(self._nodes, file_name)
|
|
372 |
result = rpc.call_jobqueue_update(self._nodes, file_name, data)
|
|
365 | 373 |
for node in self._nodes: |
366 | 374 |
if not result[node]: |
367 | 375 |
failed_nodes += 1 |
Also available in: Unified diff