Fast live debugging of running services without image rebuilds. Disables selfHeal, patches workloads for write access, syncs files, restarts services via supervisorctl, and restores via ArgoCD.
Debug running services by patching workloads for write access, syncing local binaries/files, and restarting services via supervisorctl — all without rebuilding container images.
All service containers run supervisord as PID 1 with a [program:app] service.
/neb-debug-quick enter|sync|restart|restore [args]
Edit the appset YAML in gitops/gitops-platform-shared/deploy/addons/nebcore/<app>.yaml:
selfHeal: false and prune: false# DEBUG MODE — do NOT re-enable selfHeal/prune. Only humans restore this after debugging.CRITICAL: AI models MUST NOT re-enable selfHeal or prune. Only humans restore these settings.
The enter command patches the workload to:
readOnlyRootFilesystem: falserunAsUser: 0, runAsGroup: 0, runAsNonRoot: false (run as root for full filesystem write access)scripts/neb-debug-quick.sh enter \
--cluster infra-use2-mgmt-aws-0 \
--ns infra-use2-mgmt-aws-0-platform-backend \
--workload deploy/platform-backend
# Go services (cross-compile for arm64)
GOOS=linux GOARCH=arm64 go build -o ./bin/platform-backend ./cmd/platform/main.go
scripts/neb-debug-quick.sh sync \
--cluster infra-use2-mgmt-aws-0 \
--ns infra-use2-mgmt-aws-0-platform-backend \
--selector app.kubernetes.io/name=platform-backend \
--src ./bin/platform-backend --dst /platform-backend
scripts/neb-debug-quick.sh restart \
--cluster infra-use2-mgmt-aws-0 \
--ns infra-use2-mgmt-aws-0-platform-backend \
--selector app.kubernetes.io/name=platform-backend
scripts/neb-debug-quick.sh restore \
--cluster infra-use2-mgmt-aws-0 \
--ns infra-use2-mgmt-aws-0-platform-backend \
--workload deploy/platform-backend
syncsync + restart insteadsupervisorctl restart app via restart commandThe debug cycle is: build locally → sync to pod → supervisorctl restart app. No CI, no image builds, no pod restarts.
cd nebcore/platform-backend
GOOS=linux GOARCH=arm64 go build -o ./bin/platform-backend ./cmd/platform/main.go
scripts/neb-debug-quick.sh sync --cluster infra-use2-mgmt-aws-0 --ns infra-use2-mgmt-aws-0-platform-backend --selector app.kubernetes.io/name=platform-backend --src ./bin/platform-backend --dst /platform-backend
scripts/neb-debug-quick.sh restart --cluster infra-use2-mgmt-aws-0 --ns infra-use2-mgmt-aws-0-platform-backend --selector app.kubernetes.io/name=platform-backend
scripts/neb-debug-quick.sh sync --cluster infra-use2-mgmt-aws-0 --ns infra-use2-mgmt-aws-0-nebcore-ai-server --selector app.kubernetes.io/name=nebcore-ai-server --src ./patches/activity-log.js --dst /app/server/dist/services/activity-log.js
scripts/neb-debug-quick.sh restart --cluster infra-use2-mgmt-aws-0 --ns infra-use2-mgmt-aws-0-nebcore-ai-server --selector app.kubernetes.io/name=nebcore-ai-server
cd nebcore/nebcore-operator
GOOS=linux GOARCH=arm64 go build -o ./bin/nebcore-operator .
scripts/neb-debug-quick.sh sync --cluster infra-use2-mgmt-aws-0 --ns infra-use2-mgmt-aws-0-nebcore-operator --selector app.kubernetes.io/name=nebcore-operator --src ./bin/nebcore-operator --dst /nebcore-operator
scripts/neb-debug-quick.sh restart --cluster infra-use2-mgmt-aws-0 --ns infra-use2-mgmt-aws-0-nebcore-operator --selector app.kubernetes.io/name=nebcore-operator