Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Dev Iteration (Tilt)

Tilt enables rapid development iteration on Kubernetes by watching source files and live-syncing changes into running pods.

Strategy

The Tiltfile uses a two-tier approach:

TierTriggerActionSpeed
Live updateSource file changes (.rs, .py)Sync into running pod~3-5s
Full rebuildDockerfile or dependency changesPodman build + push~30-60s

Configuration

The Tiltfile at project root configures:

  • Image build: Custom build using tilt/build-and-push.sh (Podman-based)
  • K8s overlay: tilt/engine-dev.yaml overrides the production deployment with dev settings
  • Port forwards: gRPC engine on localhost:50051

Usage

# With RKE2
KUBECONFIG=~/.kube/rke2.yaml tilt up

# With k3d
KUBECONFIG=~/.kube/k3d.yaml tilt up

Tilt will:

  1. Build the signals-engine image using Podman
  2. Push to the local registry (127.0.0.1:31999)
  3. Apply the dev overlay to the cluster
  4. Watch for source changes and live-sync

Dev Overlay

The tilt/engine-dev.yaml configures the engine for development:

  • Single replica
  • RUST_LOG=debug for verbose logging
  • Relaxed resource limits (2Gi memory, 2 CPU)

Files

FilePurpose
TiltfileTilt configuration (image build, resources, port forwards)
tilt/engine-dev.yamlDev Kubernetes overlay for signals-engine
tilt/build-and-push.shPodman build and push script