I still use the old "make sources" way. Pretty much copied from the Fedora set up, with the "lookaside" repository for the files.

Here's how I understood it, please correct me if I'm wrong:
Koji checks out the package subdir and executes "make sources" there. The Makefile within the subdir of the package in svn references a "Makefile.common" that lives in "trunk/common". The Makefile retrieves the "Makefile.common" from svn and loads it. Makefile.common then retrieves the sources file and the sources.
To download them it uses the REPOSITORY variable, i.e. the svn host. It fetches the sources like this:
http://REPOSTITORY_HOST/repo/pkgs/<packagename>/<source file name>/<md5sum of source file>/<source file name>. If the md5sum matches, "make sources" returns and koji proceeds with building.

As Jesse wrote back then, if you don't want to do it that way, you're free to specify any other command that will download the sources. For me it was a good start without getting too much into fedpkg stuff.

Andreas.

On Fri, Apr 20, 2012 at 18:34, Moray Henderson <Moray.Henderson@ict-software.org> wrote:
Hello again,

I'm trying to understand how Koji does things in order to migrate from our
previous home-made build system with svn repositories to Koji.  Most of our
stuff is in svn as source files, not tarballs, so I'll have to implement a
"make sources".  I was looking in the Fedora git repositories, but couldn't
see how this is actually done.  I can see how it _used_ to be done: with a
common package containing a Makefile.common.  However that doesn't seem to
be available any more.

I've found fedora-packager and fedpkg; there was a thread here in 2010
(http://www.mail-archive.com/buildsys@lists.fedoraproject.org/msg00619.html)
which suggested that they configured Koji to issue the command to get the
sources.  However, that's "allowed_scms" in kojid.conf, and I can't see
anything in either package now which modifies that.

So basically I'd really like to know the steps that Fedora's Koji goes
through to build packages like anaconda - which has an old Makefile, and has
no URL to say where to find the sources.


Moray.
"To err is human; to purr, feline."






--
buildsys mailing list
buildsys@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/buildsys