On Wed, 29 Apr 2015 10:44:42 -0400
Matthew Miller <mattdm(a)fedoraproject.org> wrote:
On Fri, Apr 24, 2015 at 04:57:26PM -0500, Dennis Gilmore wrote:
> Honestly I think we will move the git repos to pagure. but if we
> find it does not work and it is too much work to make it suit then
> we should be open to looking at something else.
>
> > > - kallithea (
https://kallithea-scm.org/)
> > >
> > > This project has been growing interest and to the best of my
Apologies for jumping in mid-thread here but I joined the rel-eng list
after this thread started.
QA hit a similar problem about 1.5 years ago - we had almost no formal
development processes and that was causing some inefficiencies, to say
the least.
We implemented changes to do the following:
- start following most of the gitflow [1] branching model
for our projects
- use code reviews and require signoff by at least one other person
for most changes (small things like specfile version bumping aren't
generally reviewd)
- set a code style standard and monitor changes (this is still in
progress but we are linting every piece of code that comes in)
[1]
http://nvie.com/posts/a-successful-git-branching-model/
For tickets and repos, we needed something that would support multiple
projects easily and wanted something that could do tickets and code
reviews in one system. We tried trac+ReviewBoard but the overhead of
closing stuff manually was enough of a pain that we chose not to go
that route.
We ended up settling on phabricator [2] for our tickets and code
reviews [3]. Using it to host our repos (a capability added after we
started using it) and migrating off of
bitbucket.org has been on the
TODO list for a while but seems to keep getting superceded by other
work.
[2]
https://phabricator.com
[3]
https://phab.qadevel.cloud.fedoraproject.org/
Fedora QA has been using phabricator to support our development work for
about 1.5 years now and we've been really happy with it overall. It's
open source and I have it packaged (f20+ and epel) [4][5] but haven't
gotten around to de-bundling all the stuff that would need to be removed
before it could be included in the fedora repos.
[4]
https://copr.fedoraproject.org/coprs/tflink/phabricator/
[5]
https://bitbucket.org/tflink/phabricator-dist
I started getting playbooks written to deploy phabricator in infra but
as with de-bundling and migrating off of
bitbucket.org, got sidetracked
since it hasn't been a huge priority.
If I'm reading the conversation correctly, phabricator would satisfy
all the requirements listed in the start of the thread and I'm game for
getting it packaged in Fedora/EPEL. It might even make sense for QA and
rel-eng to use the same phabricator instance instead of keeping them
separate but that would require more discussion and thought :)
In summary phabricator:
- has FAS support for login via Persona
- Can host git repositories
- Handles code review and audits
- Has some support for trello-like cards (the features there are still
under development but they do work for some use cases)
- Is capable of acting like a gatekeeper kind of like gerrit
- Is open source
- Is already used by other Fedora groups
Anyhow, just figured I would toss the idea out there and see what folks
think.
Tim