more-extra.override.* generation doesn't match use

Bug #966092 reported by Colin Watson
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Launchpad itself
Fix Released
High
Colin Watson

Bug Description

The easiest way to illustrate this bug is probably by way of a grep for "more-extra.override":

./cronscripts/publishing/cron.germinate:44: SUPPORTED="$MISCROOT/more-extra.override.$supported_suite.main.supported"
./cronscripts/publishing/cron.germinate:47: TARGET="$MISCROOT/more-extra.override.$supported_suite.main"
./lib/lp/archivepublisher/tests/test_generate_extra_overrides.py:607: "more-extra.override.%s.main" % distroseries_one.name)))
./lib/lp/archivepublisher/tests/test_generate_extra_overrides.py:610: "more-extra.override.%s.main" % distroseries_two.name)))
./lib/lp/archivepublisher/tests/test_generate_extra_overrides.py:640: "more-extra.override.%s.main" % series_name)
./lib/lp/archivepublisher/model/ftparchive.py:446: "more-extra.override.%s.%s" % (distroseries, component))
./lib/lp/archivepublisher/model/ftparchive.py:450: "more-extra.override.%s.%s" % (unpocketed_series, component))
./lib/lp/archivepublisher/scripts/generate_extra_overrides.py:329: "more-extra.override.%s.main" % series_name)
./lib/lp/soyuz/scripts/tests/test_cron_germinate.py:199: "more-extra.override.%s.main" % dist),
./lib/lp/soyuz/scripts/tests/test_cron_germinate.py:212: "more-extra.override.%s.main.supported" % dist)
./lib/lp/soyuz/scripts/tests/test_cron_germinate.py:217: "more-extra.override.%s.main" % dist)
./lib/lp/soyuz/scripts/tests/test_cron_germinate.py:225: self.ubuntu_misc_dir, "more-extra.override.lucid.main")

Notice how almost all of these are always "more-extra.override.%s.main", including lib/lp/archivepublisher/scripts/generate_extra_overrides.py and cronscripts/publishing/cron.germinate which are responsible for generating this file. It'd be pretty cumbersome to try to generate these files per-component, and so far it hasn't been necessary; entries for packages which aren't in the component apt-ftparchive is looking at are just ignored.

However, the problem is that lib/lp/archivepublisher/model/ftparchive.py looks for "more-extra.override.%s.%s", where the second %s may not be "main". Currently, we work around this with the following entry in https://wiki.ubuntu.com/NewReleaseCycleProcess:

  "Create symbolic links /srv/launchpad.net/ubuntu-archive/ubuntu-misc/more-extra.override.DSN.restricted -> more-extra.override.DSN.main, /srv/launchpad.net/ubuntu-archive/ubuntu-misc/more-extra.override.DSN.universe -> more-extra.override.DSN.main, and /srv/launchpad.net/ubuntu-archive/ubuntu-misc/more-extra.override.DSN.multiverse -> more-extra.override.DSN.main on cocoplum, where DSN is the new distroseries name."

This is obviously insanely cumbersome, though, and I'd like to get rid of this step. I think the simplest approach would just be to make ftparchive.py match the generation code and use "more-extra.override.%s.main". This approach demonstrably works fine as it's essentially what we've been doing for years, only by way of symlink hacks rather than fixing the code.

Related branches

Colin Watson (cjwatson)
Changed in launchpad:
assignee: nobody → Colin Watson (cjwatson)
Changed in launchpad:
status: New → Triaged
importance: Undecided → High
status: Triaged → In Progress
Revision history for this message
Launchpad QA Bot (lpqabot) wrote :
tags: added: qa-needstesting
Changed in launchpad:
status: In Progress → Fix Committed
Revision history for this message
Colin Watson (cjwatson) wrote :

I decided it would make more sense to do the QA on oneiric, rather than on precise as in the MP, since oneiric is the development release on dogfood.

I ran '/srv/launchpad.net/codelines/current/scripts/ftpmaster-tools/change-override.py -s oneiric -x kernel -y linux-image-3.0.0-11-generic' to cheaply create a publication record, and then ran 'LPCONFIG=dogfood-publish /srv/launchpad.net/codelines/current/cronscripts/publish-ftpmaster.py -v -d ubuntu >> /srv/launchpad.net/dogfood-logs/publish-ftpmaster.log 2>&1'.

After this, the "Package: caps" stanza in /srv/launchpad.net/ubuntu-archive/ubuntu/dists/oneiric/universe/binary-i386/Packages.gz does indeed regain its missing "Task: ubuntustudio-audio-plugins" field, and a quick visual check of Task fields elsewhere looks generally sensible. So I think this is qa-ok.

tags: added: qa-ok
removed: qa-needstesting
William Grant (wgrant)
Changed in launchpad:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers