Build Notifier
This utility is part of an XFD (eXtreme Feedback Device) solution designed and built for my employer ChallengePost. It works in conjunction with our Jenkins Continuous Integration server (and its Notification Plugin) and an Arduino powered Traffic Light controller with a pseudo-RESTful API.
To run, you need to create a config.yml
file. The first time you run the
application without any arguments, you will get a sample.
Installation
$ gem install build_status_server
Execution
See the options you can pass in by:
$ build_status_server -h
Configuration file
UDP Server
This section defines what interface and port should the UDP server listen at. The Jenkins' Notification Plugin should be set to this parameters as well.
TCP Client
This section is where we tell the server how to communicate with the web
enabled XFD. In the example case, there is a web server running somewhere
listening on port 4567 that responds to /green
and /red
.
On our installation, this represents the Traffic Light's Arduino web server.
Store
Where the persistent state will be stored.
Mask (optional)
You can decide to either include or ignore certain builds whose names match a given Regular Expression.
Verbose
Whether to display informative output messages.
Development
bin/test_tcp_server
is provided for development purposes only. It behaves
like the server on the
Traffic Light controller
project.