jenkins_badges is a small flask app that serves dynamic badge images based on data from Jenkins CI.
Endpoint | Examples | Default |
---|---|---|
coverage/<JenkinsJob> | 80% + | |
20%-80% | ||
< 20% | ||
error getting coverage data |
- Badge won't get stale.
- Configurable coverage level colours
- Compatible with private Jenkins instances
- WSGI server compatible
$ pip install jenkins_badges
- The anonymous user has read access or supply jenkins_badges with the credentials of a user who does (see below).
- Cobertura plugin
- 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)
- run it!
app.run()
Output:
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
- Your coverage badge image should be accessible at http://127.0.0.1:5000/coverage/<JenkinsJobName>
- Docs: https://jenkins-badges.readthedocs.io/
- Changelog: https://jenkins-badges.readthedocs.io/en/latest/changelog.html
- PyPI: https://pypi.python.org/pypi/jenkins-badges
- Issues: https://github.com/jeremyarr/jenkins_badges/issues
- Idea came from mnpk's jenkins-coverage-badge written in nodeJS.
- shields.io for providing scalable badges over a clean API
- Jenkins for being...jenkins
MIT licensed. See the bundled LICENSE file for more details.