Plague & CVS...
Chris Weyl
chris.weyl at gmail.com
Mon Oct 17 23:40:02 UTC 2005
On 10/14/05, Dan Williams <dcbw at redhat.com> wrote:
> The current CVS code is quite tailored for the Fedora Core/Extras CVS
> repository setup. Here you have a layout like this:
>
> /cvsroot/plague/FC-3/
> /cvsroot/plague/FC-4/
> /cvsroot/plague/devel/
>
> in other words, you have /<blah>/<package>/<target>/. The CVS code is
> set up to expect that right now.
>
> Furthermore, once the path to the package is determined, there is a set
> of commands to take the files in that directory above and make an SRPM
> for them. Mainly, we run the command 'make srpm' in the above directory
> and hopefully we get an SRPM out the other end, which is fed to the
> build slaves.
Gotcha. I'm starting to make sense of Makefile.common, etc now.
[...snip...]
> > * where the lookaside / cvs maintenance code all is
>
> The lookaside cache of sources is essentially an HTTP server. wget is
> used to grab the files based on the 'sources' file in the packages
> directory. Most of the "real" code is in the common module for each
> package.
Gotcha. I essentially faked this out, so for read operations the
implementation I'm using operates identically to the one f-e is using.
> > * what license the lookaside / cvs / "common" module code is under,
> > and if I can use it w/o impacting my project's packages licenses
>
> I believe you can do so, though I'm not a lawyer. The license of the
> code in the Makefiles and such should not impact the license of your
> source and/or product, since you do not link any of the
> buildsystem/infrastructure code into your sources (hopefully). If the
> license of the infrastructure is under the GPL (which plague is) then
> your obligation is simply to make changes to the infrastructure and
> plague code available if you modify them.
After my last cvs update, I see it's under the BSD license. Cool :)
But you're right -- Makefile.common et al don't actually become part
of the package, they just help it to be built.
> So, if you've currently got a certain layout for CVS, I'd like to know
> more to figure out how to generalize the current CVS code in plague. In
> the end you'll have to do a bit of tweaking to get your own CVS stuff to
> work, if you choose not to adopt the infrastructure that Fedora CVS
> uses. But it shouldn't be very hard at all. I just need a bit more
> information first.
Gotcha. I think I've decided to adopt the approach f-e CVS uses (why
make life harder for myself?), and tweak Makefile.common/et-al as
necessary. I've already adapted most of what is necessary to our
environment, and built out a substitute lookaside cache.
> Glad it works, hope you're using 0.4/HEAD too :)
I am now! Of course, it presents new questions, with regards to the
config files. (Figures, I get my head around 0.3 and 0.4 presents
itself ;) )
plague-server built me a new default config file, but I'm not entirely
sure where I should be translating my old CONFIG.py to. Specifically,
I see options to "use_cvs", but not sure where I should be defining my
cvs root to; targets are now in other, per-target files, but aside
from where those files are supposed to go, I'm not sure what their
content should be.
Is there something/where I can look at to figure this out? Even just
a slightly more fleshed out plague-server.cfg and an example of a
target config file would do wonders.
Thanks again:)
-Chris
More information about the Fedora-buildsys-list
mailing list