---
name: "buildbot"
section: "1"
platform: "linux"
package: "buildbot"
version: "4.2.1-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/buildbot"
---

# buildbot(1)

a tool for managing buildbot master instances

## NAME

buildbot - a tool for managing buildbot master instances

## SYNOPSIS

### General Invocation

**buildbot** \[ **global options** \] *command* \[ **command options** \]

**buildbot** *command* **-h**\|**--help**

### Command Options

**buildbot** create-master \[ **-q**\|**--quiet** \] \[ **-f**\|**--force** \] \[ **-r**\|**--relocatable** \] \[ **-n**\|**--no-logrotate** \] \[ **-s**\|**--log-size** *SIZE* \] \[ **-l**\|**--log-count** *COUNT* \] \[ **-c**\|**--config** *CONFIG* \] \[ **--db** *DATABASE* \] \[ *PATH* \]

**buildbot** upgrade-master \[ **-q**\|**--quiet** \] \[ **-r**\|**--replace** \] \[ **--db** *DATABASE* \] \[ *PATH* \]

**buildbot** \[ **--verbose** \] { **start**\|**stop**\|**restart**\|**sighup**\|**reconfig** } \[ *PATH* \]

**buildbot** sendchange \[ **-m**\|**--master** *MASTER* \] \[ **-u**\|**--username** *USERNAME* \] \[ **-R**\|**--repository** *REPOSITORY* \] \[ **-P**\|**--project** *PROJECT* \] \[ **-b**\|**--branch** *BRANCH* \] \[ **-C**\|**--category** *CATEGORY* \] \[ **-r**\|**--revision** *REVISION* \] \[ **--revision-file** *REVISIONFILE* \] \[ **-p**\|**--property** *PROPERTY* \] \[ **-c**\|**--comments** *MESSAGE* \] \[ **-F**\|**--logfile** *LOGFILE* \] \[ **-w**\|**--when** *TIMESTAMP* \] *FILES*...

**buildbot** try \[ **--wait** \] \[ **-n**\|**--dry-run** \] \[ **--get-builder-names** \] \[ **-c**\|**--connect** {ssh\|pb} \] \[ **--tryhost** *HOSTNAME* \] \[ **--trydir** *PATH* \] \[ **-m**\|**--master** *MASTER* \] \[ **-u**\|**--username** *USERNAME* \] \[ **--passwd** *PASSWORD* \] \[ **--diff** *DIFF* \] \[ **--patchlevel** *PATCHLEVEL* \] \[ **--baserev** *BASEREV* \] \[ **--vc** {cvs\|svn\|tla\|baz\|darcs\|p4} \] \[ **--branch** *BRANCH* \] \[ **-b**\|**--builder** *BUILDER* \] \[ **--properties** *PROPERTIES* \] \[ **--try-topfile** *FILE* \] \[ **--try-topdir** *PATH* \]

**buildbot** tryserver \[ **--jobdir** *PATH* \]

**buildbot** checkconfig \[ *CONFIGFILE* \]

**buildbot** \[ **--verbose** \] { **start**\|**stop**\|**restart**\|**sighup**\|**reconfig** } \[ *PATH* \]

**buildbot** \[ **--verbose** \] { **--help**\|**--version** }

## DESCRIPTION

