Caution
Buildbot no longer supports Python 2.7 on the Buildbot master.
2.5.11. Build Steps¶
BuildStep
s are usually specified in the buildmaster’s configuration file, in a list that goes into the BuildFactory
.
The BuildStep
instances in this list are used as templates to construct new independent copies for each build (so that state can be kept on the BuildStep
in one build without affecting a later build).
Each BuildFactory
can be created with a list of steps, or the factory can be created empty and then steps added to it using the addStep
method:
from buildbot.plugins import util, steps
f = util.BuildFactory()
f.addSteps([
steps.SVN(repourl="http://svn.example.org/Trunk/"),
steps.ShellCommand(command=["make", "all"]),
steps.ShellCommand(command=["make", "test"])
])
The basic behavior for a BuildStep
is to:
run for a while, then stop
possibly invoke some RemoteCommands on the attached worker
possibly produce a set of log files
finish with a status described by one of four values defined in
buildbot.process.results
:SUCCESS
,WARNINGS
,FAILURE
,SKIPPED
provide a list of short strings to describe the step
The rest of this section describes all the standard BuildStep
objects available for use in a Build
, and the parameters which can be used to control each.
A full list of build steps is available in the Build Step Index.
2.5.11.58. Build steps¶
The following build steps are available:
Source checkout steps - used to checkout the source code
Other source-related steps - used to perform non-checkout source operations
ShellCommand steps - used to perform various shell-based operations
Visual C++ (
VC<...>
,VS<...>
,VCExpress9
,MsBuild<...
)
Trigger - triggering other builds
Python build steps - used to perform Python-related build operations
Debian build steps - used to build
deb
packagesDebPbuilder, DebCowBuilder
RPM build steps - used to build
rpm
packagesTransferring Files - used to perform file transfer operations
FileUpload
FileDownload
DirectoryUpload
MultipleFileUpload
StringDownload
JSONStringDownload
JSONPropertiesDownload
HTTP Requests - used to perform HTTP requests
HTTPStep
POST
GET
PUT
DELETE
HEAD
OPTIONS
Worker Filesystem Steps - used to perform filesystem operations on the worker
FileExists
CopyDirectory
RemoveDirectory
MakeDirectory
Master steps - used to perform operations on the build master
LogRenderable - used to log a renderable property for debugging
Assert - used to terminate build depending on condition