Confirmed users
4,293
edits
No edit summary |
m (→Release Engineering: scl1 -> scl3) |
||
(15 intermediate revisions by 4 users not shown) | |||
Line 12: | Line 12: | ||
* [[ReleaseEngineering/Mozpool/Allocating Pandas Between Teams]] | * [[ReleaseEngineering/Mozpool/Allocating Pandas Between Teams]] | ||
* [[ReleaseEngineering/Mozpool/Handling Panda Failures]] | * [[ReleaseEngineering/Mozpool/Handling Panda Failures]] | ||
= Available Device Images = | |||
; panda-android-4.0.4_v3.2 | |||
: Added SUTAgent 1.20 to base image | |||
; panda-android-4.0.4_v3.3 | |||
: Added [http://download.macromedia.com/pub/flashplayer/installers/archive/android/11.1.115.81/install_flash_player_ics.apk Adobe flash 11.1.115.81] to base image | |||
; panda-android-4.0.4_v3.1 | |||
: ''todo'' | |||
; android | |||
: ''todo'' | |||
; repair-boot | |||
: ''todo'' | |||
; b2g | |||
: ''obsolete'' | |||
= How-To's = | = How-To's = | ||
* [[ReleaseEngineering/Mozpool/How To Create | * [[ReleaseEngineering/Mozpool/How To Create a Panda Android Image Suitable For Mozpool]] | ||
* [[ReleaseEngineering/Mozpool/How To Interpret Device State in Mozpool]] | * [[ReleaseEngineering/Mozpool/How To Interpret Device State in Mozpool]] | ||
* [[ReleaseEngineering/Mozpool/How To Use the Mozpool Web UI]] including such classic hits as | * [[ReleaseEngineering/Mozpool/How To Use the Mozpool Web UI]] including such classic hits as | ||
Line 26: | Line 40: | ||
= Links = | = Links = | ||
* repositories - https://github.com/mozilla/mozpool and http://hg.mozilla.org/build/mozpool (synchronized by hand by developers) | |||
* http://hg.mozilla.org/build/mozpool/file/default/README.md (version-controlled documentation) | * http://hg.mozilla.org/build/mozpool/file/default/README.md (version-controlled documentation) | ||
* http://hg.mozilla.org/build/mozpool/file/default/API.txt (API documentation) | * http://hg.mozilla.org/build/mozpool/file/default/API.txt (API documentation) | ||
Line 57: | Line 72: | ||
== Release Engineering == | == Release Engineering == | ||
In the | In the scl3 datacenter, we have an initial deployment of 10 racks of Pandaboards. Each rack holds about 80 Pandas, grouped in custom-built chassis, for a total of about 800 pandas. Each rack also contains seven "foopies" (proxying between pandas and Buildbot) and one imaging server. Each rack has a dedicated VLAN, keeping most network traffic local to the rack. The database backend is MySQL. See the puppet modules, linked above, for more details of the deployment. | ||
At the BMM and Lifeguard levels, each imaging server is responsible for the pandas in its rack, as assigned in inventory. At the Mozpool level, each imaging server is responsible for all requests that were initiated locally. Mozpool uses HTTP to communicate with Lifeguard on other imaging servers when it needs to reserve a non-local device. | At the BMM and Lifeguard levels, each imaging server is responsible for the pandas in its rack, as assigned in inventory. At the Mozpool level, each imaging server is responsible for all requests that were initiated locally. Mozpool uses HTTP to communicate with Lifeguard on other imaging servers when it needs to reserve a non-local device. | ||
= Mozpool Client = | |||
In Release Engineering we use the mozpool client to talk with the Mozpool servers to request panda boards. | |||
To do this we install the python package inside of a virtual environment. | |||
The package is stored in pypi: | |||
* http://pypi.pvt.build.mozilla.org/pub/ | |||
* http://pypi.pub.build.mozilla.org/pub/ | |||
To create a new packaged version, checkout the mozpool repo and do the following: | |||
# Make your code changes | |||
# Update the version in [http://hg.mozilla.org/build/mozpool/file/default/mozpoolclient/setup.py#l5 setup.py] | |||
# Add a new line to [http://hg.mozilla.org/build/mozpool/file/default/mozpoolclient/CHANGES.txt CHANGES.txt] with the new version, the date and what is changing | |||
# cd mozpoolclient && python setup.py sdist | |||
To deploy to our pypi setup [[ReleaseEngineering:Buildduty:Other_Duties#Python_packages|follow these instructions]]. | |||
There is also a "fork" of the client code that lives in the tools repo: http://hg.mozilla.org/build/tools/lib/python/vendor/mozpoolclient-0.1.6 | |||
To update this version run the following commands: | |||
OLD=0.1.5 | |||
NEW=0.1.6 | |||
cd tools/lib/python/vendor | |||
hg move mozpoolclient-${OLD} mozpoolclient-${NEW} | |||
# Assuming mozpool is checked out at the same level as your tools repo. | |||
rsync --recursive --delete ../../../../mozpool/mozpoolclient/* mozpoolclient-${NEW} | |||
#Bump the version in here http://mxr.mozilla.org/build/source/tools/lib/python/vendorlibs.pth | |||
vi ../vendorlibs.pth | |||
hg commit -m"Bumping mozpool client vendor version from ${OLD} to ${NEW}" | |||
hg push | |||
'''NOTE''': if you're making API changes to the mozpool client, you'll need to update the consumers in the tools repo as well before committing. | |||
If you're the pypi package maintainer (armenzg or dustin), you can follow these [??? instructions]. |