[rb-general] results.json spec

Bernhard M. Wiedemann reproduciblebmw at lsmod.de
Tue Feb 7 20:59:55 CET 2017

On Tue, Feb 07, 2017 at 11:28:02AM -0800, Vagrant Cascadian wrote:
> On 2017-02-07, Bernhard M. Wiedemann wrote:
> > based on https://tests.reproducible-builds.org/debian/reproducible.json
> > I have created
> >
> > http://rb.zq1.de/compare.factory/reproducible.json
> > and made a draft of a spec for RFC:
> > http://rb.zq1.de/spec/json-format.txt
> > should probably be converted to .rst and pushed to git in the end.
> Thanks!
> > my generator script
> > https://github.com/bmwiedemann/reproducibleopensuse/blob/master/jsonresult
> > is pretty specific to the meta-files created during my rebuild-test-process
> > but since it is only 80 lines, it should be easy to adapt.
> >
> > open questions: should it use ISO date (2017-02-07 14:02:59) instead of UNIX epoch integer?
> I'd says it's inexpensive to include both... maybe a build_date and
> build_date_epoch ?

I would say either epoch or ISO date to avoid any chance that they encode different values. This is meant to be data for transport from the place where rebuild-tests are done to the tests.r-b UI (and other consumers) where it is processed and/or displayed.
It is not what users will see in the end. That display tool should have conversion to human-readable datetime formats.

> I'd also recommend using the start of build rather
> than end of build, or include both a build_date and build_finished, just
> so that you can use the same value for build_date as for
> SOURCE_DATE_EPOCH (if not defined through other means).

then again, making the spec more specific means I'll have to do extra work to track all those pieces of data correctly, which makes it harder to implement a producer for this. And what would be the use-case for having both?
Also I'm doing double-builds, so we possibly have two start-times and two finish-times, further complicating things.

In addition, this must be unrelated to SOURCE_DATE_EPOCH as that needs to be constant (except on source changes), while build_date should be the actual date when the rebuild-test was done.

Bernhard M. Wiedemann
software engineer

More information about the rb-general mailing list