ReleaseEngineering/Upgrading Buildbot: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
No edit summary
(deleting obsolete page)
 
(2 intermediate revisions by one other user not shown)
Line 1: Line 1:
= Structure =


Mozilla's copy of Buildbot is at http://hg.mozilla.org/build/buildbot.  There are two branches in this repository - ''upstream'' and ''default''.  The former is basically a copy of the Buildbot source from git, while the latter is the locally patched version.
If you have a look at the revision graph, you'll see that ''upstream'' gets updated with each new buildbot release, then merged into ''default''.
= Upgrading Process =
Get a copy of upstream Buildbot from a tag, as a tarball.  The easiest way is to go to the '[https://github.com/buildbot/buildbot/downloads downloads]' page on github and download the appropriate tarball.  You can also make a clone and use ''git archive''.
In a checkout of ''build/buildbot'',
* switch to the ''upstream'' branch,
* ''rm -rf'' everything,
* untar the tarball, and
* use ''hg addremove'' to process any added or removed files. 
Commit with a message like "Imported Buildbot-0.8.2 source", then tag with e.g., ''BUILDBOT_0_8_2''.
Switch to the ''default'' branch and use ''hg merge'' to merge the changes.  Resolve any conflicts (bearing in mind that they may be significant, rather than merely textual).
Commit your updates to ''default''.  That's it - now it's time to test!
== Staging a New Master ==
On a staging machine,
* clone your buildbot hg repo into ''/tmp'' or somewhere convenient
* create a new virtualenv in /tools, using python-2.6.5:
  /tools/python-2.6.5/bin/virtualenv /tools/buildbot-0.8.2
* activate it
  source /tools/buildbot-0.8.2/bin/activate
* install the buildbot (master) package
  cd master/
  pip install .
Back in your staging directory, edit the Makefile to point it at the new version:
  BUILDBOT=/tools/buildbot-0.8.2/bin/buildbot
that's it - ''make restart'' and check the /about URI to make sure it upgraded (you should see an hg revision in the footer).  You will probably need to run ''buildbot upgrade-master'' to upgrade the database first, but the buildmaster will tell you that.

Latest revision as of 21:46, 19 November 2018