plague 0.4 config file formats...
by Chris Weyl
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 :)
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.
One generic question beforehand... what's the appropriate way to
specify multiple values on a line? Whitespace separating the values,
or a ', '?
plague-server.cfg
------------------------------------------------------------------
[Database]
engine = pgdb
[Directories]
repo_dir = /var/plague/repodir
server_work_dir = /var/plague/rpmbuild
target_configs_dir = /etc/plague/targets
tmpdir = /tmp
[CVS]
use_cvs = yes
cvs_root = :pserver:anonymous@our.cvs.server:/cvsroot/cvsrepo
[General]
hostname = server
debug = yes
[SSL]
server_key_and_cert = /etc/plague/server/certs/server_key_and_cert.pem
ca_cert = /etc/plague/server/certs/buildsystem_ca_cert.pem
[UI]
use_ssl = yes
log_url = http://server/logs/
guest_allowed = yes
port = 8887
client_ca_cert = /etc/plague/server/certs/users_ca_cert.pem
[pgdb Engine]
host = localhost
password =
user = root
database = buildsys
[sqlite Engine]
timeout = 3
database = /etc/plague/server/jobdb
[Builders]
use_ssl = yes
# builders = 127.0.0.1:8888
builders = server:8888
[Email]
success_emails = buildsys(a)mail.addy
email_from = buildsys@server
admin_emails = buildsys(a)mail.addy
[Arches]
base_arches = i386
--------end file----------------------------------------------------------
Question: what's the purpose of guest_allowed? I'm thinking I should
disable it...
plague-builder.cfg --------------------------------------------------
[SSL]
builder_key_and_cert_dir = /etc/plague/builder/certs
use_ssl = yes
ca_cert = /etc/plague/builder/certs/buildsystem_ca_cert.pem
[Directories]
target_configs_dir = /etc/plague/targets
builder_work_dir = /tmp/builder_work
[Network]
fileserver_port = 8889
xmlrpc_port = 8888
hostname = server
[General]
debug = yes
builder_cmd = /usr/bin/mock
builder_user = plague-builder
-----end file-----------------------------------------------------
targets/fedora-4-i386-core.cfg --------------------------
[General]
distro = fedora
target = fc4
basearch = i386
repo = core
mock_config = fedora-4-i386-core
repo_script =
[Arches]
base_arches = i386
[Aliases]
user_aliases = 4 fc4 FC-4
[CVS]
use_cvs = yes
cvs_root = :pserver:anonymous@our.cvs.server:/cvsroot/cvsrepo
cvs_rsh =
[Aliases]
cvs_alias =
------end file------------------------------------------------------
Question: Did I get the aliases/cvs_alias correct? (Note that I
setup the cvs repo to mirror that of fedora-extras, and to leverage
the same Makefile.common, etc., system.) I tried a couple for
cvs_alias, to no avail.
At this point, I can successfully enqueue package builds by cvstag
(make tag ; make plague), but the build always fails, within seconds,
without any error logging by either the builder or the server.
Again, if there's something I should be reading, etc, to figure this
all out, just smack me and send me on my way :)
-Chris
17 years, 11 months
Re: Extras build system back up
by Dan Williams
On Tue, 2005-10-18 at 04:40 +0200, Ralf Corsepius wrote:
> On Mon, 2005-10-17 at 21:56 -0400, Dan Williams wrote:
> > On Mon, 2005-10-17 at 14:28 -0700, Chris Wright wrote:
> > > * Dan Williams (dcbw(a)redhat.com) wrote:
> > > > As I see you've figured out, it should be fixed now. Server-side issue
> > > > with some database fields being way too small. They are larger now :)
> > >
> > > Yes, thanks. Is
> > >
> > > [Server]
> > > ...
> > > allow_uploads = True
> > >
> > > the recommended change to config?
> > >
> > > I notice plague list once creates config with
> > >
> > > allow_uploads = no
> >
> > It's a feature that requires server-side support too, which is currently
> > disabled on the Extras server since we build from CVS. Therefore, for
> > Extras, it has no effect either way.
>
> Well, apparently it does have an effect:
It has an no effect _as long as its there_, once you've added it to the
config file.
Dan
17 years, 11 months
Plague & CVS...
by Chris Weyl
Hi all!
I'm working on using plague as the buildsystem for a project I'm
working on right now. Its distributed approach and use of CVS makes
it ideal, given the number of people and packages we're working with
right now.
However, while I have the buildsystem itself (mostly ;)) setup
(server, builder, clients), I'm having trouble implementing the CVS
integration. It looks as if that half of the buildsystem hasn't been
released yet?
Plague seems to depend on specific tags being generated, as well as a
specific lookaside-cache system. While I've spent a few hours digging
through how the f-e CVS repository is setup, I'm still somewhat
confused as to:
* what tags are generated when
* how the tags are generated and used
* where the lookaside / cvs maintenance code all is
* 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'd like to be able to use the CVS integration; it would be a great
boon to the reliability and usability of plague for my project. Even
if I just had a clearer understanding of how plague interacts with CVS
& lookaside I could hopefully rig something... But ideally the
complementary code could just be used. Hopefully, I'm just pulling a
"Monday" and all this is out there somewhere.
Finally, but certainly not lastly, a major thank you to all who have
worked on this and contributed time and code... Plauge is excellent,
and I can't wait to begin using it in "production". :)
Thanks-
-Chris
17 years, 11 months
Extras build system maintenance Monday 10/17
by Dan Williams
Hi all,
We'll be switching to the latest build system code on Monday morning.
This should resolve most of the random kicks that have been needed
lately due to locking issues with sqlite. It will also improve
stability of the build slaves themselves.
I expect to bring the build system down around 10 or 11 AM US Eastern
Time. It will likely be down until mid-afternoon, probably about 3 or 4
hours total. When everything is back up and working, we'll send out a
mail saying so.
When it comes back up, you'll need to upgrade your plague-client and
plague-common packages with yum.
Thanks for the patience,
Dan
17 years, 11 months
plague server / createrepos error?
by Chris Weyl
Hey all--
A quick question. After building a srpm (successfully), I get:
3 (meanwhile/i386): Build result files - [
'meanwhile-0.4.0-0.i386.rpm', 'meanwhile-0.4.0-0.src.rpm',
'build.log', 'root.log', 'meanwhile-debuginfo-0.4.0-0.i386.rpm',
'builder.log', 'mockconfig.log', 'meanwhile-devel-0.4.0-0.i386.rpm' ]
Repo 'fc3': updating repository metadata...
Error: createrepo failed with exit status 256! Output: 'Options
Error: option -c not recognized.
createrepo [options] directory-of-packages
Options:
-u, --baseurl = optional base url location for all files
-x, --exclude = files globs to exclude, can be specified multiple times
-q, --quiet = run quietly
-g, --groupfile <filename> to point to for group information (precreated)
-v, --verbose = run verbosely
-s, --checksum = md5 or sha - select type of checksum to use (default: sha)
-h, --help = show this help
-V, --version = output version
-p, --pretty = output xml files in pretty format.
'
Repo 'fc3': Done updating.
3 (meanwhile): Job finished.
Poking around google, it looks like the -c is a checksum cache
option[1], but the current level of createrepo in fc4 doesn't have it.
What's the best way to work around this? Fudge Repo.py and chip out
the checksum cache until an updated createrepo package is released, or
find an updated createrepos package out there somewhere? It sounds
like the cache option "makes a huge difference in repo creation time",
so I'd far prefer to use it.
Thanks:)
-Chris
[1] https://lists.dulug.duke.edu/pipermail/rpm-metadata/2005-July/000532.html
17 years, 11 months
plague 0.4
by Dan Williams
Hi,
So 0.4/HEAD has built about 500 packages so far without huge problems on
my Sparc cluster. Dennis has been building Fedora Extras for Sparc for
a while with 0.4/HEAD as well. I think it's pretty solid right now, so
the time has come to think about updating the Extras buildsystem to 0.4.
One of the larger improvements has been the ability to use real
databases, like Postgres, as the job database rather than SQLite. We've
all seen the issues with SQLite, which doesn't play very well in a
multithreaded situation. Some of that can painfully fixed, but the fact
remains that SQLite just doesn't have the features that we really want
out of it (ie, row locking). SQLite can still be used in a smaller
buildsystem though, where it works just fine and doesn't require any
setup.
Seth: Jeremy thought you'd be quite averse to using Postgres... Not
sure what your feelings here really are. I've noticed quite a big
improvement by switching to Postgres when rebuilding an entire distro,
namely in the buildsystem not falling over due to database contention.
If there's not much else to fix up, I'll push out a plague 0.4 release
this week and we can work on migrating the current Extras boxes to it.
Dan
17 years, 11 months
Once again: kernel-modules in the buildsystem
by Thorsten Leemhuis
Hi All!
The last discussion how to handle kernel-modules in the buildsys stuck
at some point (for those who can't remember it see
https://www.redhat.com/archives/fedora-buildsys-list/2005-August/msg00030... for the start and https://www.redhat.com/archives/fedora-buildsys-list/2005-August/msg00036... for one of the ends.
I really would like it if we could get this discussion to life again to
solve this problem. I made a quick hack against mock 0.4 so it passes a
"--define kernel\ some-kernel-version-here" to the rpmbuild-calls that
build the pgk. This required a new mock command-line option ("--kernel
put-some-kernel-version-here"). I included a quick check so this option
only works with packages whose name starts with "kernel" so nobody sane
can abuse it for other packages. Warning, I'm not programming very
often, but the patch WORKSFORME. Seth, is something like that acceptable
for you?
Dan, if something like that goes into mock -- what would be the best way
to make this new mock-option usable in plague for kernel-modules in
fedora-extras? Should plague automatically build the modules for all
kernels available (the one that was shipped and those currently in
updates-released)? Or only for the newest kernel available? Or should
the packager say something like "make plague KERNEL=put-kernel-ver-here"
when requesting build of a fdr-extras-kernel-module-pkg?
--
Thorsten Leemhuis <fedora(a)leemhuis.info>
17 years, 11 months
Cyclic Deps in Mock
by Jeff Pitman
Anyone deal with builds between to SRPMS that require each other? I am
working on "aspell" and "aspell-en".
aspell Requires aspell-en. aspell-en BuildRequires aspell.
Fun, eh?
I had to work around with a:
$ rpm -ivh --nodeps aspell*rpm
in the chroot.
--
-jeff
18 years