Random thoughts on what needs to be done before Pungi 4.0 is completed. Define building blocks and their metadata ========================================= * rpms in yum repos * comps * kickstart trees * isos * kickstart trees * bootable images * readme files * license(s) Compose structure ================= * topdir * work, logs, etc. * compose * $variant * $arch * $content_type (rpms, isos, kickstart trees, etc.) * actual content Split Pungi into smaller well-defined tools =========================================== * process initial packages * comps * json mapping * ??? * grab initial package set * yum repos * koji instance (basically what mash does today) * resolve deps (gather) * self-hosting * fulltree * multilib * langpacks * create repos * create install images * lorax * buildinstall * create isos * isos * bootable * hybrid * implant md5sum * jigdo * checksums * run tests * just quick sanity tests * notification * email * messagebus Unsorted ======== * run any tasks in koji or local host * support for non-rpm content? (java artifacts, etc.) * docs! * unit tests! * use productmd for metadata: https://github.com/release-engineering/productmd/ * use next-gen tools: createrepo_c, mergerepo_c, dnf, hawkey, libcomps