Giter Site home page Giter Site logo

wolfeidau / agent Goto Github PK

View Code? Open in Web Editor NEW

This project forked from buildkite/agent

0.0 3.0 0.0 22.44 MB

The Buildkite Agent is an open-source toolkit written in Golang for securely running build jobs on any device or network

Home Page: https://buildkite.com/

License: MIT License

Ruby 0.73% Go 88.14% Shell 8.66% Batchfile 0.01% PowerShell 2.11% Dockerfile 0.36%

agent's Introduction

Buildkite Agent Build status

Note: This is the development branch of the buildkite-agent, and may not contain files or code in the current stable release.

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
  annotate   Annotate the build page within the Buildkite UI with text from within a Buildkite job
  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
  step       Make changes to a step (this includes any jobs that were created from the step)
  bootstrap  Run a Buildkite job locally
  help       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 can find on your Agents page within Buildkite.

buildkite-agent start --token

Development

These instructions assume you are running a recent macOS, but could easily be adapted to Linux and Windows.

# Make sure you have go 1.11+ installed.
brew install go

# Download the code somewhere, no GOPATH required
git clone https://github.com/buildkite/agent.git
cd agent

# Create a temporary builds directory
mkdir /tmp/buildkite-builds

# Build an agent binary and start the agent
go build -i -o /usr/local/bin/buildkite-agent .
buildkite-agent start --debug --build-path=/tmp/buildkite-builds --token "abc"

# Or, run the agent directly and skip the build step
go run *.go start --debug --build-path=/tmp/buildkite-builds --token "abc"

Dependency management

We're using Go 1.12+ and Go Modules to manage our Go dependencies. We are keeping the dependencies vendored to remain backwards compatible with older go versions.

If you are using Go 1.11+ and have the agent in your GOPATH, you will need to enable modules via the environment variable:

export GO111MODULE=on

If you introduce a new package:

go get github.com/my/new/package

Then you can write that package to the vendor/ with:

go mod vendor

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

Contributors

Many thanks to our fine contributors! @adill, @airhorns, @alexjurkiewicz, @bendrucker, @bradfeehan, @byroot, @cab, @caiofbpa, @colinrymer, @cysp, @daveoflynn, @daveoxley, @daveslutzkin, @davidk-zenefits, @DazWorrall, @dch, @deoxxa, @dgoodlad, @donpinkster, @essen, @grosskur, @jgavris, @joelmoss, @jules2689, @julianwa, @kouky, @marius92mc, @mirdhyn, @mousavian, @nikyoudale, @pda, @rprieto, @samritchie, @silarsis, @skevy, @stefanmb, @tekacs, @theojulienne, @tommeier, @underscorediscovery, and @wolfeidau.

Copyright

Copyright (c) 2014-2019 Buildkite Pty Ltd. See LICENSE for details.

agent's People

Contributors

adill avatar airhorns avatar bendrucker avatar blueimp avatar byroot avatar caiofbpa avatar conorgil avatar daveoflynn avatar davidk-zenefits avatar dazworrall avatar derekmarcotte avatar garypwhite avatar grosskur avatar harrietgrace avatar jnewbigin avatar keithpitt avatar kouky avatar kuroneko avatar lox avatar pda avatar petercgrant avatar ruby0x1 avatar samritchie avatar sj26 avatar stefanmb avatar tekacs avatar ticky avatar tommeier avatar toolmantim avatar wolfeidau avatar

Watchers

 avatar  avatar  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.