└── README.md /README.md: -------------------------------------------------------------------------------- 1 | # Repo usage 2 | This repository is used to store **build targets** for automated builds. 3 | The server triggers builds based on information stored in `crdroid.dependencies`. 4 | 5 | ### Usage 6 | To define a new build target, add an entry to `build_targets` using the format below: 7 | 8 | ``` 9 | 10 | ``` 11 | 12 | ### Field descriptions 13 | - **``** → Device codename 14 | - **``** → One of `user`, `userdebug` or `eng` 15 | - **``** → `yes` or `no` 16 | - when set to `yes`, the system automatically uploads the complete build and recovery to SourceForge 17 | - **``** → Array of images to preserve, e.g. `[boot.img, vendor_boot.img]` 18 | 19 | ### Dependencies 20 | Each device to be built must have its **`crdroid.dependencies`** file properly configured. 21 | > ⚠️ Cloning or managing source via `vendor.sh` call (`git clone`) is not allowed. 22 | 23 | ### Example format 24 | ```json 25 | [ 26 | { 27 | "repository": "crdroidandroid/android_device_oem_codename", 28 | "target_path": "device/oem/codename", 29 | "branch": "specific branch", 30 | "remote": "specific from manifest" 31 | } 32 | ] 33 | ``` 34 | 35 | ### Field descriptions 36 | 37 | `repository` → Required. Must point to the repo tracked from the crDroid organization for device trees (dt, common) and kernel 38 | 39 | `target_path` → Required. Destination path where the repo will be cloned 40 | 41 | `branch` → Optional. Defaults to the branch of the crdroid remote from the default.xml 42 | 43 | `remote` → Optional. Defaults to github remote from the default.xml 44 | 45 | ### Notes 46 | 47 | 1. Branch & remote defaults 48 | - Do not set `branch` or `remote` if using default values. 49 | - Example: For *crDroid 16*, the branch defaults to `16.0` and the remote defaults to `github`. 50 | 2. Repository sources 51 | - Device trees, kernels and addons must be tracked from crDroid’s GitHub or GitLab. 52 | - Hardware or smaller dependencies may be tracked from LineageOS. 53 | 3. Device acceptance 54 | - A device will only be officially accepted after two or three quality builds. 55 | - This requirement helps prevent "bot-like" maintainers. 56 | --------------------------------------------------------------------------------