August 3, 2009

proxying opensuse repositories

When building a custom distribution or an appliance, you must create a custom repository where to store the updates. Actually you should create a set of repositories, so you can test the updates before delivering to your users.

Proxyrepo is a tool we've created for managing such repositories. We are using it on at least one custom linux distribution. It works quite well for us and is a good tool for managing the updates based on our current methodology.

Here is a little description on how it works:

It mirrors different repositories (opensuse, opensuse build service repositories, and external repositories) and let you move the rpms and the updateinfo.xml files from that repository to the testing repository.

Not all the rpms go to the testing repository, only a subset, that is, the ones that are at your distribution or appliance. Also, a list of rpms called "blacklist" is checked. The blacklist are those rpms that should not go to our clients before being reviewed. These rpms are the rpms that were modified for any reason for building the distribution or appliance.

Moreover, the information on the different updateinfo.xml files is splitted into parts so later on they will be merge to only one and only one updateinfo.xml file.

From testing you move your rpms and updateinfo.xml files to unstable, where a repository is actually created merging all the updateinfo.xml files and creating the other needed files.

Once unstable is verified, the repository is moved to qa, so the qa team can verify that. After that, the repo is sent to production so your users will get the updates.

When the qa team detects some kind of bug, the production repository is copied back to the qa repository, and the qa is copied back to unstable, so developers can work again on it on testing and push again the updates.

You can get the sourcecode by :

git clone git://gitorious.org/opensuse/proxyrepo.git

It is a set of shell scripts that uses rsync, wget, createrepo tool and enhancerepo (a modified version of enhancerepo that is also at the git repository).

1 comment:

R34Lw0rd said...

bedava pornolar videolarını izleyebilirsiniz . ayrıca bedava video izle ' ye bilirsiniz . tek adres porno izle burada .youtube videolarını izleyeceginiz site video izle , online film izleme siteniz ise film izle sitedir. hadi tatlı öpüyorum görüşrüzzz .