[katello-devel] Codebase Split-up

Petr Chalupa pchalupa at redhat.com
Tue Apr 9 16:23:56 UTC 2013


I am not strongly against splitting the main repository, but better 
directory structure and documentation seems to me like a better choice.

AFAIK There are 2 main reason for splitting the repositories:

1) Make orientation easier for newcomers.
2) Make Travis run faster.

I think 1) can be fixed by better directory names e.g.

packaging/katello-configure/
packaging/katello-utils/
packaging/rel-eng/
packaging/repos/
packaging/selinux/
packaging/certs-tools/
cli/
rails_app/
agent/

and by placing README into each directory describing what is it.

Also I thing top-level organization of the source code is not the 
biggest barriers we have: source code lacking documentation and outdated 
wiki. So the split may or may not help.

And if there are objections in our current community (us) I would not go 
against it.

2) Yes it would make run Travis faster, but we will leave Travis at some 
point anyway. Travis cannot be used to test packaging, installation, 
configuration and smoke tests. Which we need for nightly not to be 
broken all the time. I already have story for it on Trello [1].

[1] https://trello.com/card/ci/511bd7357c52d1c61c00510e/55

Petr

On 08.04.13 14:46, Eric D Helms wrote:
> I am not claiming all the top level directories in our repository are
> candidates for breakout, but as I see it we have this breakdown:
>
> Needed to run Katello:
> src/
>
> Needed for a production installation via RPM:
> katello-configure/
> katello-utils/
> rel-eng/
> repos/
> selinux/
> certs-tools/
>
> Needed for advanced system interaction:
> agent/
>
> Needed to interact with a Katello server via command line:
> cli/
>
>
> The claim keeps being made that because code is in a single git
> repository, people are more aware of it.  And I'd argue, that if you
> took a survey of our developers, you'd find the overwhelming majority of
> time is spent in src/ and that there are some parts of repository that
> are complete mysteries (selinux, katello-utils).  And that's acceptable
> because not everybody needs to be a domain expert on every aspect.
>
> But if I saw the above breakdowns as very clearly broken out pieces, I'd
> have a better understanding of all the components and how they fit into
> the overall landscape of our project.  Further, Ruby/Rails developers
> would not come to our project confused by the lack of standard project
> layout, and the chunk of python code stuck in alongside everything. And
> sure, you can claim that we don't have enough upstream developers to
> warrant their consideration, but as usual I think that is a terrible
> excuse or reason since our goal is to be upstream friendly so that when
> upstream developers do come knocking they aren't overwhelmed. (And I
> agree Petr, documentation can help go a long way for some of this)
>
> Eric
>
> On Mon, Apr 8, 2013 at 7:51 AM, Miroslav Suchý <msuchy at redhat.com
> <mailto:msuchy at redhat.com>> wrote:
>
>     On 04/06/2013 09:23 PM, Eric D Helms wrote:
>
>         I didn't lose track of anything. I am lost as to what exactly
>         you are
>         referencing or trying to imply here.
>
>
>     Ok, different example. The git repo rail-restapi.git (discussed in
>     different thread from Friday) which was fork of apipie-rails and now
>     it was dead. No one noticed that, no one bother about that. Because
>     no one was forced to check it out.
>     I'm trying to say that if that would be part of main git repo,
>     someone would notice it much much sooner and done something with that.
>     When it was standalone git repo everybody ignored it.
>
>     --
>     Miroslav Suchy
>     Red Hat Systems Management Engineering
>
>
>     _________________________________________________
>     katello-devel mailing list
>     katello-devel at redhat.com <mailto:katello-devel at redhat.com>
>     https://www.redhat.com/__mailman/listinfo/katello-devel
>     <https://www.redhat.com/mailman/listinfo/katello-devel>
>
>
>
>
> _______________________________________________
> katello-devel mailing list
> katello-devel at redhat.com
> https://www.redhat.com/mailman/listinfo/katello-devel
>




More information about the katello-devel mailing list