[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

multi-archive support in dak: second report


this is my second report on my Google Summer of Code project to
implement multi-archive support in dak:

I spent the last two weeks on rewriting the code to accept packages into
the archive, including the handling of policy and build queues which are
now backed by regular suites.

The code can now process a full upload (unchecked -> [NEW or other
policy suites] -> unstable).  This includes handling autobyhand and
taking care of Built-Using references (manual byhand might work as well,
but I haven't tested it yet).  The implementation follows mostly the
ideas mentioned in my earlier mail about policy queues to -dak[1],
however files are now always copied between archives to handle
permissions properly.

Support for (new-style) build queues was quite easy to add as I now just
need to call the install_source and install_binary methods for
additional suites.  manage-build-queues is reduced to removing source
and binary associations from build queues for packages that have been
available for some time.  The actual cleanup of files is performed by
clean-suites just as it happens for the main archive.

There are a few features left I still need to reimplement/fix in the
next one or two weeks:

 - some template variables used in mails for accepted/rejected mails are
 - put sponsor in CC for sponsored uploads,
 - process-new cannot edit overrides, only add those retrieved
automatically from the package,
 - process-new needs a way to spawn mc (or another user-defined command)
in a directory containing the upload,
 - prodding the maintainer in process-new,
 - component mappings (map "main" to "updates/main" for security-master),
 - permission checks for DM uploads

And a few more that I regard as less important:

 - process-new needs to support Package-List again,
 - fix queue-report and show-new,
 - upload blocks,
 - transition blocks,
 - check for future timestamps in data.tar.*

None of these should require large changes.

Besides working on these, I want to clean up the code a bit and deploy
it on the dak test installation on flotow to see if it handles larger
archives as well.

My current work can be found in the pu/multiarchive-{1,2} branches in my
Git repository available from [2].


[1] <https://lists.debian.org/debian-dak/2012/06/msg00012.html>
[2] <https://ftp-master.debian.org/users/ansgar/dak.git>

Reply to: