Sysadmin/FutureInfrastructure

From KDE Community Wiki
Revision as of 19:44, 23 January 2015 by Bcooksley (talk | contribs)

This page aims to give an overview over the infrastructure that KDE relies on. It tries to give an overview in a feature matrix such that we, the community, can make an informed decision about the merits of each contestant.

Feature Phabricator Gerrit
Git Repository Hosting Yes Yes
Git Repository Browsing Diffusion Integration with external viewer (see our instance)
Git Commit Browsing Diffusion Integration with external viewer (see our instance)
Anongit Built-in replication, configurable per-repo. Built-in replication
Project Tree Structure No No
Pre Commit Review Differential Yes
Fine-grained review (separate labels, +1/+2,...) No Yes
Bypass Reviews Yes Yes
Scratch Repository Supported with minor modification, Proper support to be added later. A simple script for forwarding one API call
Uploading changes via Git Not yet Yes
Uploading changes via command line Yes, via Arcanist Yes, via Git
Uploading changes via Web Yes https://tools.wmflabs.org/gerrit-patch-uploader/
Downloading changes via Git No Yes
Downloading changes via Command line Yes, via Arcanist Yes, via Git
Downloading changes via Web Yes (patch file - see https://secure.phabricator.com/D234) Yes (base64, zip - See KDE gerrit demo)
Ability to merge patch directly from Web UI Disabled due to limitations in how it works, pending rewrite. Yes
CI Integration http://www.guywarner.com/2014/06/part-2-integrating-phabricator-and.html or http://www.dctrwatson.com/2013/01/jenkins-and-phabricator/ Native, see KDE gerrit demo
Closing Bugs on Bugzilla Existing git hooks Native support via its-bugzilla gerrit plugin
Post Commit Review Audit Commenting on closed reviews
Clustering for scalability To a certain extent. WIth the appropriate setup certain components can be separated to different systems if needed. Yes
Allows to replace svn web services (reviewboard, websvn), with same system Yes (?) No (?)
Optional integrated task/todo management Yes No (?)
Optional integrated issue tracking Yes No (?)

Please extend the list, and correct anything thats wrong. Please add links wherever appropriate.