Files
Ruben Fiszel cbe47c0b6c fix: Fix worker panic when job_isolation changed to unshare at runtime (#8490)
* Fix worker panic when job_isolation changed to unshare at runtime

When an admin changes the Instance Setting "job_isolation" to "unshare"
while UNSHARE_PATH was never initialized (binary not available at startup),
the worker panics in build_command_with_isolation().

This happens because reload_job_isolation_setting() in monitor.rs validates
nsjail availability but not unshare availability before applying the setting.

Fix:
- Add unshare availability check in reload_job_isolation_setting(), matching
  the existing nsjail check
- Replace panic! in build_command_with_isolation() with an error log and
  graceful fallback to running without isolation

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* Improve error logging for unshare/nsjail unavailability at startup

- Upgrade unshare init logs from warn/debug to error level with detailed
  diagnostics (exit code, stderr, common causes, impact on job isolation)
- Upgrade nsjail init logs from info/warn to error level with clear
  messaging about unavailability consequences
- Force both UNSHARE_PATH and NSJAIL_AVAILABLE initialization at worker
  startup (not just when isolation is currently enabled) so availability
  is always logged regardless of current config
- Add explicit startup warnings when worker is configured for isolation
  but the binary is unavailable, referencing the init errors above

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-24 09:25:42 +00:00
..
nit
2025-11-14 11:32:38 +00:00