The Buildkite Agent is an open-source toolkit written in Golang for securely running build jobs on any device or network
The buildkite-agent is a small, reliable, and cross-platform build runner that makes it easy to run automated builds on your own infrastructure. It’s main responsibilities are polling buildkite.com for work, running build jobs, reporting back the status code and output log of the job, and uploading the job’s artifacts.
$ buildkite-agent --help
Usage:
buildkite-agent <command> [arguments...]
Available commands are:
start Starts a Buildkite agent
artifact Upload/download artifacts from Buildkite jobs
meta-data Get/set data from Buildkite jobs
pipeline Make changes to the pipeline of the currently running build
help, h Shows a list of commands or help for one command
Use "buildkite-agent <command> --help" for more information about a command.
The agents page on Buildkite has personalised instructions for installing the agent with Ubuntu (via apt), Debian (via apt), Mac OS X (via homebrew), Windows and Linux. You can also run the agent via Docker.
To start an agent all you need is your agent token, which you an find on your Agents page within Buildkite.
$ buildkite-agent start --token
$ docker-compose run agent bash
root@d854f845511a:/go/src/github.com/buildkite/agent# go run *.go start --token xxx --debug
# Make sure you have go installed.
brew install go --cross-compile-common
brew install mercurial
# Setup your GOPATH
export GOPATH="$HOME/Code/go"
export PATH="$HOME/Code/go/bin:$PATH"
# Checkout the code
mkdir -p $GOPATH/src/github.com/buildkite/agent
git clone git@github.com:buildkite/agent.git $GOPATH/src/github.com/buildkite/agent
cd $GOPATH/src/github.com/buildkite/agent
To test the commands locally:
go run *.go start --debug --token "abc123"
git checkout -b my-new-feature)git commit -am 'Add some feature')git push origin my-new-feature)Copyright © 2014-2015 Keith Pitt, Buildkite Pty Ltd. See LICENSE for details.
We use cookies to analyze traffic and improve your experience. You can accept or reject analytics cookies.