Repository :
http://git.fedorahosted.org/cgit/copr.git
On branch : master
---------------------------------------------------------------
commit 4aa7e7eced8c1166fbd2b75eef66cc6ef06ea2d7
Author: Valentin Gologuzov <vgologuz(a)redhat.com>
Date: Fri Jan 16 11:42:58 2015 +0100
[backend] daemons.dispatched.Worker: don't fail when wrong group_id was provided
(bug was detected by TestDispatcher.test_terminate_instance_missed_playbook)
---------------------------------------------------------------
backend/backend/daemons/dispatcher.py | 13 +++++++++++--
1 files changed, 11 insertions(+), 2 deletions(-)
diff --git a/backend/backend/daemons/dispatcher.py
b/backend/backend/daemons/dispatcher.py
index 9ef2e97..c71601e 100644
--- a/backend/backend/daemons/dispatcher.py
+++ b/backend/backend/daemons/dispatcher.py
@@ -111,7 +111,7 @@ class Worker(multiprocessing.Process):
self.callback = callback
if not self.callback:
log_name = "worker-{0}-{1}.log".format(
- self.opts.build_groups[self.group_id]["name"],
+ self.group_name,
self.worker_num)
self.logfile = os.path.join(self.opts.worker_logdir, log_name)
@@ -121,6 +121,15 @@ class Worker(multiprocessing.Process):
self.vm_ip = None
self.callback.log("creating worker: dynamic ip")
+ @property
+ def group_name(self):
+ try:
+ return self.opts.build_groups[self.group_id]["name"]
+ except Exception as error:
+ self.callback.log("Failed to get builder group name from config, using
group_id as name."
+ "Original error: {}".format(error))
+ return self.group_id
+
def event(self, topic, template, content=None):
""" Multi-purpose logging method.
@@ -610,7 +619,7 @@ class Worker(multiprocessing.Process):
self.terminate_instance()
def update_process_title(self, suffix=None):
- title = "worker-{} {}
".format(self.opts.build_groups[self.group_id]["name"], self.worker_num)
+ title = "worker-{} {} ".format(self.group_name, self.worker_num)
if self.vm_ip:
title += "VM_IP={} ".format(self.vm_ip)
if self.vm_name: