v5
Another major release of kcidb includes:
-
Switch to report submission via Google Cloud Pub/Sub message queue. This speeds up submission considerably and allows implementing report notifications.
However, this also changes the parameters required for submission: instead of BigQuery dataset name (e.g.
kernelci03
), these now should be the Google Cloud project ID (kernelci
) and the Pub/Sub topic name (kernelci_new
). OTOH, these parameters won't need to be updated whenever we switch to a new dataset.The required query parameters stay the same.
The Client interface in the library changes accordingly.
See
kcidb-submit --help
andkcidb-query --help
output for details, as well as the code documentation forkcidb.Client
class. -
Implement preliminary report notification system, with two dummy subscriptions and e-mails sent to [email protected]. Spool the generated notifications in Google Cloud Firestore database, to avoid sending the same notification twice. Implement subscriptions as Python modules matching the report objects (revisions/builds/tests) of interest and generating notifications.
-
Add
kcidb-spool-wipe
tool for removing (old) notifications from the notification spool. -
Add two tools for producing a summary and a description of a report object:
kcidb-summarize
andkcidb-describe
respectively. These take report data on the standard input, and the name of the object list, plus optional IDs of objects to process on the command line. They output a text summary or a text description of the object(s), the same way as they would appear in a notification e-mail. These could be used for testing both the data you submit and the report generation. -
Add support for querying particular objects from the database, using SQL LIKE patterns for IDs. Also allow querying the matching objects' parents and/or children. See
kcidb-query --help
output for details. -
Add
kcidb-db-dump
tool for dumping the whole database unconditionally, doing the previous job ofkcidb-db-query
, which acquires the same object selection parameters askcidb-query
does. -
Fix
kcidb-db-complement
tool andkcidb.db.Client.complement()
function to not produce a combinatorial explosion when fetching multiple copies of the same object from the database.