ReleaseEngineering/How To/Update BuildAPI
BuildAPI is composed of a web application plus an agent that runs on a few buildmasters (self-serve agent). Also see ReleaseEngineering/BuildAPI
So, how do you update one of those?
Common
Bump the version in setup.py if you haven't already done so in your patch, get review and land in the repo.
Build a new sdist tarball of BuildAPI, using normal python techniques, and upload it to the puppetagain python repository at releng-puppet2.srv.releng.scl3.mozilla.com (/data/python/packages on the distinguished puppetmaster).
- Tarballs can be seen here: http://puppetagain.pub.build.mozilla.org/data/python/packages/
You will need this diff in your local copy of setup.cfg:
diff --git a/setup.cfg b/setup.cfg --- a/setup.cfg +++ b/setup.cfg @@ -1,5 +1,5 @@ [egg_info] -tag_build = dev -tag_svn_revision = true +tag_build = +tag_svn_revision = 0
In detail:
python setup.py sdist scp dist/buildapi-0.2.4.tar.gz releng-puppet2.srv.releng.scl3.mozilla.com: ssh releng-puppet2.srv.releng.scl3.mozilla.com sudo mv buildapi-0.2.4.tar.gz /data/python/packages cd /data/python/packages sudo chown puppetsync:puppetsync buildapi-0.2.4.tar.gz sudo chmod 664 buildapi-0.2.4.tar.gz
Web Application
Login to relengwebadm.private.scl3.mozilla.com and become root. Go to
- /data/releng-stage/src/buildapi for staging
- /data/releng/src/buildapi for production
and have a look at README.txt.
If 0.2.4 is the version you want to install, it boils down to:
./update 0.2.4
Self-Serve Agent
Update the buildapi version in puppet, get review, land, and merge to production. Puppet will deploy within 60 minutes, usually within 30.