Git Product home page Git Product logo

ci-clyde's Introduction

ci-clyde

A custom extension module for Clyde, to check a CI server for build status and set the eye color accordingly.

design

Clyde prominantly features a large "eye" backlit by a few RGB LEDs, we can use this to display at-a-glance information about the current state of important CI builds for our team.

To start, this will focus on communicating with a Bamboo CI server, though in the future may be extended to any CI tool with a REST interface.

Checking the status of one plan, we can tell if it is actively building at the moment, or not. Similarly, we can tell if the most recently completed build was successful or not. The success/failure status will be conveyed by changing the hue of the light, with green denoting success, and red denoting failure. When a build is underway, we will pulse the light to indicate activity, keeping the color of the previous build until it finishes, then updaiting as necessary.

development

Clyde runs on the Atmel MEGA32U4, which is fully Arduino compatible. This makes it relatively easy to load custom code onto the chip and achieve whatever behavior we'd like from the lights. Since Clyde does not have any wireless communication included, additional hardware is needed to accomplish the goal of communicating with a CI web server. The original intention of the kickstarter was to include extension modules that would add functionality, and so this project aims to create a custom module to fit that pattern (roughly).

environment

Since Clyde is rather old, the official repository does not work smoothly with the latest version of the Arduino IDE and avrdude. Rather than try to update it, older versions of the Arduino IDE are available from the Arduino website, and using 1.0.5-r2 seems to work without issue.

That being said, programming the ESP8266 is much easier with the latest libraries, especially considering that I2C support was not added to the library until ~2018, so programming for the wifi add-on module should be done in whatever most recent version is available, with the latest ESP8266 boards and libraries.

ci-clyde's People

Contributors

ssalanski avatar

Watchers

 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.