plague 0.4 config file formats...

Chris Weyl chris.weyl at gmail.com
Wed Oct 19 22:00:03 UTC 2005


On 10/19/05, Dan Williams <dcbw at redhat.com> wrote:
> On Tue, 2005-10-18 at 22:21 -0400, Chris Weyl wrote:
> > Ok!  So, after a couple... intense;)... hours of hacking at my plague
> > config files, here's what I've come up with for server/builder/target.
> >  This is the result of both looking at the default configs that are
> > generated, looking at the code, and repetitively starting the
> > server/builder and waiting for it to complain when it doesn't find
> > something it expects :)
>
> Yeah, we should really package up default config files that show how to
> do stuff.  I think Dennis Gilmore has done so for Sparc.

I think that's an excellent idea; I know I've been guessing alot.

> > However, it still doesn't build from CVS correctly.  So I include
> > these files here in the hopes the error of my ways will be shown to
> > me, and also so others may glean what they will from them :)  (server
> > names have been replaced, so as to protect the innocent.)  To make
> > things a little simpler while figuring it all out, I only have one
> > target cfg defined:  fedora-3-i386-core.
>
> Hmm, any errors in the logs or the emails that it sends when the build
> fails?

Hmm, I wasn't reading those -- didn't realize they contained
information not logged.

So I looked at the last one, saw that it was trying to build from a
path that doesn't exist in CVS, corrected cvs_alias (per your
comments) and that fixed that problem.

> Something that might help is to turn on debugging info
> in /usr/share/plague/server/PackageJob.py, near the top.  You'll see a
> line that says "DEBUG = False".  Change that to "DEBUG = True" (note the
> capital T) and you should get prints of all the commands the server is
> running to check stuff out from CVS.

That did help a touch.  Now, when building from a CVS tag, it tells me
that it's changing to the checked out directory, and running "make
srpm" in it.  Both these commands work (that is, as root I can execute
them w/o problem), but the next thing logged to plague-server.log is:

=====================
 Exception in thread Thread-4:
Traceback (most recent call last):
  File "/usr/lib/python2.4/threading.py", line 442, in __bootstrap
    self.run()
  File "/usr/share/plague/server/PackageJob.py", line 82, in run
    self._pkg_job.process()
  File "/usr/share/plague/server/PackageJob.py", line 509, in process
    if func():
  File "/usr/share/plague/server/PackageJob.py", line 377, in _stage_prep
    (self.archjobs, pkg_arches, allowed_arches) = self.arch_handling(hdr)
  File "/usr/share/plague/server/PackageJob.py", line 185, in arch_handling
    addl_arches = self._target_cfg.addl_pkg_arches()[self.name]
TypeError: list indices must be integers
=====================

I'm thinking I have something wrong (or missing?) in a config file somewhere...?

> Here's a short walk through the CVS code in plague, hopefully that will
> help us figure out what's going on for you...
[...snip...]
>         cmd = 'cd %s; %s srpm' % (srpm_dir, MAKE_CMD)
>         debugprint("%d: Running %s in %s" % (self.uid, cmd, srpm_dir))
>         s, o = commands.getstatusoutput(cmd)
>         if s != 0:
>             # Don't include download progress lines in output
>             lines = o.split('\n')
>             output_lines = []
>             for line in lines:
>                 if line.find('..........') == -1 and len(line) > 0:
>                     output_lines.append(line)
>             o = string.join(output_lines, '\n')
>             msg = "Error: could not make srpm for %s - output was:\n\n%s" % (self._source, o)
>             raise PrepError(msg)
>
>         srpmpath = None

Hmmmmm.....  It would seem to be somewhere in here that the exception
is being thrown.  I think; not sure if the above messages point
elsewhere..

                          -Chris




More information about the Fedora-buildsys-list mailing list