(Update with info on the RHEL repo.) |
|||
Line 17: | Line 17: | ||
== Building an RPM == | == Building an RPM == | ||
Building an RPM for Infrastructure is significantly easier then building an RPM for Fedora. Basically get your SRPM ready, | Building an RPM for Infrastructure is significantly easier then building an RPM for Fedora. Basically get your SRPM ready, then submit it to koji for building. Do a koji build --scratch. | ||
{{Admon/note | Remember to build it for every dist / arch you need to deploy it on.}} | {{Admon/note | Remember to build it for every dist / arch you need to deploy it on.}} |
Revision as of 16:57, 3 November 2010
In some cases RPM's in Fedora need to be rebuilt for the Infrastructure team to suit our needs. This repo is provided to the public (except for the RHEL RPMs). Rebuilds go into this repo which are stored on the netapp and shared via the proxy servers.
Contact Information
Owner: Fedora Infrastructure Team
Contact: #fedora-admin
Location: PHX http://infrastructure.fedoraproject.org/
Servers: puppet1 / Proxy Servers
Purpose: Provides infrastructure repo for custom Fedora Infrastructure Rebuilds
Building an RPM
Building an RPM for Infrastructure is significantly easier then building an RPM for Fedora. Basically get your SRPM ready, then submit it to koji for building. Do a koji build --scratch.
Signing the RPM
Requesting Access
Infrastructure RPM's are signed by the Infrastructure key: http://infrastructure.fedoraproject.org/RPM-GPG-KEY-INFRASTRUCTURE Access to this key is restricted. If you feel you need it email MikeMcGrath with a request for access (if Mike isn't around some of the other Infrastructure people also have access like ToshioKuratomi. You'll only need to ask for the key once. It has a password which will be given to you as well.
Signing the RPM
Once your key has been set up, you can sign the RPMs with:
rpm --resign your-package-1.1.rpm
Re-creating the repo
All of the repositories are located at:
puppet1:/mnt/fedora/app/fi-repo/rhel
Simply copy your rpm to the proper dist/arch/ then run create repo from that directory.
This is an example of copying and creating a repo for myPack-1.0.noarch.rpm
cd /mnt/fedora/app/fi-repo/el/5/ cp ~/rpms/RPMS/myPack-1.0.noarch.rpm ./i386/ createrepo -d --update ./
Easy as that.
RHEL repo
In addition to the Infrastructure repo, there is a RHEL5 repo that all machines update from, accessible only to our machine's IPs. This repo syncs again RHN daily at 1:30 UTC. To manually resync the RHEL repo against RHN, run the following on as root on puppet1:
rm -rf /var/tmp/rhnsync-cache # Clear cached metadata /mnt/fedora/app/fi-repo/rhel/do-rhel-sync