Size: 4111
Comment: Simpler, easier to find name
|
← Revision 4 as of 2022-12-14 11:39:39 ⇥
Size: 3700
Comment: hardware database was removed
|
Deletions are marked like this. | Additions are marked like this. |
Line 2: | Line 2: |
= Launchpad Bugs Components = | = Help for Launchpad Bugs Components = |
Line 49: | Line 49: |
* Subscribing notifications happen in web app * Thought there was something else in app but cannot confirm now |
* Subscribing mail notifications happen in web app * ''Thought there was something else in app but cannot confirm now'' |
Line 62: | Line 62: |
=== Hardware Database === * referred to as "hwdb," "hardware db," and in code lp.hardwaredb * ./cronscripts/process-hwdb-submissions.py * checkbox runs on user's computer, submissions are uploaded to us, and this script processes those submissions to import the data * Only a few people using this for stats gathering * HWDB not exposed at all in web UI, only through API * Nothing being actively done with this |
Help for Launchpad Bugs Components
The Launchpad bugs app is often called "malone" which is the old project name on Launchpad.
Bug Imports
- Users provide XML file of data exported from their bug tracker
- Always user initiated
- We have a couple tools to help generate a file in the format we expect
list tools here
- Users should ensure their XML file validates
- Imports require [X] staging test runs, users to confirm data, then production run
See https://help.launchpad.net/Bugs/ImportFormat for more info
Bug Watches
- ./cronscripts/checkwatches.py does all the work
- Referred to as just "checkwatches"
- single threaded and blocking, but can be run multi-threaded
- DB load caused us to fall back to single thread, but this performs well now as is
- LP stats that help track this:
Plugins are used for Trac and Bugzilla < 3.4, Bugzilla 3.4 and later can sync with us
- Page scraping and other ugliness exists for other trackers
- Watches sync status/importance and can sync comments if enabled
Bug task expiring
- ./cronscripts/expire-bugtasks.py
- Runs daily via cron
- Currently running just for Ubuntu due to backlog, but should be updated to run for all now
Bug Heat
- Runs largely via a trigger in app
- Does have one garbo hourly bit running that decays heat for inactive bugs
Bug Mail
- ./cronscripts/send-bug-notifications.py
- Most mail is sent offline
- Subscribing mail notifications happen in web app
Thought there was something else in app but cannot confirm now
- This script does not run in cron for staging/qastaging, so QA requires LOSA to run this for you
Bug Subscriptions
- Under heavy active development, handed off to Yellow Squad
- Two types of subscriptions
- Direct subscriptions to individual bugs
- Structural subscriptions to bug targets (product, project, distribution, etc.)
- Duplicate subscriptions are really just direct subscriptions to a bug looked up via a method
- Several methods build the complete view of subscribers
- Look at all the IBug.get*Subscribers methods or IBug.getSubscription* methods
Filing Bugs
- Duplicate search runs here
- Duplicate search is configurable, so not everyone has to use it noe
- Duplicate search rewritten to perform better but not as "catch all" so sometimes users will ask or comment about this
Editing Bugtask Attributes
- It is not always clear who can change status and opinion with the various roles we have
- Look at the various IBugTask.userCan* methods to work out
Please for the love of all that is holy and good about bug tracking do not add more statuses
Email Interface
- Has yet to be moved into the lp code base
- Lives at lib/canonical/launchpad/mail, interesting bits at canonical.launchpad.mail.commands
Updating CVEs
- ./cronscripts/update-cve.py
- Fills in CVE page on Launchpad based on CVEs linked to bugs