50 lines
1.8 KiB
Plaintext
50 lines
1.8 KiB
Plaintext
Pungi
|
|
An anaconda based installation spin tool
|
|
|
|
This project is aimed at making a public / free tool to spin installation
|
|
trees/isos of Fedora. It will be written in python (for many obvious
|
|
reasons). Code style I hope will be of a simple "master" process that can
|
|
call any number of subprocesses depending on a configuration set.
|
|
|
|
Thoughtspace:
|
|
We'll need to do five basic tasks:
|
|
1) Gather packages from repos into a directory tree
|
|
2) Run anaconda tools (buildinstall) on said directory tree
|
|
3) Split tree into CD iso size chunks
|
|
4) Create isos of the chunks
|
|
5) Sanity check the tree
|
|
|
|
Gathering Packages
|
|
See PLAN.gather
|
|
|
|
Running Anaconda Tools
|
|
See PLAN.pungi
|
|
|
|
Split Tree Into CD Size Chunks
|
|
See PLAN.pungi
|
|
|
|
Create Isos of the Chunks
|
|
See PLAN.pungi
|
|
|
|
Sanity Check the Tree
|
|
This could/should be an ever growing set of post-tree build sanity checks.
|
|
Hopefully it'll cut down on brown paperbag trees sneaking out.
|
|
|
|
Organization
|
|
Each task set will be its own module. Work on each module can be done
|
|
independantly and hopefully once functional it should be easy to tie them
|
|
all together (one ring to bring them all, and in the darkness bind them)
|
|
|
|
gather.py is the module for repoclosing and downloading a set of packages.
|
|
pungi.py is the module for running anaconda tools against a set of packages
|
|
and creating isos
|
|
tests/ This directory holds some files that are useful for testing
|
|
functionality of the code.
|
|
|
|
Making it all happen
|
|
There really is space for two tools, or something inbetween. There is the
|
|
task of creating a repo of packages multilibbed up. Think rawhide. The
|
|
second tool takes packages from said repos and makes the install and CD set.
|
|
Working on the second tool first makes sense, as it can be used today with
|
|
existing Core and Extras repos. Later, tool #1 can grow from #2.
|