This repository manages the deployment configurations for the RPDevs ecosystem build fleet.
The fleet is configured as a multi-tenant grid supporting:
- RPDevs-Vault (Org): Archival and Infrastructure Management.
- RPDevs-Builds (Org): High-frequency Kodi Core and Addon Builds.
- IamRPDev (User): Personal developer actions.
- llmadmin01: High-performance primary node (10 threads, 16GB RAM allocation).
- T430: Auxiliary/Parallel node (3 CPUs, 4GB RAM allocation).
The fleet uses a "Thin Runner" model where multi-gigabyte SDKs and toolchains are not baked into the Docker image. Instead, they are stored as centralized tarballs in /mnt/sharedroot/github_runners/shared/appdata and automatically staged to the runner's local fast storage (SSD/Zram) on startup.
The entrypoint.sh script detects the runner's RUNNER_LABELS and automatically extracts the required dependencies:
linux64: Provisions OpenJDK 17, Node.js 24, and pre-compiled Kodi Depends for Linux.android-arm64: Provisions Android SDK/NDK, OpenJDK 17, and Android Kodi Depends.osx64: Provisions macOS Kodi Depends (when running on self-hosted).
Kodi's tools/depends system is pre-compiled weekly via the Build and Archive Kodi Depends workflow in this repository.
- Workflow:
.github/workflows/build-depends.yml - Output Path:
shared/appdata/kodi-depends/<os>/depends.tar.gz - Benefit: Reduces Kodi Core build times from 60+ minutes to under 15 minutes.
On the target machine (llmadmin01 or T430), ensure you have the latest configurations:
cd /mnt/data/github_runners # (or /mnt/largedata/github_runners on llmadmin01)
git pull origin mainSince this repository manages multiple nodes, you must link the correct configuration to the root of your local folder:
# On T430:
ln -sf T430/docker-compose.yml .
# On llmadmin01:
ln -sf llmadmin01/docker-compose.yml .Ensure your workspace is fast and expandable:
# On T430 (32G Total, 4G RAM Limit)
sudo ./setup_flex_zram.sh /mnt/data/github_runners/work /mnt/data/github_runners/workflex/zram_back 4G 32G# Ensure GH_PAT is set in your environment
export GH_PAT=your_token_here
docker-compose pull && docker-compose up -dIf docker-compose is not installed on your system:
sudo apt-get update
sudo apt-get install -y docker-composeIf the runners fail to start with permission errors:
sudo chown -R 1000:1000 /mnt/data/github_runners/work