On 12 August 2011 10:08, Paul Sokolovsky paul.sokolovsky@linaro.org wrote:
On Fri, 12 Aug 2011 18:05:29 +0300 Paul Sokolovsky Paul.Sokolovsky@linaro.org wrote:
On Fri, 12 Aug 2011 09:01:14 -0500 Zach Pfeffer zach.pfeffer@linaro.org wrote:
Oh, the other thing is to generate the pinned-manifest.xml before the build is made so that the build comes from the pinned-manifest. This'll save us a step.
One reliable way to do this is tagging, like I argued the other time. We start build with tagging all components with (special) tag for this builds number. Then checkout exactly that tag (that will be a bit more complicated than usual with repo and its manifests), then do build, then can reproduce it 100% without recoursing to raw SHA1 revids. If one specific build is useful, we can re-tag it "normal" tags. Otherwise, those special build tags will be expire after some time t avoid pile-up.
Oh well, but that's complicated by the fact that we have read-only intermediate mirror for build ;-\ .
Right, and that why we need the pinned-manifest.xml I guess. So the idea would be:
Generate the pinned-manifest.xml Build from the pinned-manifest.xml If we like the build, we click save that commits the pinned-manifest.xml and the whole thing gets a tag
We would have on linaro-master:
default.xml
panda-stage.xml panda-pinned.xml
iMX53-stage.xml iMX53-pinned.xml
origen-stage.xml origen-pinned.xml
snowball-stage.xml snowball-pinned.xml
default.xml, *-stage.xml would be the tips and *-pinned.xml would get commited to when we liked a build. We would know that the build was exactly what we tested since we would have built from the pinned-manifest.xml itself. During a save we would lay a tag down like: 11.08-rc1, 11.08-rc2...and the final tag would be 11.08 which may be coincident to an existing tag or may be a new point in time.
-Zach
-- Best Regards, Paul
Linaro.org | Open source software for ARM SoCs Follow Linaro: http://www.facebook.com/pages/Linaro http://twitter.com/#%21/linaroorg - http://www.linaro.org/linaro-blog