+-----------------------------------------------------------------+ | Notes: | | * The life of a package update, as things currently stand. | | * This does not include how we handle Alphas or Betas. | | * Also does not include buildroot regeneration in koji. | | * Dotted lines indicate manual task | | * Normal lines indicate automated task | +-----------------------------------------------------------------+ +------------------------------------------+ |a packager starts updating a package | +-------+----+-----------------------------+ | : +------------------------------+ +------------------------------+ | The packager uploads new | | Taskotron automatically | | sources to the lookaside | | performs checks marked for | | cache | | scheduling on lookaside |--+ +------------------------------+ | cache change | | | +------------------------------+ | V | +------------------------------+ +------------------------------+ | | a packager merges dist git | | Taskotron automatically | | | released branches and pushes |->| performs checks marked for |--+ | changes to dist-git | | scheduling on dist git change| | +------------------------------+ +------------------------------+ | : | | | V | +------------------------------+ +------------------------------+ | | a packager kicks off koji | | Taskotron automatically | | |---------------------| builds for released branches |->| performs checks marked for |--+ | | at their discretion | | scheduling on koji build | | | +------------------------------+ +------------------------------+ | | | | | : | | | | | V | | +------------------------------+ | | | a human packager waits | stores | | +------------------------------+ results | | : | | | | | V | | +------------------------------+ +------------------------------+ | | | a human packager creates | | taskotron automatically | | | | bodhi updates for those |->| runs some checks on the |--+ | | builds | | update as a whole | | | +------------------------------+ +------------------------------+ | | : | | | | V V | +---------------------------+ +------------------------------+ | | autosigner signs all rpm | | human possibly manually | | | rawhide builds | | patches and rebuilds | | | | | dependencies and bundles | | | | | them in that bodhi update. | | +---------------------------+ +------------------------------+ | | : | | | | V V | +---------------------------+ +------------------------------+ V | daily cronjob of pungi4 | | bodhi admins run tool to | automatically checks with +-----------+ | rebuilds and syncs out | | create updates-testing yum |----------------------------->| resultsdb | | the rawhide repo | | repos and sync those out to | | {s}| +---------------------------+ | the mirrors. | +-----------+ | signing is the main blocker | ^ | to automating this | | | bodhi here also updates koji | | | tags and bugzilla bugs | | | | | +------------------------------+ | : | | | V | +------------------------------+ | | end powerusers install those | | | from the testing repos, and | | | provide feedback to bodhi. | | +------------------------------+ | | : | | | | V V | +----------------------------------+ | | the update is promoted to stable | | | either automatically on feedback | | | or on request of the packager. | | +----------------------------------+ | : confers again with | | +-------------------+ | | | | | | | | | | | | V | +----------------------------------+ | +------+ +----------+ | bodhi admins run tool to create |--------------+ +->| koji | +->| bugzilla | | updates yum repos and sync those | adjusts koji tags | | {s}| | | {s}| | out to the mirrors. |-------------------+ +------+ | +----------+ | | updates bugzilla bugs | | |-------------------------------+ +----------------------------------+