/jenkins_badges

a small flask app that serves dynamic badge images based on data from Jenkins CI

Primary LanguagePythonMIT LicenseMIT

docs/_static/logo_full.png

jenkins_badges is a small flask app that serves dynamic badge images based on data from Jenkins CI.

Supported badges

Endpoint Examples Default
coverage/<JenkinsJob> 80% +
20%-80%
< 20%
error getting coverage data

Features

  • Badge won't get stale.
  • Configurable coverage level colours
  • Compatible with private Jenkins instances
  • WSGI server compatible

Get it now

With pip:

$ pip install jenkins_badges

Jenkins Requirements

  • The anonymous user has read access or supply jenkins_badges with the credentials of a user who does (see below).
  • Cobertura plugin

Quickstart

  1. create app
import jenkins_badges

#path to your jenkins instance
base_url = "https://example.com/jenkins"

# not required if anonymous jenkins user has read access
username = "apiuser" #a user with read access
token = "6c3bde145bcda49402b6914f2353a734" #user's token

app = jenkins_badges.create_app(base_url=base_url,
                                username=username,
                                token=token)
  1. run it!
app.run()

Output:

* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
  1. Your coverage badge image should be accessible at http://127.0.0.1:5000/coverage/<JenkinsJobName>

Project Links

Kudos

License

MIT licensed. See the bundled LICENSE file for more details.