Job-Based Runners & Custom Regions
This release improves Daytona’s core infrastructure by introducing a job-based runner architecture (v2), enabling more robust task execution and health monitoring.
It adds comprehensive support for custom regions and runners, allowing organizations to deploy resources across specific geographical zones with dedicated SSH gateways and proxy support.
The update also features a new region snapshot manager and signed preview URLs in the SDK, enhancing how developers manage and access sandboxed environments.
In addition to these major features, the release includes critical stability patches for API downtime handling, private DockerHub image inspection, and improved error handling for regional access guards.
These changes collectively provide a more flexible and reliable foundation for large-scale deployments, ensuring better performance and control over global infrastructure.
Release Details
Features
job-based runner (v2) (#3219)
api: per-region SSH gateway and proxy support (#3119)
api: admin controller for runners (#3175)
api: region partial indices (8661d5b37)
api,cli,dashboard,docs: region snapshot manager (#3255)
api,dashboard: organization infra feature flag (#3172)
api,dashboard,docs: custom regions and runners (#3015)
api,dashboard,docs,sdk: snapshot region (#3213)
api,sdk,docs: add signed preview url feature to SDK (#3377)
docs: custom regions and runners (#3364)
Fixes
api: job unique index include runnerId (87c6d6b59)
api: getAvailableTransientRegistry param type (0489e3cff)
api: snapshot entity default values (9d37ff7b8)
api: region access guard (82987d73b)
api: use sandbox event channel constant (23c53ce31)
api: get org source registry (74045b578)
api: account for api downtime in runner v2 health check (20e66ca46)
api: include environment in posthog org properties (0dfc305a5)
api: create snapshot from build info event emit (6ea82370e)
api: default build logs proxy url (50a903197)
api: private dockerhub image inspect (b54dd149f)
api: rollback pending usage on duplicate sandbox name conflict (1d68e32cc)
dashboard: trim runner name (f4fd52e7f)
docs: regions and runners api key permissions (3faef2231)
proxy: handle host with - (8053b6ec8)
runner: registry creds (97e4c3950)
runner: sandbox set recoverable in v0 api (fed4feac9)
runner: build log filepath (772af488f)
sdk: respect DAYTONA_TARGET env for snapshot creation (#3337)
sdk: check buildInfo before streaming snapshot build logs (#3400)
sdk: build logs url (55e304694)
sdk-python: dictionary get (f66f521d6)
Refactor
Chores