Package Repository Management
As part of the initial Ubuntu investigation project last year I looked at Debian package repository management. At the time I wanted something simple which I could get going quickly so I set up our local package repository service using reprepro. It is reasonably easy to use but has one very annoying drawback which is that it can’t handle multiple versions of a package in a repository. That fits with how upstream sites manage their packages but it is incompatible with how we want to manage DICE machines. We need to be able to test new versions before they are used and we need to be able to hold back packages to particular versions on some or all machines if they might cause a problem.
Thankfully there is an alternative aptly tool which is much more powerful and can do what we need. I’ve recently begun writing an LCFG component which can configure aptly for mirroring upstream repositories. Thankully the mirroring process looks fairly straightforward. The ability to snapshot and merge repositories looks really useful so I will be playing with those once I get the mirroring going.
Once the upstream mirroring is working I plan to move our local package repository over to using aptly. Hopefully that will all be working by the end of May.