Skip to content

nbari/buildbot-dashboard

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

buildbot-dashboard Join the chat at https://gitter.im/ghophp/buildbot-dashboard

If you have a CI/CD setup, it is really important to keep a central display and follow the builds and process going on the CI tool. This project aims to be the dashboard that will allow you to do present better results at a central display with buildbot.

Download Build Status

The project has some precompiled binaries, if your enviroment match one of the releases above, this is the most simple way to use this project.

Running

buildbot is the only required flag, you must provide the base url of the running builbot.

$ ./buildbot_dashboard -h
-buildbot string
	buildbot url eg. http://10.0.0.1/
-empty
	show builders with no builds (default false)
-filter string
	regex applied over the builder name
-invalidate int
	cache invalidate in seconds (default and min 5 minutes) (default 10)
-refresh int
	refresh rate in seconds (default and min 10 seconds) (default 10)
-size string
	generic ui size (small|large default large) (default "large")

Port and Logs

As this project is build over martini please consider setting this env variables when deploy:

export PORT=3000
export MARTINI_ENV=production

Manual Build

As this project is built in go you can build it in multiple platforms with:

$ go get -u github.com/ghophp/buildbot-dashboard
$ cd $GOPATH/src/github.com/ghophp/buildbot-dashboard
$ ./install.sh

This will fetch the code and generate the assets as binary, then you can go install or go build, and then run:

$ buildbot-dashboard --buildbot="http://10.0.0.1/"

If you have $GOPATH/bin at your $PATH then you can run from everywhere the command.

You can also run with the go run with:

$ go run *.go -builbot="http://10.0.0.1/"

Features

  • Non-reload monitoring through websockets
  • Enhanced UI with better visualization of the builders
  • Easy usage with single command (binary assets)
  • Filter options allow you to just show what matters
  • Base64 communication with websockets (light)
  • Save arrangement of the dashboard

Preview

Apache Board

Apache Board Small

runit

When using runit this schema can be used:

/services
`--buildbot-dashboard
   |--app (The buildbot-dashboard binary)
   |--env
   |  `--PORT
   |--run (run script)
   `--log
    |--main/
    `--run (run script for log)

Contents of env/PORT (the environment var):

8080

Contents of run:

#!/bin/sh

# get both standar output/error
exec 2>&1

# run like user buildbot
exec chpst -u buildbot -e ./env ./app --buildbot="http://10.0.0.1:8010"

Contents of log/run:

#!/bin/sh
exec svlogd -tt ./main

Todo

  • Use violetear
  • Allow a totally compressed size to boards with a lot of builders
  • Create a fully adapted mode, that by the size of the display, and the number of the projects, keep "walking" through the multiple screens

About

buildbot dashboard optimised for central displays

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • CSS 46.9%
  • Go 28.3%
  • JavaScript 19.2%
  • HTML 3.9%
  • Makefile 1.7%