Provide Snapshot Manifests for Each Build

Registered by Zach Pfeffer

With so many builds available, it is a must to provide with each build manifests specifying from what source tree it was built, as well as exact revisions used to build, to allow complete reproducibility.

For every Android build I would like to automatically generate a snapshot manifest. After syncing the default manifest this manifest would be created. This snapshot manifest would be listed on the build page (listed on https://android-build.linaro.org/builds/~linaro-android/leb-panda/#build=68 for instance). The snapshot manifest would list all the commits of all the heads explicitly. We do this for "release builds" but I'd like to do this for all builds so that I can list what's in this build easier and I can recreate the build exactly.

Blueprint information

Status:
Complete
Approver:
Zach Pfeffer
Priority:
High
Drafter:
Paul Sokolovsky
Direction:
Approved
Assignee:
Paul Sokolovsky
Definition:
Approved
Series goal:
Accepted for 2011q2
Implementation:
Implemented
Milestone target:
milestone icon 11.06
Started by
Paul Sokolovsky
Completed by
Paul Sokolovsky

Related branches

Sprints

Whiteboard

Headline: For each Android platform build, a source and release manifests are now provided together with download tarballs, allowing to easily look up components used in particular build and 100% reproduce it elsewhere.

[asac 2011, Jul 10]: Definition: Drafting -> thats wrong; a project must not make any progress during drafting in theory. Something with almost all items done must be approved at least; tentatively approving: Please ensure a good headline Lands as first line in blueprint summary that can be used to summarize this feature in market compatible achievement of this spec.

Use repo manifest -r to produce revision-pinned manifest. Caveat: it should be done using the original, not mirrored, manifest.

(?)

Work Items

Work items:
Export out/*.xml as build artfacts: DONE
Export input manifest as source-manifest.xml: DONE
Make and export revision-pinned manifest as pinned-manifest.xml: DONE
Tweak naming and source manifest availability as needed: DONE

This blueprint contains Public information 
Everyone can see this information.