It is fragile, but I think its the only way to do it and still give people the ability to create arbitrary builds easily, with 100% fidelity using a method that's easy to automate and that generally works. Since we need to use repo -r, we don't want to have people using side gits if we can help it, and we want to follow Google's processes as much as we can.
-Zach On 12 July 2011 02:07, Ricardo Salveti <ricardo.salv...@linaro.org> wrote: > On Mon, Jul 11, 2011 at 6:18 PM, Alexander Sack <a...@linaro.org> wrote: >> On Mon, Jul 11, 2011 at 4:11 PM, Zach Pfeffer <zach.pfef...@linaro.org> >> wrote: >>> In-order to make reproducible builds we create pinned manifests with >>> each commit explicitly listed. We also use this method to create a >>> release. We depend on these pinned commits - if they don't exist the >>> "released" builds can no longer be reproduced. >> >> One amend: the commits need to exist AND need to be reachable through a head. >> >> In other words: due to how the repo tool work, tagging and then >> rebasing will not be good enough. > > For me this seems to be quite fragile, as you're expecting the > upstream tree for a component to not rebase the tree. > > At least when looking at what happened with u-boot-linaro, where a > rebase is expected by the way John is maintaining his tree, this > method will fail unless you're building against a tag (as I believe > git will respect the tag even if the tree was rebased in some way). > > Is there other way to fix this at the tool instead of forcing the > component tree owner to not rebase the tree? > > Cheers, > -- > Ricardo Salveti de Araujo > _______________________________________________ linaro-dev mailing list linaro-dev@lists.linaro.org http://lists.linaro.org/mailman/listinfo/linaro-dev