poor-man-ci

Created 4 years ago
Maintained by lsedlar
Integrate Pagure with Jenkins
Members 1
Lubomír Sedlář committed 3 years ago

Poor man's CI

This project tries to tie together Pagure with Jenkins. The goal is simple: every time a pull request is created or updated, trigger a build in Jenkins to verify the pull request does not break anything.

How does it work

Pagure is really quite chatty: a lot of information is announced via Fedmsg. The Fedora Infrastructure instance of Jenkins also has a messaging plugin. Both services provide API to query more information from and to submit requests.

Setup

The setup is manual and rather long. Please refer to help in my deployed version.

Running custom instance

You can run the service on your own if you so desire. Feel free to get a built RPM for Fedora 23 from my COPR repo. You may need to set up fedmsg-hub, nginx, gunicorn and postgresql as well.

To debug this monstrosity, I found journalctl -f -u fedmsg-hub.service to be extremely helpful.

Attribution

A lot of the code is stolen from pdc-updater and the-new-hotness. Especially the packaging part.