The feature list
Your scripts, several at once, in one window.
Everything BuildPilot does, in one list. What it leaves alone is on the Why page.
What it does
- Remembers your builds. An operation is one or more
steps run in order, a working directory and a name.
.ps1,.bat,.cmd,.exe,.comand.pyrun out of the box; Settings maps any other type to the program that runs it. - Finds them for you. Point Add at a project folder (or a
folder of projects) and it proposes the build it recognises:
build.ps1alone, elsebuildexe.pythenbuildinstaller.py. Nothing is added until you confirm. - Uses your Python environment. A
venvin the project is found and activated for each step; an environment left active in your shell is undone first. - Runs several at once. Each run is its own process, with its state shown by a glyph and in words, plus the elapsed time. Tick rows to start them together. Two builds never share a folder.
- Knows how long a build takes. Beneath each row's status sits its typical build time: the median of its last five successful runs, so one slow build does not skew it. It is remembered when BuildPilot restarts, so a running build always has a yardstick.
- Shows output live. The tray follows the latest line until you scroll up. A line wider than the tray wraps rather than being cut off. Lines are plain whatever stream they came on; the run's outcome closes it in green, red or grey.
- Stops the whole tree. Stop ends the script and every process it started, through a Windows job object.
- Launches the installer it built. Beside Stop, Launch
installer starts the project's setup program: the one set in Edit, else
the folder's name plus
Setup.exeindist-installerordist. It waits while the build runs and after one that was stopped or failed.