ReleaseEngineering/Archive/Create new B2G build
Contents
This page is obsolete
Bugs
If we don't have one already, make sure there's a 'How to build X manually' bug filed. See e.g. bug 978888 We'll also need to get any binary blobs from developers or QA at this point (this will be used in the tooltool manifest later)
In-tree files
In the gecko repo we will need a
- sources.xml - a source manifest, which is a copy of the file in b2g-manifests updated to point at our mirror of repos
- config.json - a device specific mozharness config
- (maybe) a tooltool manifest - if we have binaries from a vendor to unpack at build time (config.json will refer to this manifest)
These all live in b2g/config/<device>/. They need to land in the appropriate gecko before builds are enabled in buildbot.
Source manifest
The in-tree manifest, sources.xml, is used to determine which sources to pull. To make sure these are being updated properly, ensure that the new device is added to the b2g_bumper configs.
If this is a brand new device, or even running on a new branch, you may need to get new repositories mirrored. This command may be helpful to find these repositories:
b2g_bumper.py -c b2g_bumper/<branch>.py --massage-manifests --checkout-manifests --no-write --device <newdevice>
You may need to adjust the mappings in 'repo_remote_mappings' in b2g_bumper/<branch>.py if you get a "Wasn't able to map" error.
Otherwise, the script should either succeed or generate a bunch of "needs sync" output that should be copied into a bug like bug 1014102
mozharness config
This specifies things like mock packages, environment, build targets, files to upload, where to get l10n from. See existing devices to get started.
tooltool manifest
Typically used to unpack backup-<device>.tar.xz (binaries from vendors base image, provided by QA/developer), and other proprietary driver source/binaries.
buildbot changes
b2g_config.py will need adjusting for your device.
tbpl
File a bug like bug 984428 to get the new device supported in tbpl
prior art
See bug 991393 and bug 979450 for recently added devices