Fedora ELN compose

Summary

The Fedora ELN compose is built using the Pungi compose tool.

The compose is run automatically four times per day, at 0300, 1500, 1800 and 2100 UTC, though only the first successful compose each day is normally synced to the mirrors. The Content Resolver uses each of the composes for input processing to maintain an accurate view of the state of ELN throughout the day. The additional composes also serve to provide an early-warning system of trouble so it can be addressed before the next day’s synced compose.

Compose configuration files

The main Fedora ELN compose configuration is stored in the official https://pagure.io/pungi-fedora/ repository in the eln branch.

The Fedora ELN compose uses the comps-eln.xml file stored in the https://pagure.io/fedora-comps repository.

Generating the Fedora ELN compose

Members of the sysadmin-eln FAS group can manually generate a Fedora ELN compose by logging into the compose host and performing the following steps:

The first time you need to log in to an infrastructure compose host, you will need to set up your SSH configuration as described in Fedora Infrastructure Documentation.
  1. Log in to compose-eln01.iad2.fedoraproject.org

  2. Verify that no compose is already running with ps -ef|grep pungi-koji or a similar command.

  3. Edit the file /etc/cron.d/eln, copying the line containing eln-nightly.sh to a new line and modifying the cron syntax to start the compose two minutes in the future. For example, if the current time is 1520 UTC, you would set the cron configuration to 22 15 * * *.

  4. Wait for the compose to start, verifying that it did so with ps -ef|grep pungi-koji

  5. Remove the additional entry in /etc/cron.d/eln so that it does not continue to trigger at the same time each day.

  6. (Optional) Monitor the overall compose progress with tail -f /mnt/koji/compose/eln/<compose_id>/logs/global/pungi.global.log

Normally, the ELN compose will only be synced to the mirror list the first time that a compose succeeds for that day. In rare situations, this may need to be overridden. In this case, you will need to modify the command used to launch the compose to include a -f argument to eln-nightly.sh.