diff --git a/PLAN.gather b/PLAN.gather deleted file mode 100644 index 31094e4c..00000000 --- a/PLAN.gather +++ /dev/null @@ -1,21 +0,0 @@ -This is the "gather" module. This module is used to gather packages and their -dependancies from repositories and lay them out in a logistical manner. A -list of package names should be passed in to find matches in configured repos -and depsolve. We'll steal lots of code from repotrack. - -ROADMAP - -a) Use yum.comps to parse our comps file to generate a list of packages to - depsolve and download. (this is for testing, this will eventually go into - a higher level module) -b) Wire up something to actually download the package list and write it out - somewhere. - -CONSIDERATIONS - -Probably should allow continuing if a package isn't found in a particular arch. -Probably should error if a package isn't found in any arch. - -QUESTIONS - -Do we createrepo here, once we've gathered our packages? diff --git a/PLAN.pungi b/PLAN.pungi deleted file mode 100644 index 99d68094..00000000 --- a/PLAN.pungi +++ /dev/null @@ -1,29 +0,0 @@ -This is the "pungi" module. This module is used to run anaconda tools on -downloaded packages. Options for anaconda tools will come from the -main interface. - -ROADMAP - -a) Run buildinstall - Pretty straight forward. Needs to be ran on arch specific chroots so - mock may be involved, if this entire process isn't. THere is some talk - of making stage2 type stuff a package itself, so that we don't have to - create it at compose time. This will cut down the necessary packages - for building a tree and time it would take. - -b) Run pkgorder - Again, pretty straight forward - -c) Run splittree - Gets more tricky here, have to know disk sizes before hand. Should noop if - isos are not requested. - -d) Create Isos - There are some arch specific calls here, but doesn't have to be ran ON the - different arches. Should be able to opt out of this task. - -CONSIDERATIONS - -How much of the tree layout do we hardcode, and how much do we allow to be -configurable? - diff --git a/README b/README index eaa202af..ee433723 100644 --- a/README +++ b/README @@ -6,72 +6,4 @@ 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) - - pypungi/ is the python package that holds our modules - 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 - config/ This directory holds config files that are useful for testing - functionality of the code. - pungi is the python script that makes use of the above - -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. - -Contributing - Currently development discussion happens at fedora-buildsys-list@redhat.com. - There is a TRAC page at http://hosted.fedoraproject.org/projects/pungi - The source is held via mercurial: - anon - http://hg.fedoraproject.org/hg/hosted/pungi - auth - ssh://hg.fedoraproject.org//hg/hosted/pungi - -Testing - First you must have anaconda-runtime plus its deps installed. - - To run pungi, currently you need root level access. This is because it has - to create loopback devices for disk images. - - python setup.py build - sudo python setup.py install - - sudo pungi -c /etc/pungi/pungi.conf - - Or to test it from just the hg clone: - - edit config/pungi.conf to point to checked out files - - sudo ./pungi -c config/pungi.conf - - Of course, edit /etc/pungi/* for your own values +See http://hosted.fedoraproject.org/projects/pungi for more information. diff --git a/ToDo b/ToDo index 2d348f9d..55139e52 100644 --- a/ToDo +++ b/ToDo @@ -1,6 +1,5 @@ Drop release notes files in the tree Make pungi use the Fedora layout, composedir/topdir/os//Fedora, composedir/topdir//iso/, composedir/topdir//debug/ Get debuginfo packages? - Get srpm packages? Put working items in composedir/work Create a logging system, log to composedir/logs/ diff --git a/pungi.spec b/pungi.spec index 81c7efee..9c713031 100644 --- a/pungi.spec +++ b/pungi.spec @@ -1,13 +1,13 @@ %{!?python_sitelib: %define python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")} Name: pungi -Version: 0.1.0 +Version: 0.1.1 Release: 1%{?dist} Summary: Distribution compose tool Group: Development/Tools License: GPL -URL: http://linux.duke.edu/projects/%{name} +URL: http://hosted.fedoraproject.org/projects/pungi Source0: http://linux.duke.edu/projects/%{name}/release/%{name}-%{version}.tar.gz BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) Requires: anaconda-runtime @@ -37,7 +37,7 @@ rm -rf $RPM_BUILD_ROOT %files %defattr(-,root,root,-) -%doc Authors Changelog COPYING GPL PLAN.gather PLAN.pungi README ToDo +%doc Authors Changelog COPYING GPL README ToDo %config(noreplace) %{_sysconfdir}/pungi # For noarch packages: sitelib %{python_sitelib}/pypungi @@ -45,5 +45,12 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Sat Dec 9 2006 Jesse Keating - 0.1.1-1 +- Update to 0.1.1 +- Add ability to get srpms +- Use a config file system +- Clean up some docs +- Add config files for composing FC6 respins + * Wed Nov 8 2006 Jesse Keating - 0.1.0-1 - Initial spec