Installing and Using Koji with EGEE SA1

Below describes a procedure to install, setup and interact with both the sa1 koji service at and more genrally the release process.

Install Koji.

Easiest on fedora just yum install koji. For SL4 or SL5 the take it from EPEL 5. If you to submit from jobs from another platform we can probably help, it's a very small client. For EPEL4 there is now a koji client in the SA1 repositories.

Koji Account

Send a mail to koji service manager with your DN, (GridAUTH support team,

CERN CA Identity.

The Koji system operated for SA1 currently uses CERN certificates only in the first instance. If this becomes impossible this can be changed. Also koji realistically can only be used by decrypting your globus key. This must also be changed with priority, I'll do this very soon.
mkdir ~/.koji
openssl rsa -in ~/.globus/userkey.pem > ~/.koji/usercertkey.pem
cat ~/.globus/usercert.pem >> ~/.koji/usercertkey.pem
chmod 600 ~/.koji/usercertkey.pem
# When you have finished working with koji
rm -f  ~/.koji/usercertkey.pem

Koji Configuration

Create a file ~/.koji/config containing:
server =
cert = ~/.koji/usercertkey.pem
;certificate of the CA that issued the client certificate
ca = ~/.koji/cern-ca.pem
;certificate of the CA that issued the HTTP server certificate
serverca = /etc/grid-security/certificates/28a58577.0

in fact ca should be your own CA of course. In the CERN case because there are two certificates needed =cat /etc/grid-security/certificates/d254cc30.0 /etc/grid-security/certificates/1d879c6c.0 > ~/.koji/cern-ca.pem

Submit a SRPM to Koji

At this point if this package release is fixing any bugs in Savannah then they should have been moved to status Fixed. A src rpm can be submitted to one or preferably all of the build targets, in this CentOS 4 (=sl4) , CentOS 5 (=sl5) and fc10.

koji build --scratch centos4-egee foobar-1.23-5.el4.src.rpm
koji build --scratch centos5-egee foobar-1.23-5.el5.src.rpm

Note that your %{dist} tag should be correct before you submit your package. i.e the rpm release in the spec file should be of the form.

Release: 5{%?dist}
You can then define the relevant release when making your src package using:
rpmbuild -bs --define 'dist .el4' foobar.spec
rpmbuild -bs --define 'dist .el5' foobar.spec
and then submit of each of these in turn to koji.

Submit a SCM URL to Koji.

At this point if this package release is fixing any bugs in Savannah then they should have been moved to status Fixed. If your code or release is in SCM e.g CVS or SVN then you can just submit a tag or revision respectively. e.g.

koji build --scratch --nowait centos5-egee 'svn+'
koji build --scratch --nowait centos5-egee 'cvs://'

The layout of your SCM must support a particular sequence once checked out.

make sources
rpmbuild --define "_sourcedir `pwd`" -bs $SPEC

That is to say once the sources has been checked out the spec file will be created by looking for *.spec. The make sources will then be called and this can do anything really, e.g nothing, download sources from somewhere else, construct a tar ball of the checked out sources. Finally rpmbuild will be called on the .spec file and the sources needed by the .spec file are expected to be located either already or by the make sources in the same directory.

Known Problems

  • Currently the greek koji because of the improvements using a full DN rather than the CN=username it tries to notify DN@none which is of course an invalid email address. This will be fixed at some point.

-- SteveTraylen - 20 May 2009

Topic attachments
I Attachment History Action Size Date Who Comment
Unknown file formatpem cern-ca.pem r1 manage 3.5 K 2009-05-20 - 17:03 SteveTraylen CERN CA Files.
Edit | Attach | Watch | Print version | History: r7 < r6 < r5 < r4 < r3 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r7 - 2010-06-04 - unknown
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    EGEE All webs login

This site is powered by the TWiki collaboration platform Powered by Perl This site is powered by the TWiki collaboration platformCopyright & by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Ask a support question or Send feedback