The \`buildbot' command-line tool can be used to start or stop a buildmaster and to interact with a running buildmaster instance. Some of its subcommands are intended for buildmaster admins, while some are for developers who are editing the code that the buildbot is monitoring.

## OPTIONS

### Commands

- **create-master**

  Create and populate a directory for a new buildmaster

- **upgrade-master**

  Upgrade an existing buildmaster directory for the current version

- **start**

  Start a buildmaster

- **stop**

  Stop a buildmaster

- **restart**

  Restart a buildmaster

- **sighup**\|**reconfig**

  Send SIGHUP signal to buildmaster to make it re-read the config file

- **sendchange**

  Send a change to the buildmaster

- **try**

  Run a build with your local changes. This command requires in-advance configuration of the buildmaster to accept such build requests. Please see the documentation for details about this command.

- **tryserver**

  buildmaster-side ´try´ support function, not for users

- **checkconfig**

  Validate buildbot master config file.

### Global options

- **-h**\|**--help**

  Print the list of available commands and global options. All subsequent commands are ignored.

- **--version**

  Print Buildbot and Twisted versions. All subsequent commands are ignored.

- **--verbose**

  Verbose output.

### create-master command options

- **-q**\|**--quiet**

  Do not emit the commands being run

- **-f**\|**--force**

  Re-use an existing directory (will not overwrite master.cfg file)

- **-r**\|**--relocatable**

  Create a relocatable buildbot.tac

- **-n**\|**--no-logrotate**

  Do not permit buildmaster rotate logs by itself.

- **-c**\|**--config**

  Set name of the buildbot master config file to *CONFIG*. Default file name is master.cfg.

- **-s**\|**--log-size**

  Set size at which twisted lof file is rotated to *SIZE* bytes. Default value is 1000000 bytes.

- **-l**\|**--log-count**

  Limit the number of kept old twisted log files to *COUNT*. All files are kept by default.

- **--db**

  Set the database connection for storing scheduler/status state to *DATABASE*. Default value is **sqlite:///state.sqlite**.

- *PATH*

  Directory where buildbot master files will be stored.

### upgrade-master command options

- **-q**\|**--quiet**

  Do not emit the commands being run.

- **-r**\|**--replace**

  Replace any modified files without confirmation.

- **--db**

  Set the database connection for storing scheduler/status state to *DATABASE*. Default value is **sqlite:///state.sqlite**.

- *PATH*

  Directory where buildbot master files are stored.

### sendchange command options

- **--master**

  Set the location of buildmaster's PBChangeSource to attach to in form *HOST*:*PORT*.

- **-u**\|**--username**

  Set committer's username to *USERNAME*.

- **-R**\|**--repository**

  Set repository URL to *REPOSITORY*.

- **-P**\|**--project**

  Set project specifier to *PROJECT*.

- **-b**\|**--branch**

  Set branch name to *BRANCH*.

- **-c**\|**--category**

  Set category of repository to *CATEGORY*.

- **-r**\|**--revision**

  Set revision being built to *REVISION*.

- **--revision-file**

  Use *REVISIONFILE* file to read revision spec data from.

- **-p**\|**--property**

  Set property for the change to *PROPERTY*. It should be in format *NAME*:*VALUE*.

- **-m**\|**--comments**

  Set log message to *MESSAGE*.

- **-F**\|**--logfile**

  Set logfile to *LOGFILE*.

- **-w**\|**--when**

  Set timestamp used as the change time to *TIMESTAMP*.

- *FILES*

  Lis of files have been changed.

### try command options

- **--wait**

  Wait until the builds have finished.

- **-n**\|**--dry-run**

  Gather info, but don't actually submit.

- **--get-builder-names**

  Get the names of available builders. Doesn't submit anything. Only supported for 'pb' connections.

- **-c**\|**--connect**

  Connection type. Can be either ´ssh´ or ´pb´.

- **--tryhost**

  Set the hostname (used by ssh) for the buildmaster to *HOSTNAME*.

- **--trydir**

  Specify trydir (on the tryhost) where tryjobs are deposited.

- **-m**\|**--master**

  Set the location of the buildmaster's try scheduler in form *HOST*:*PORT*

- **-u**\|**--username**

  Set the username performing the trial build to *USERNAME*.

- **--passwd**

  Set password for PB authentication to *PASSWORD*.

- **--diff**

  Use *DIFF* file to use as a patch instead of scanning a local tree. Use ´-´ for stdin.

- **--patchlevel**

  Specify the patchlevel to apply with. Defaults to 0. See **patch** for details.

- **--baserev**

  Use *BASEREV* revision instead of scanning a local tree.

- **--vc**

  Specify version control system in use. Possible values: cvs, svn, tla, baz, darcs, p4.

- **--branch**

  Specify the branch in use, for VC systems that can't figure it out themselves.

- **-b**\|**--builder**

  Run the trial build on the specified Builder. Can be used multiple times.

- **--properties**

  Specify the set of properties made available in the build environment in format *prop1*=*value1*,*prop2*=*value2*...

- **--try-topfile**

  Specify name of a file at the top of the tree. This option is used to find the top. Only needed for SVN and CVS.

- **--try-topdir**

  Specify the path to the top of the working copy. Only needed for SVN and CVS.

### tryserver command options

- **--jobdir**

  The jobdir (maildir) for submitting jobs

## FILES

- master.cfg

  Buildbot master configuration file

## SEE ALSO

[**buildbot-worker**(1)](/buildbot-worker/1.md), [**patch**(1)](/patch/1.md)
