zuul/zuul
James E. Blair 0c45d8899f Executor: stop jobs in parallel on shutdown
When shutting down, tell all of the jobs to stop, then wait for
all of them to complete.

Also, add a lock around starting jobs so that the list of running
jobs is guaranteed to be consistent.

Also fix a shutdown sequencing bug.  It was possible for us to shut down
the internal repo update thread while jobs were still waiting on it.  This
would cause those jobs never to stop.  Fix this by ensuring that we get
no new jobs, then stop all the jobs, then stop the update thread.

Because we want to wait for the update thread to complete, we join it in
the stop() method.  That seems to make the join() method redundant, so
move all of the joins to stop().

Change-Id: I12422d3b445892be3e50963c9edafe3904698bff
2017-10-16 15:17:08 -07:00
..
ansible Fix path exclusions 2017-10-05 15:47:52 -05:00
cmd Switch statsd config to zuul.conf 2017-10-13 14:04:42 -07:00
connection Switch statsd config to zuul.conf 2017-10-13 14:04:42 -07:00
driver Fix sql reporting start/end times 2017-09-28 17:10:25 -07:00
execution_context Add wrapper driver execution context 2017-08-18 16:35:12 -07:00
executor Executor: stop jobs in parallel on shutdown 2017-10-16 15:17:08 -07:00
lib Switch statsd config to zuul.conf 2017-10-13 14:04:42 -07:00
manager Merge "Mask dependent config errors" into feature/zuulv3 2017-10-10 20:13:36 +00:00
merger Add git timeout 2017-10-10 08:10:20 -07:00
reporter Return executor errors to user 2017-07-18 14:19:11 -07:00
source Optionally limit github to protected branches 2017-08-03 11:50:26 +02:00
sphinx Add zuul-sphinx as a requirement 2017-08-07 14:56:17 -07:00
trigger Remove use of six library 2017-06-19 10:34:57 -05:00
web We should await ws.send_str() 2017-09-26 16:31:55 -04:00
__init__.py Initial commit. 2012-05-29 14:49:32 -07:00
change_matcher.py Fix branch matching logic 2017-10-02 17:30:51 -04:00
configloader.py Ignore parents on job variants 2017-10-15 18:06:37 -07:00
exceptions.py Support post jobs by supporting rev checkout 2016-07-12 12:51:51 +10:00
model.py Emit some nodepool stats 2017-10-13 15:56:59 -07:00
nodepool.py Emit some nodepool stats 2017-10-13 15:56:59 -07:00
rpcclient.py Fix autohold RPC protocol 2017-07-31 16:16:36 -04:00
rpclistener.py Fix autohold RPC protocol 2017-07-31 16:16:36 -04:00
scheduler.py Merge "Switch statsd config to zuul.conf" into feature/zuulv3 2017-10-13 23:22:12 +00:00
version.py Migrate to pbr. 2013-06-25 19:04:30 +00:00
webapp.py Return 404 on unknown tenants 2017-08-17 09:54:08 -07:00
zk.py Better exception handling during autohold 2017-10-13 11:26:45 -04:00