2564
Comment:
|
2871
puppet hardcoding in www.d.o config
|
Deletions are marked like this. | Additions are marked like this. |
Line 46: | Line 46: |
== dsa-puppet == [[https://anonscm.debian.org/cgit/mirror/dsa-puppet.git/tree/modules/roles/templates/apache-www.debian.org.erb|www.d.o apache2 config]] hard-codes codename/version mapping and arch association mapping. |
|
Line 49: | Line 53: |
== debwww/cron == Has architectures, sections hard-coded, including non-US. |
Extending Debian repos
We want (761348) to enable:
- Automatic enumeration of suites for a repository
- Automatic enumeration of repositories for a distro
This page is for exploring the existing solutions, existing hardcoding and requirements for services.
Contents
Existing solutions
distro-info
Has the same problems as hardcoding elsewhere but better than hardcoding in lots of places.
Ubuntu
http://changelogs.ubuntu.com/meta-release
Tanglu
https://lists.debian.org/CAKNHny8OUnOveJxOmDNhQHcoFJG4PbKgCh4ZBYwuj5QyvF-eFQ@mail.gmail.com
reprepro
Has a configuration file listing all suites with metadata about all of them.
Existing hardcoding
sources.debian.net
Name of all suites in the archive, with explicit mappings from "symbolic" names (stable, testing, ...) to "absolute" names (wheezy, jessie, ...). Bonus point: metadata about both current and past releases (on archive.d.o), such as when the releases happened, their version numbers, etc.
Ideally, the above info should be available for all archives, and in particular also for the security archive. Bonus point: having a single central place that gather together information from all relevant archives (the main one, security, what else?).
piuparts.debian.org
Encodes codename combinations like squeeze2bpo2wheezy in a configuration file.
dsa-nagios
Has hostgroups for each Debian release that is currently in use.
dsa-puppet
www.d.o apache2 config hard-codes codename/version mapping and arch association mapping.
secure-testing
- bin/gen-DSA: hard-codes mappings from oldstable/stable/testing to codenames.
debwww/cron
Has architectures, sections hard-coded, including non-US.
Requirements
piuparts.debian.org
Want squeeze2bpo2wheezy to not be magically deleted just because jessie became stable. When new stable releases are done, new piuparts suites (like wheezy2bpo2jessie) should be created, not old ones reused.
Single source of data
For some purposes it would be interesting to have a single source of all metadata (on a per-repo basis and also on a global distro-wide basis) so that full apt metadata doesn't need to be downloaded if it isn't needed. This could also be easier to parse in some cases.
Know which suites are partial
Knowing what suites are "partial" (i.e. don't have a full set of packages) and what parent suite they are associated with (to get the remaining packages) is important for example to be able to do proper dependency analysis on a partial suite by trying to look up missing packages in the parent suite.