my build machine for bromite development
.github/workflows | ||
images | ||
.gitignore | ||
apply-all-patch.sh | ||
apply-bromite-patches.sh | ||
apply-failed-patch.sh | ||
apply-single-patch.sh | ||
build-from-repos.sh | ||
buildbox-casd | ||
buildbox-run-hosttools | ||
buildbox-worker | ||
casupload | ||
clone-src.sh | ||
create-from-patch.sh | ||
depot_tools.diff | ||
export-all-patch.sh | ||
export-patch-list.sh | ||
export-single-patch.sh | ||
goma_auth.py | ||
LICENSE | ||
ninja-one-target-for-compdb.patch | ||
prepare-build.sh | ||
README.md | ||
setup-goma-client.sh | ||
start_proxy.sh | ||
start-build.sh | ||
start-goma-server.sh |
bromite-buildtools
this repo contains my build machine and some scripts I use for Bromite development. the ci uses a modified version of the gihub runner (avaiable here) and use sysbox to improve security. it also contains everything you need to use a self-hosted modified version of goma for a multi-machine build
Setting-up
- Prepare folders
cd ~ && mkdir gh-runner
cd gh-runner && mkdir docker-inner
SYSBOX_UID=$(cat /etc/subuid | grep sysbox | cut -d : -f 2)
sudo chown $SYSBOX_UID:$SYSBOX_UID docker-inner/
mkdir /storage
sudo chown $SYSBOX_UID:$SYSBOX_UID /storage
- Clone this repo
- Prepare
.env
cd bromite-buildtools/images/github-runner/
cp .env.example .env
- Edit
.env
file
RUNNER_NAME=pd-gh-runner
GITHUB_PERSONAL_TOKEN=<git-token>
GITHUB_OWNER=uazo
GITHUB_REPOSITORY=bromite-buildtools
RUNNER_LABELS=dev
ALLOWEDAUTHORSLIST=uazo
- Prepare for windows cross build Follow the instructions to create the zip with the toolchain
example:
cd path\to\depot_tools\win_toolchain
D:\Downloads\depot_tools\win_toolchain> package_from_installed.py --allow_multiple_vs_installs -w 10.0.20348.0 2019
create the /casefold
in the unix host with casefold attribute and unzip the contents into.
~$ ls /casefold/10.0.20348.0/ -la
total 36
drwxr-xr-x 8 root root 4096 Oct 5 13:20 .
drwxr-xr-x 5 root root 4096 Oct 5 13:17 ..
drwxr-xr-x 6 root root 4096 Oct 5 13:19 'DIA SDK'
drwxr-xr-x 2 root root 4096 Oct 5 13:20 sys32
drwxr-xr-x 2 root root 4096 Oct 5 13:20 sys64
drwxr-xr-x 2 root root 4096 Oct 5 13:20 sysarm64
drwxr-xr-x 5 root root 4096 Oct 5 13:20 VC
-rw-rw-rw- 1 root root 5 Sep 26 17:05 VS_VERSION
drwxr-xr-x 3 root root 4096 Oct 5 13:20 'Windows Kits'
- Start the runner
cd bromite-buildtools/images/github-runner/
./start-runner.sh