I did a time map of a Fedora compose today, and noticed that we spend about an hour waiting for the ostree_install phase to complete before we start up the compose_images_phase which does all the other image builds. This is unnecessary. Nothing else depends on ostree_install; it should be fine to start up the extra_phase (which contains compose_images_phase) while the ostree stuff is still running. This implements that by splitting the ostree phases out of the essentials_phase which contains the real precursors to the extra_phase. We start the essentials and ostree phases together, but only wait for the essentials phase to complete before kicking off extra_phase, so it can start while the ostree phase is still running. One tweak we have to make to accommodate this is to move image_checksum_phase out of extra_phase, to avoid it potentially running before all ostree installer images are built. The checksum phase is quite fast - it takes about five minutes - and any time benefit of running it in parallel with the osbs and repoclosure phases seems like it must be smaller than the time loss of waiting for ostree_install before kicking off extra. Merges: https://pagure.io/pungi/pull-request/1790 Signed-off-by: Adam Williamson <awilliam@redhat.com> |
||
|---|---|---|
| .. | ||
| __init__.py | ||
| cache_cleanup.py | ||
| comps_filter.py | ||
| config_dump.py | ||
| config_validate.py | ||
| create_unified_isos.py | ||
| fedmsg_notification.py | ||
| patch_iso.py | ||
| pungi.py | ||
| pungi_gather.py | ||
| pungi_koji.py | ||
| report_progress.py | ||
| wait_for_signed_ostree_handler.py | ||