| Filename | Latest commit message | Latest commit date |
|---|---|---|
Moves the base settings of the OFRP-12.1 Jenkins job into build.toml: portal project orangefox (R12.1), OFRP-12.1 release naming, ZFS dataset build/ofox-12.1, lunch twrp_<codename>-eng with FOX_BUILD_DEVICE, mka adbd, and the OrangeFox .img/.zip with their native .md5 files. README: adding a device no longer needs a new job; adding a base needs build.toml, @warm, a job named after the branch and a portal mapping. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> |
||
| avatrn.xml | ||
| build.toml | ||
| genevn.xml | ||
| LICENSE | ||
| milanf.xml | ||
| mona.xml | ||
| README.md | ||
| rtwo.xml | ||
| sycamore_row_5G.xml | ||
build_manifests
Device manifests for the A-Team Jenkins build pipelines.
Each base branch has one Jenkins job (named after the branch) running the shared Jenkinsfile from main. It rolls the base's warm source tree back to @warm, drops one device XML into .repo/local_manifests/, syncs only the projects listed in it, reads the device info from its annotations and the base settings from the branch's build.toml.
Layout
One branch per build base, one file per device.
ofrp-12.1/ genevn.xml milanf.xml rtwo.xml ...
twrp-12.1/ genevn.xml ...
aera-16.0/ genevn.xml milanf.xml ...
A job points at a branch + file, e.g. ofrp-12.1 / genevn.xml.
Device XML
A standard repo local manifest, plus ateam.* annotations on the device tree project.
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<remote name="ateam" fetch="ssh://git@ateam.gotadell.com/" />
<project path="device/motorola/genevn"
name="A-Team_Digital_Solutions/recovery_device_motorola_genevn"
remote="ateam" revision="ofrp-12.1">
<annotation name="ateam.model" value="XT2315"/>
<annotation name="ateam.device_name" value="Moto G Stylus 5G 2023"/>
<annotation name="ateam.manufacturer" value="Motorola"/>
<annotation name="ateam.partition" value="recovery"/>
</project>
</manifest>
Annotations
All four are required; the build stops if one is missing.
| Annotation | Used for | Example |
|---|---|---|
ateam.model |
Release file name, portal device name | XT2315 |
ateam.device_name |
Portal device name | Moto G Stylus 5G 2023 |
ateam.manufacturer |
Portal | Motorola |
ateam.partition |
Build target and flash target | recovery |
ateam.partition must be one of:
| Value | Builds |
|---|---|
recovery |
recoveryimage |
boot |
bootimage |
vendor_boot |
vendorbootimage |
The portal shows the device as <device_name> (<model>).
Projects
- List the device tree plus anything else the device needs (kernel, vendor, common trees).
- Every project listed gets synced; nothing else in the base tree is touched.
- Any git source works. Add another
<remote>for GitHub or elsewhere; the device tree doesn't have to live on A-Team Forgejo. - Pin
revisionto the branch for that base (e.g.ofrp-12.1). - Don't add projects that override the base's own repos. Device-specific fixes go in the device trees.
Release naming
Builds come out as:
<RECOVERY>-<ver>_A-Team_<codename>_<model>-<YYMMDD>.<img|zip>
plus a .sha256 for each, e.g. OFRP-12.1_A-Team_genevn_XT2315-261009.zip.
Adding a device
- Clone and switch to the base branch:
git clone ssh://git@ateam.gotadell.com/A-Team_Digital_Solutions/build_manifests.git cd build_manifests git checkout ofrp-12.1 - Copy an existing XML to
<codename>.xmland edit the projects and annotations. - Commit and push.
- That's it: the branch's Jenkins job (named after the branch, e.g.
ofrp-12.1) lists the new XML in itsDEVICEdropdown, and the portal picks it up on its next device sync.
Adding a base
- Create a new branch named
<base>-<version>(e.g.shrp-12.1) and add a device XML for each device built on it. Each base has its own copy of a device's XML, so update model or name changes on every branch that has that device. - Add a
build.toml(see the README onmain) describing the base: portal project, release naming, ZFS dataset, lunch target and release files. - Prepare the warm source tree on buildBox and snapshot it as
<dataset>@warm. - Create a Jenkins job named exactly like the branch, using Pipeline script from SCM on
build_manifestsbranchmain, script pathJenkinsfile. - Map the portal project to the job in the portal admin.