Fedora-review, help yourself!
Fedora-review is a tool to speed up review process
The proof is that a number of person have tried to write tool to automate some/most of the review process. I'm just thinking of:
One of the missing point from these tools was the fact that the test performed are written in one single language, while python guys like to work in python, perl guys would prefer to run their tests in perl, php guys in php and so on. Also, quite sometime these tests are actually written more for a specific type of package (C/C++, Java, R, perl...) while we would need a more generic solution.
So recently, few of us decided that we really should do something about it.
We started from the work of Tim Lauridsen on FedoraReview. We used this as a basis and decided to enhance it.
The whole project is now located on http://fedorahosted.org/FedoraReview and we have (among other):
- Enhance the number of checks run by the tool
- Allow language specific tests to override a generic test (for example, in R, if the package if in one of the major repositories, one can check if it is the latest version of the package which is present there)
- Allow checks to be written in any executable language (we now have an example of this type of plugin written in perl)
This is in addition of what was already there:
- Integration with bugzilla
- Integration with mock
For now on what we would like is:
- Testers to report us bugs
- Testers to make feature request
- More testers
- Potential contributors to help us develop more plugin and check (remember you can do that in any executable language you want!)
- More testers (did I say that already?)
Please have a look, test it, complain to us and come to help us improve it!
Want more reading? See Stanislav's blog
Want to see how it looks like?
$ fedora-review -b 678809 Processing review bug : 678809 Getting .spec and .srpm Urls from bug report : 678809 Downloading .spec and .srpm files Building ./678809/seeks-0.4.0-0.5.RC2.fc17.src.rpm using mock fedora-rawhide-i386 INFO: mock.py version 1.1.17 starting... State Changed: init plugins INFO: selinux enabled State Changed: start INFO: Start(./678809/seeks-0.4.0-0.5.RC2.fc17.src.rpm) Config(fedora-rawhide-i386) State Changed: lock buildroot State Changed: clean INFO: chroot (/var/lib/mock/fedora-rawhide-i386) unlocked and deleted [... mock output ...] Build completed ok Downloading (Source0): http://downloads.sourceforge.net/seeks/solo/seeks-0.4.0-RC2.tar.gz No upstream for (Source2): seeks.logrotate No upstream for (Source1): seeks.service Running checks and generate report Checking source md5 : /home/pingou/FedoraReview/src/678809/seeks-0.4.0-RC2.tar.gz Review in: ./678809/seeks-review.txt
And the output:
Package Review ============== Key: - = N/A x = Check ! = Problem ? = Not evaluated ==== C/C++ ==== [x]: MUST Header files in -devel subpackage, if present. [x]: MUST ldconfig called in %post and %postun if required. [x]: MUST Package does not contain any libtool archives (.la) [ ]: MUST Package does not contains kernel modules. [...] ==== Generic ==== [ ]: MUST Package is licensed with an open-source compatible license and meets other legal requirements as defined in the legal section of Packaging Guidelines. [x]: MUST Package successfully compiles and builds into binary rpms on at least one supported architecture. [x]: MUST All build dependencies are listed in BuildRequires, except for any that are listed in the exceptions section of Packaging Guidelines. [ ]: MUST Package contains no bundled libraries. [ ]: MUST Changelog in prescribed format. ...
Feel free to drop by #fedora-review with you suggestions/complains