[Buildbot] #3596: Multiple services of same type not working properly
Buildbot trac
trac at buildbot.net
Fri Aug 19 20:11:26 UTC 2016
#3596: Multiple services of same type not working properly
---------------------+-------------------
Reporter: aomighty | Owner:
Type: defect | Status: new
Priority: major | Milestone: 0.9.+
Version: master | Keywords:
---------------------+-------------------
Hi,
I tried to configure my buildbot installation to use multiple services,
but I found that, if given a list of services of the same type, only the
last service in the list takes effect. For example, in the below code:
a = MailNotifier(...)
b = MailNotifier(...)
c['services'] = [a, b]
Only service b will actually get registered. Tracing through the code this
is due to line 757 in config.py, in which services are indexed by name:
self.services[_service.name] = _service
However, each service of the same type gets the same name (in this case,
just "MailNotifier"). In my own code, I have done a workaround of manually
assigning the "name" property to each service to something unique before
setting c['services']. After that, things seem to be working properly.
There's a number of ways to resolve this issue, such as not indexing by
name, automatically generating unique names, or forcing the user to set a
name. As I'm new to the buildbot codebase, I don't know which way is most
appropriate, but I wanted to mention the behavior, as it's very confusing
and required in-depth code reading/debugging to root-cause. Nothing gets
mentioned in the logs, as the other services in the list are silently
clobbered.
Note that I'm using the latest pip version: 0.9.0rc1.
Thanks!
--
Ticket URL: <http://trac.buildbot.net/ticket/3596>
Buildbot <http://buildbot.net/>
Buildbot: build/test automation
More information about the bugs
mailing list