[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#693693: ben: Partial suite support



Hi Stéphane,

On Mon, Aug 19, 2013 at 02:51:47PM +0200, Stéphane Glondu wrote:
> […]
> As said elsewhere in this bug report, the deduplication is already done
> in ben.

Yes. I can't quite remember the details but it might be that I had to do
this for edos-debcheck's purposes, or maybe we're just running a too-old
version of ben. It's not been updated for quite some time (the new level
calculation stuff you landed seems to be a good reason for us to
modernise though; thanks for that!).

> 
> However, after thinking about it, I am planning to redesign the plumbing
> between commands. What I am planning to do is the following:
> 
>  * "download" will only download files;
>  * a new "import" command will take a list of Sources and Packages
>    files (or query projectb or some other kind of database), and create
>    a "ben.cache" file. This command would do the canonicalization phase
>    (i.e. add source and source-version fields to all binary packages,
>    etc.);
>  * a new "filter" command will add the uninstallable (previously
>    edos-debcheck) field, and any other additional massaging we'll want
>    in the future (like keeping only the last version or the
>    "is-in-testing" virtual field);
>  * the "query" command will be able to output "ben.cache" files as
>    well. It will basically act as the dual of "import";
>  * "monitor" will only read a "ben.cache" file.
> 
> Basically, it promotes "ben.cache"-like files (which are binary dumps of
> an OCaml datastructure and efficiently parsed) as first-class citizens,
> and the canonical format passed between commands, with bridges to the
> text control file format via import and query).
> 
> The logic for partial suite support would be put in "import", but
> concatenating files, then using "import" and "filter" looks simple
> enough to be done externally in a shell script.

Sounds fine, but having things in custom shell scripts makes reproducing
production environments a bit harder. Ideally (as your description of
"import" says) we'd be able to download, import and filter things for
multiple (partial + base) suites entirely inside of ben. It's not hard
to do it externally but a bit more messy.

> What is your opinion on that plan?

Seems like it'd meet my needs. And thanks for working on ben :-). I'll
try to update our instance soon.

Thanks,

-- 
Iain Lane                                  [ iain@orangesquash.org.uk ]
Debian Developer                                   [ laney@debian.org ]
Ubuntu Developer                                   [ laney@ubuntu.com ]

Attachment: signature.asc
Description: Digital signature


Reply to: