Chromium example
This deployment sets up a 4-container deployment with separate CAS, scheduler and worker. Don’t use this example deployment in production. It’s insecure.
All commands should be run from nix to ensure all dependencies exist in the environment.
nix developIn this example we’re using kind to set up the cluster cilium to provide a
LoadBalancer and GatewayController.
First set up a local development cluster:
native upNext start a few standard deployments. This part also builds the remote execution containers and makes them available to the cluster:
./01_operations.shFinally, deploy NativeLink:
./02_application.shThis demo setup creates two gateways to expose the cas and scheduler
deployments via your local docker network:
CACHE=$(kubectl get gtw cache-gateway -o=jsonpath='{.status.addresses[0].value}')SCHEDULER=$(kubectl get gtw scheduler-gateway -o=jsonpath='{.status.addresses[0].value}')
echo "Cache IP: $CACHE"echo "Scheduler IP: $SCHEDULER"Using ./03_build_chrome_tests.sh example script will download needed dependencies
for building Chromium unit tests using NativeLink CAS and Scheduler. The initial part
of the script checks if some dependencies exist, if not installs them, then moves on
to downloading and building Chromium tests. The script simplifies the setup described
in linux/build_instructions.md
./03_build_chrome_tests.shWhen you’re done testing, delete the cluster:
kind delete clusterNativeLink Community
If you have any questions, please reach out to the NativeLink Community.