[Reproducible-builds] Applying to Outreachy to work on Reproducible Builds
spectranaut at riseup.net
spectranaut at riseup.net
Thu Mar 31 00:29:44 UTC 2016
On 2016-03-29 23:01, Holger Levsen wrote:
>
> I think an awesome initial contribution would also be to set up such a
> local test setup *and document the needed steps*. (First in the wiki is
> fine,
> but this should really go into INSTALL or CONTRIBUTE in
> jenkins.d.n.git.)
Haha, definately! I'm keeping track of everything I've had to do.
>
>> (3) enhance bin/reproducible_json.py to create include an arch
>> agnostic
>> summary. currently the json will have results for amd64 and armhf,
>> but
>> its not clear which is authorative. the result should be: if it
>> fails in
>> some suite/arch combination, the result should be failure.
>>
>> I'm pretty sure that I can do this quickly enough :) I've run the
>> script on
>> reproducible.db and it looks like we only need to do a little extra
>> data
>> munging. But I'm confused about the goal:
>> - Do we want an additional json file to be published, with information
>> about
>> whether the package succeeds across all architectures? Who is going to
>> do
>> anything with that file?
>
> one of the json files (we have two) is used by eg tracker.debian.org as
> well as
> ddpo.debian.org and probably others. the other is to be used by
> individuals who prefer to parse json over downloading the sqllite db
> and
> use that.
>
> that seperation has historically been created and is maybe not the
> best.
>
>> - Or do we want to write an "arch agnositic" summary to
>> reproducible.json
>> instead? Should the "architecture" key be blank or non-existant? (I
>> haven't
>> looked into to whatever is using this file)
>
> that.
>
> there should be an arch agnostic summary plus specific information for
> each arch.
>
> we do have two json files though: reproducible.json has all the
> information about all suites, while reproducible-tracker.json only has
> data for unstable. *Probably* the arch-summary should only be given for
> the
> rb-tracker.json, maybe only the arch-summary?
>
> rb-tracker.json should also exclude the "not-for-us" status as this is
> a
> deficiancy in our test setup and should not be displayed on trackers.
>
> OTOH, if it fails somewhere, it should be displayed on trackers even
> if's that package is nicely reproducible somewhere else. (Though for
> trackers we just care about unstable & maybe experimental.)
>
> We got consumers for the json data faster than we could create a
> coherent design :/ :)
>
Hurray! I started coding (when trapped without Internet earlier), now
for confirmation:
All possible status (Holger you mentioned "not for us" over irc, but
that results with that status are already excluded, along with
"blacklisted" and "404"):
['FTBFS', 'depwait', 'reproducible', 'unreproducible']
Tables of the result status, across (all two) architectures:
arch1 | reproducible | reproducible | ftbfs | depwait | depwait
|
arch2 | reproducible | unreproducible | * | repro/unrepro | depwait
|
status | reproducible | unreproducible | ftbfs | repro/unrepro | depwait
?? |
Questions:
- see ?? above -- I assume I copy over "depwait" here?
About the JSON format!
Old format:
{
"architecture": "armhf",
"build_date": "2016-02-06 22:26",
"package": "zzzeeksphinx",
"status": "reproducible",
"suite": "unstable",
"version": "1.0.17-1"
},
{
"architecture": "amd64",
"build_date": "2016-03-19 23:35",
"package": "zzzeeksphinx",
"status": "reproducible",
"suite": "unstable",
"version": "1.0.17-1"
},
New proposed format:
{
"architecture": "armhf",
"build_date": "2016-02-06 22:26",
"package": "zzzeeksphinx",
"status": "reproducible",
"suite": "unstable",
"version": "1.0.17-1"
"architecture_status": [
{
"architecture": "armhf",
"build_date": "2016-02-06 22:26",
"status": "reproducible"
},
{
"architecture": "amd64",
"build_date": "2016-03-19 23:35",
"status": "reproducible"
},
]
}
Or, should I drop the architecture_status in the "new proposed format"
altogether? Will no one need it?
yay!
Valerie
More information about the Reproducible-builds
mailing list