Age | Commit message (Collapse) | Author | |
---|---|---|---|
2021-10-26 | runner: move more code into the actual task process | Matthias Schiffer | |
Leave only the jobserver token handling in the task spawner process. | |||
2021-10-26 | runner: pass jobserver to task handler as reference | Matthias Schiffer | |
Some code simplification. | |||
2021-10-26 | runner: handle reaping and requests in the poll loop | Matthias Schiffer | |
2021-10-26 | runner: wait for signals using poll() | Matthias Schiffer | |
2021-10-26 | runner: use signal fd to wait for exiting child processes | Matthias Schiffer | |
Will be used to poll for new tasks and signals in the same process. | |||
2021-10-26 | executor: context: remove unneeded Serialize impl on TaskRef/OutputRef | Matthias Schiffer | |
2021-10-26 | Replace ipc-channel with UNIX sockets and manual FD passing | Matthias Schiffer | |
The new implementation is more flexible, as it allows mixed polling with other FD types, and it saves us a whole zoo of dependencies. | |||
2021-10-26 | Switch to 2021 edition | Matthias Schiffer | |
2021-10-26 | runner: hold lock on task state dir while task is running | Matthias Schiffer | |
Do not allow concurrent runs of the same task. | |||
2021-10-26 | runner: do not delete whole task dir, only layer and work dir | Matthias Schiffer | |
We will also store a lockfile in the taskdir that must not be deleted. | |||
2021-10-26 | runner: make lock() function more generic | Matthias Schiffer | |
2021-10-25 | Allow to set the maximum number of jobs on the command line | Matthias Schiffer | |
2021-10-25 | Add lockfile for build state directory | Matthias Schiffer | |
Use flock() to ensure that there are no concurrent instances using the same build state. More fine-gained locking may be implemented in the future. | |||
2021-10-25 | Move main crate to subdirectory | Matthias Schiffer | |
2021-10-25 | Move runner into separate crate | Matthias Schiffer | |
2021-10-24 | Split defintions used by both runner and executor into separate crate | Matthias Schiffer | |
Also get rid of the Runner trait - different runner implementations do not make sense with our current design. |