From Fedora Project Wiki

Plan for Koji

This is the basic plan for how automatic image generation will work in Koji.

Overview

Kojiplan.jpg

Inputs

  1. Kickstart files (from https://git.fedorahosted.org/cgit/cloud-kickstarts.git)
  2. Repo to use (for manual builds of release candidates, etc.)
  3. name (ditto; weekly should have deterministic name with "weekly" and date)

Outputs

  1. Images in all EC2 regions
  2. Images uploaded to https://dl.fedoraproject.org/pub/alt/cloud
  3. Fedmsg message announcing new uploads
  4. simple web service providing stateful report on current images (JSON)

Steps

1. A cron job will fire off the image builds 2. As they complete, Koji sends messages on the Fedora Message Bus (fedmsg) 3. An Uploader Service consumes these messages and uploads EC2 images to Amazon and other images to http://alt.fedoraproject.org/cloud/


Specifics

1. Cron Tasks

Right now, livecd nightly builds are launched by hand. A cron script should automate this instead. The current process requires Koji admin credentials; the new system should avoid that.

2. Koji Fedmsg Integration

Right now, Koji does not send notifications for scratch builds. We need to either change that or make these "real" builds.

3. The Uploader Service

This needs to listen to fedmsg