4b48c0c912
Correctly nice and ionice the worker processes.
...
This had stopped working.
Unfortunately it doesn't seem to help anyway.
Ideally the responsiveness of the interface is the same, regardless
of whether the workers are paused or not. Atm its much better when
they are paused.
2016-11-09 23:52:12 +01:00
ca33199456
Pause workers and their subprocesses together.
...
Before only the worker was paused and the current job was
running to completion.
2016-11-09 19:00:56 +01:00
60fe921881
Let vigil run without sudo.
...
Now using user namespaces which allow unprivileged users to create
the sandbox.
2016-11-09 01:30:40 +01:00
edee5e6b58
Log the exception if the worker fails.
2016-10-21 23:20:06 +02:00
9a07571d75
Coding style.
2016-10-18 13:03:35 +02:00
9d143a4dd9
Coding style (linting).
2016-10-16 12:32:01 +02:00
71dc9df58c
Using the new coroutine syntax from pep-492.
2016-10-16 12:10:22 +02:00
6455271aa0
Put a hole in the sandbox once. Not once per worker.
2016-03-14 08:02:01 +00:00
ccdd89fa28
Coding style.
...
Moved Runner class into worker.py and renamed it to Worker.
2016-03-10 00:36:59 +00:00
4fa5b524d4
Coding style.
...
Using asyncio coroutines for workers instead of threads.
2016-03-09 10:47:09 +00:00
ec0c98abb3
Coding style.
2016-02-24 09:27:37 +00:00
4919a1ed2a
Coding style.
...
More consistent leading underscores.
2016-02-15 14:11:08 +00:00
2373e78cbd
Coding style.
...
Moved the Result class into tools, which simplifies worker.py and makes the
circular import problem go away.
2016-02-13 18:48:53 +00:00
e8411269ca
Coding style.
...
Make tools.Status into an enumeration.
2016-02-09 09:38:58 +00:00
721cc28d03
Run all tools in a filesystem sandbox
2016-01-21 23:22:42 +00:00