On 01/18/2014 09:48 PM, Matt Madia wrote:
The nightlies are built by a simple bash script, regulated by cron. It is an all-or-nothing operation that depends on x86_gcc2, x86 and x86_64 to be built properly. No repositories are uploaded from this script. Buildbot will create and upload the repositories as part of the x86_gcc2, x86, and x86_64 compilation-test builds. At the time it was set up, I thought it was better to have repositories for as many revisions as possible (as opposed to just one per successful nightly image).
Doesn't that also mean there's a race condition? If someone commits something just after the nightly script has pulled, buildbot might not build a repository for the nightly revision. Or is there some mechanism to ensure that?
One of my concerns with having the nightly upload as part of Buildbot is that anyone with web access would be able to trigger a build for the nightly images. (Learning more of Buildbot's functionality is on the perpetual TODO list.)
However it is done, the nightly images and the repository should use the exact same package files (not just package files built from the same revision).
I think the simplest way to achieve that is to have the nightly script also build the repository. I don't think it is necessary to have repositories for additional revisions. People who built their own images can just add additional packages via their UserBuildConfig, so they don't need the repository anyway.