Repository navigation
Feat/concurrent deployments in memory queue - #4645
Merged
Merged
Conversation
- Introduced a new `BuildsConcurrency` component to manage the number of concurrent builds for both local and remote servers, gated by license validity. - Implemented backend logic to resolve effective builds concurrency based on server settings and organization licenses. - Added unit tests for concurrency resolution logic to ensure correct behavior under various licensing scenarios. - Updated database schema to include `buildsConcurrency` field for servers and web server settings. - Refactored deployment queue to support in-memory job processing with configurable concurrency limits. This feature enhances deployment flexibility and control for enterprise users.
…build isolation - Reintroduced the `initCancelDeployments` function in the server initialization sequence to ensure deployments can be canceled effectively. - Updated the Railpack build command to use a unique builder name for each build, preventing conflicts during concurrent deployments. - Enhanced the cancellation logic to reset application and compose statuses to "idle" after canceling running deployments, improving system reliability.
- Introduced a new `buildsConcurrency` property in the server configuration tests to ensure proper handling of concurrent builds in deployment scenarios.
- Added `assertBuildsConcurrencyAllowed` function to validate concurrency settings based on license status. - Updated `resolveBuildsConcurrency` to reflect new concurrency limits for free and enterprise tiers. - Enhanced `BuildsConcurrency` component to manage concurrent builds for servers, with UI adjustments for better user experience. - Introduced a new settings page for managing concurrent builds across servers, ensuring proper handling of deployments. - Updated database schema to support increased maximum concurrency values for servers and web server settings.
masonjames
added a commit
to masonjames/dokploy
that referenced
this pull request
Jul 3, 2026
Resolves conflicts with 16 upstream commits, notably: - Renumber caddy migration 0172_parched_ares -> 0173_cool_vargas (upstream 0172_quick_the_professor from concurrent deployments Dokploy#4645 is canonical); regenerated snapshot on top of upstream's, restored idempotent DDL so hosts that applied the old identity no-op cleanly - Adopt dynamic traefik container resolution in access-log cleanup (Dokploy#4646) within the provider-aware handler - Accept admin-tools refactor (Dokploy#4625): traefik file-system modal is deleted; /dashboard/traefik page with ServerFilter is now the entry point and is cloud-enabled, ShowTraefikSystem stays provider-aware with a provider-aware empty state path - Fold buildsConcurrency (server + webServerSettings) alongside caddy provider columns in db schema - Tailwind v4 class renames (shadow-xs, h-140) applied to our provider-aware components, keeping caddy language switch and pointer-events-none read-only overlay fix Co-Authored-By: Claude Fable 5 <[email protected]>
masonjames
added a commit
to masonjames/dokploy
that referenced
this pull request
Jul 3, 2026
Upstream's concurrent deployments (Dokploy#4645) allow builds to finish simultaneously. The active caddy.json is compiled from the fragments directory, so an unsynchronized read-compile-write could publish a config missing a concurrently written fragment, and the rm-rf-based restoreCaddyRouteFragments rollback could delete another deployment's fragment outright. Add a per-server promise-chain lock; the public compile+reload entry takes it, and the fragment read-modify-write flows (application domains, compose domains, dashboard route) hold it across their full capture-mutate-compile-rollback sequences. Co-Authored-By: Claude Fable 5 <[email protected]>
AminDhouib
added a commit
to ajnart/dokploy-ce
that referenced
this pull request
Jul 15, 2026
…oncurrency impl, keep network management) Sync fork to Dokploy v0.29.11 (tag 1c44141). Conflict policy: - Upstream wins by default on all overlapping code. - DROP the fork's concurrent-deployments implementation (superseded by upstream Dokploy#4645 + v0.29.11 OSS concurrent builds): took upstream's deployments-queue.ts, queueSetup.ts, server.ts, routers, schema, and UI; deleted queue-routing.ts / job-context.ts / concurrency modals / concurrency tests; reverted execAsync.ts and pages/api/deploy/*.ts. - KEEP the fork's Docker network-management feature (no upstream equivalent), re-integrated onto upstream's Tailwind-v4-refactored files: network router registration, nav entry, per-service network cards, schema relations/exports, and per-resource attach hooks. - Fork-owned files kept ours: README.md, CNAME, install.sh, .github/workflows/dokploy.yml, services/settings.ts fork sources. - Version set to v0.29.11-devino.1. Drizzle network migration regeneration + sync playbook + .gitattributes merge=ours drivers follow in subsequent commits. Co-Authored-By: Claude Fable 5 <[email protected]> Claude-Session: https://claude.ai/code/session_013BDnry4m2EoRRM1LdvEmqV
3 tasks done
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What is this PR about?
Please describe in a short paragraph what this PR is about.
Checklist
Before submitting this PR, please make sure that:
canarybranch.Issues related (if applicable)
closes
Screenshots (if applicable)