Personal tools
You are here: Home Team Documentation Jigdo Member

Jigdo Member

by daMaestro last modified Feb 22, 2008 03:09 PM

How to create a jigdo member to be added to the main Fedora Unity round-robin jigdo source.

Hosting Re-Spins

Most Fedora Unity spins will need to be hosted in the long run as the updates tree is a moving target. We have decided to have a round-robin based mirror network to provide the template data and any remaining data that can not be found on the public mirrors.

Apache

You will need to configure apache to respond to jigdo.fedoraunity.org. This information assumes you run name based virtual hosts. To make that clear we have included the NameVirtualHost directive, which only needs to be declared once. This also assumes you will be hosting data in /var/www/jigdo. 

Make sure to adjust to your server settings and preferences.

Please note, it is a requirement to log access data to our spread node.
NameVirtualHost *:80
<VirtualHost *:80>
    ServerName jigdo.fedoraunity.org
    DocumentRoot /var/www/jigdo
    ErrorLog logs/jigdo-error_log
    CustomLog "|/var/www/client.pl -g jigdo" combined
    <Directory /var/www/jigdo>
        Options -Indexes
    </Directory>
    RewriteEngine On
    RewriteRule ^/$ http://spins.fedoraunity.org/ [R,L]
</VirtualHost>

DNS

You will also need to request the IP address of your server to be added to the jigdo.fedoraunity.org entry. Please ask in #fedora-unity or contact us 

Data Layout

The whole point of using round-robin will be to allow any client to contact any member and get the same results. This means the data layout needs to be consistent. Please keep the following layout.

/var/www/jigdo
    |
     \ templates
      \ $date
       |
       - image1.template
       - image2.template
     \ data
      \ $date
       |
       - somefile.rpm
       - someotherfile.rpm
       - path/to/some.rpm

Getting the Data

To make things very easy, we have setup a rsync source. Run the following command to populate your mirror to match the swarm:

rsync -aHvz --delete rsync://spinner.fedoraunity.org/jigdo/ /var/www/jigdo/

Automating Fetching Data

To keep things in sync, please automate fetching the data. Add a crontab entry for the user you would like to sync as:

Note: Switch to your preferred user and then crontab -e

0 */1 * * * rsync -aHvz --delete rsync://spinner.fedoraunity.org/jigdo/ /var/www/jigdo/ > /tmp/rsync.log 2>&1; if [ $? -gt 0 ]; then cat /tmp/rsync.log | mail -s "rsync errors" root; fi

 Please adjust the 0 (this is the minute within the hour the sync will start) as it will help randomize fetching. Thanks.

Document Actions
Log in


Forgot your password?
New user?