This branch is the next stage of moving the work for processing Apport
BLOBs out of the +filebug view and into the Jobs system.
The changes in this branch mean that when a BLOB is uploaded Launchpad
will automatically create a new ProcessApportBlobJob for it. This job
can then be polled later by +filebug to see if the BLOB has been parsed
properly.
- I've updated TemporaryBlobStorageAddView so that it now creates a new
ProcessApportBlobJob for the uploaded BLOB. I've moved the uploading
functionality into a separate method so that it can be tested
directly rather than having to test it via the 'Continue' action.
== lib/lp/bugs/configure.zcml ==
- I've added ZCML for the ApportBlobJob interfaces.
== lib/lp/bugs/interfaces/apportjob.py ==
- I've added a getByBlobUUID() method to IApportBlobJobSource so that
we can look up Jobs by BLOB UUID. This will be used in a subsequent
branch to poll for processing jobs being complete.
== lib/lp/bugs/model/apportjob.py ==
- I've updated ProcessApportBlobJob.create() so that it will not create
a new job for BLOB if there's already a job, complete or otherwise,
in the database.
- I've added an implementation of getByBlobUUID() to
ProcessApportBlobJob.
== lib/lp/bugs/tests/test_apportjob.py ==
- I've added tests for the changes to ProcessApportBlobJob and
TemporaryBlobStorageAddView.
== lib/lp/bugs/utilities/filebugdataparser.py ==
- I've cleaned up some lint by adding FileBugData to the __all__ clause
of the module.
This branch is the next stage of moving the work for processing Apport
BLOBs out of the +filebug view and into the Jobs system.
The changes in this branch mean that when a BLOB is uploaded Launchpad obJob for it. This job
will automatically create a new ProcessApportBl
can then be polled later by +filebug to see if the BLOB has been parsed
properly.
== lib/canonical/ launchpad/ browser/ temporaryblobst orage.py ==
- I've updated TemporaryBlobSt orageAddView so that it now creates a new tBlobJob for the uploaded BLOB. I've moved the uploading
ProcessAppor
functionality into a separate method so that it can be tested
directly rather than having to test it via the 'Continue' action.
== lib/lp/ bugs/configure. zcml ==
- I've added ZCML for the ApportBlobJob interfaces.
== lib/lp/ bugs/interfaces /apportjob. py ==
- I've added a getByBlobUUID() method to IApportBlobJobS ource so that
we can look up Jobs by BLOB UUID. This will be used in a subsequent
branch to poll for processing jobs being complete.
== lib/lp/ bugs/model/ apportjob. py ==
- I've updated ProcessApportBl obJob.create( ) so that it will not create tBlobJob.
a new job for BLOB if there's already a job, complete or otherwise,
in the database.
- I've added an implementation of getByBlobUUID() to
ProcessAppor
== lib/lp/ bugs/tests/ test_apportjob. py ==
- I've added tests for the changes to ProcessApportBl obJob and bStorageAddView .
TemporaryBlo
== lib/lp/ bugs/utilities/ filebugdatapars er.py ==
- I've cleaned up some lint by adding FileBugData to the __all__ clause
of the module.
No lint.