← Back to team overview

launchpad-dev team mailing list archive

First cut at recipe db-schema patch

 

The branch at ~mwhudson/launchpad/recipe-db-schema adds a patch to add
SourcePackageRecipe, SourcePackageRecipeBranch and
BuildSourcePackageFromRecipeJob tables.  You can also see it at
http://pastebin.ubuntu.com/327343/.

I think it's mostly fairly uncontroversial.  Some remaining points:

 - My unique index assumes that the url will be
https://launchpad.net/ubuntu/sourcepackage/+recipe/name or very similar.
 Arguments welcome about whether the owner should be in there :-)

 - The big missing part is where to store the log file and manifest that
are produced by the job's execution.  We could be more like the existing
Soyuz code and have a separate "Build" table that points at these
things, or they could live on BuildSourcePackageFromRecipeJob

   - This probably depends on how long we want the logs and manifest to
hang around for.  I expect we'll have to prune the Job table reasonably
fiercely to keep it under control, so maybe it would be best to have a
SourcePackageBuild table so the build logs and manifest can have
lifetimes independent of how we prune Job.

 - This doesn't get into the mess of SourcePackageRecipe subscriptions.

 - My patch assumes that a built sourcepackage will be uploaded uploaded
to exactly one archive.  Julian expressed some concerns about wanting to
 be able to upload to more than one, but I think we can probably survive
without this for now.

 - There was talk earlier about needing to record who requested a source
package build; it turns out that Job already has a requester field, so
we don't need one on BuildSourcePackageFromRecipeJob.

Comments welcome -- it would be nice to land this this cycle so we can
start working on things for realz next cycle.

Cheers,
mwh



Follow ups