No description, website, or topics provided.
Clone or download
Pull request Compare This branch is 9 commits ahead of wolfs:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
config
gradle/wrapper
src
.gitignore
.travis.yml
LICENSE
README.md
build.gradle
gradlew
gradlew.bat
settings.gradle

README.md

Build Status

jenkins-rss-retaliation

Uses the jenkins rss feed to control various extreme feedback devices. Inspired by Retaliation. Currently supported are:

In order to use the latest released version, download the application zip from bintray. Then create a configuration file config.groovy in the conf directory in the unzipped application directory.

Command Line

  • stalk - Polls the rss feed an triggers the feedback device(s)
  • say - uses Google Text To Speech to say a word
  • shootAt - triggers the missile launcher to shoot at the given culprits
  • left 1000 - moves the missile launcher 1000 milliseconds to the left
  • right | up | down 500 - same with other directions
  • ledOn | ledOff - switches the led on and off
  • fire - fires the missile launcher

Example configuration

config.groovy:

rssFeedUrl='http://localhost:8080/rssFailed' // rss-feed from Jenkins
pollInterval=10000 // Poll interval for the rss-Feed
feedbackDevices=['tts'] // Active feedback devices. Possible entries: missile, tts, trafficLight
feedbackInParallel=false // Should the feedback devices be triggered in parallel or sequentially?

missile {
    locations {     // Configuration for the locations to shoot at for culprits. The key is the user id from Jenkins and the value is a list of commands
        // Possible Commands: ['zero'] - moves launcher to bottom left,
        // [<direction>, <time in ms>] where direction is one of left, right, up or down
        // ['fire'] - fires the launcher once
        // ['ledOn'], ['ledOff'] - control the led
        someUser=[
                ['zero'],
                ['right', 2000],
                ['up', 600],
                ['fire']
        ]
        unknown=[  // This happens when no culprit is found
                ['zero'],
                ['right', 4000],
                ['up', 2000],
                ['left', 2000],
                ['down', 1000]

        ]
    }
    whenToShoot=['UNSTABLE', 'FAILURE'] // Result on when to shoot, possible values: SUCCESS, UNSTABLE, FAILURE, NOT_BUILT, ABORTED
}

tts {
    lang = 'en' // The language code
    message = { info -> // Closure which yields the text to be spoken
        "The build ${info.project.displayName} is broken!"
    }
}

trafficLight {
    clewareUsbSwitchBinary='/some/path/to/binary'
}