Giter VIP home page Giter VIP logo

agent's Introduction

Buildkite Agent Build status

Note: This is the 3.0 development branch of the buildkite-agent, and may not contain files or code in the current stable release. To see code or submit PRs for stable agent versions, please use the corresponding maintenance branch: 2.5.x.

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.

Full documentation is available at buildkite.com/docs/agent

$ 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
  bootstrap	Run a Buildkite job locally
  help, h	Shows a list of commands or help for one command

Use "buildkite-agent <command> --help" for more information about a command.

Installing

The agents page on Buildkite has personalised instructions for installing the agent with Ubuntu (via apt), Debian (via apt), macOS (via homebrew), Windows and Linux. You can also run the agent via Docker.

Starting

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

Development

With Docker

$ docker-compose run agent bash
root@d854f845511a:/go/src/github.com/buildkite/agent# go run *.go start --token xxx --debug

Without Docker

# Make sure you have go installed.
brew install go

# Setup your GOPATH
export GOPATH="$HOME/Code/go"
export PATH="$HOME/Code/go/bin:$PATH"

# Checkout the code
go get github.com/buildkite/agent
cd "$GOPATH/src/github.com/buildkite/agent"

To test the commands locally:

go run main.go start --debug --token "abc123"

Dependency management

We're using govendor to manage our Go depenencies. Install it with:

go get github.com/kardianos/govendor

If you introduce a new package, just add the import to your source file and run:

govendor fetch +missing

Or explicitly fetch it with a version using:

govendor fetch github.com/buildkite/[email protected]

Check out the govendor repo and dev guide for more docs.

Contributing

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request

Copyright

Copyright (c) 2014-2016 Keith Pitt, Buildkite Pty Ltd. See LICENSE for details.

agent's People

Contributors

keithpitt avatar toolmantim avatar sj26 avatar kouky avatar tommeier avatar grosskur avatar wolfeidau avatar jnewbigin avatar davidk-zenefits avatar bendrucker avatar caiofbpa avatar byroot avatar tekacs avatar daveoflynn avatar samritchie avatar ruby0x1 avatar skevy avatar alexjurkiewicz avatar bradfeehan avatar colinrymer avatar cab avatar dch avatar dgoodlad avatar glenngillen avatar jgavris avatar joelmoss avatar silarsis avatar essen avatar nikyoudale avatar pda avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.