]> git.dujemihanovic.xyz Git - u-boot.git/commit
buildman: Add a way to limit the number of buildmans
authorSimon Glass <sjg@chromium.org>
Sun, 23 Jun 2024 17:55:15 +0000 (11:55 -0600)
committerSimon Glass <sjg@chromium.org>
Wed, 3 Jul 2024 06:36:33 +0000 (07:36 +0100)
commit5d679f801d05fb728678c23d75d0113512e43cca
treefe50dee2ae983a336c3be6f3c0b937d88b5be543
parent8941477e02717a7104f8400363979fc3831a4041
buildman: Add a way to limit the number of buildmans

Buildman uses all available CPUs by default, so running more than one or
two concurrent processes is not normally useful.

However in some CI cases we want to be able to run several jobs at once
to save time. For example, in a lab situation we may want to run a test
on 20 boards at a time, since only the build step actually takes much
CPU.

Add an option which allows such a limit. When buildman starts up, it
waits until the number of running processes goes below the limit, then
claims a spot in the list. The list is maintained with a temporary file.

Note that the temp file is user-specific, since it is hard to create a
locked temporary file which can be accessed by any user. In most cases,
only one user is running jobs on a machine, so this should not matter.

Signed-off-by: Simon Glass <sjg@chromium.org>
tools/buildman/buildman.rst
tools/buildman/cmdline.py
tools/buildman/control.py
tools/buildman/pyproject.toml
tools/buildman/test.py
tools/u_boot_pylib/terminal.py