Commit graph

626 commits

Author SHA1 Message Date
Andras Bacsai
fc9e61b7b4 feat(services): open resource settings in a modal with restart limits
Move service application and database settings into an embedded modal with a footer, subtitle helper, and Docker restart-count control. Accept max_restart_count on the service applications API, cap compose YAML collection aliases, and tighten status, backup, and database sidebar layouts.
2026-09-10 17:39:56 +02:00
Andras Bacsai
d24ee35824 fix(s3): allow uppercase letters in S3 bucket names
S3-compatible and legacy buckets may include uppercase letters. Relax the bucket name pattern, validation messages, and tests so those names are accepted while still rejecting invalid characters and formats.
2026-09-10 15:12:53 +02:00
Andras Bacsai
a0a8c86752 fix(domains): ignore hostless URLs in deployment and port overrides 2026-09-10 12:33:50 +02:00
Andras Bacsai
0134401f7c fix(service): write compose .env files atomically via temp rename
Replace direct .env overwrite with a unique temp file and mv so a
partial write cannot leave a truncated environment file on disk.
2026-09-10 09:24:37 +02:00
Andras Bacsai
361d5a3c8c feat(deploy): pull compose images before stopping containers
Pull image-based Docker Compose services with --ignore-buildable before stopping the current deployment so image-only services are ready first. Fail the deploy if pull fails, and run the pull on the runtime server when a build server is used.
2026-09-10 09:03:28 +02:00
Andras Bacsai
424dbd36ff feat(sentinel): make sentinel mandatory on regular servers
Remove the enable/disable toggle from the server UI, logs page, and
Sentinel API so is_sentinel_enabled is derived and read-only. Enable
existing regular servers via migration, start Sentinel after validate-
and-install, and drop the daily ServerManagerJob restart.
2026-09-09 06:30:32 +02:00
Andras Bacsai
83714ea395 fix(git): parse generic scp-style SSH URLs with custom users
Centralize scp-style Git URL parsing so user@host:path (including custom
usernames and embedded ports) is accepted and converted to HTTPS for
public clones, API create, webhooks, validation, and commit/branch links.
2026-09-08 20:33:45 +02:00
Florian Pfitzer
e9bf2551ed fix: support generic SSH Git usernames 2026-09-08 16:11:56 +02:00
Andras Bacsai
4a3dc11958 feat(ui): polish env editor, error buttons, and modal layout 2026-09-08 11:49:02 +02:00
Aditya Tripathi
0cdb98d969 fix(ui): use dropdown-level shadow for popovers and floating menus
Replace inline modal-shadow styles on toasts, popups, and warning
banners with a shared `surface-popover` utility that uses the lighter
dropdown shadow instead of the heavier modal shadow. Apply the same
`shadow-dropdown` swap to the deployments indicator pill and the
server/deployment log floating menus. Remove now-unused console
header and error-contact-link rules from app.css, and add a test
asserting these surfaces consistently use the dropdown shadow.
2026-09-08 07:05:01 +02:00
Andras Bacsai
4766a662fe fix: preserve shell negation in sudo commands 2026-09-07 14:08:11 +02:00
peaklabs-dev
5303ff1246
fix(notifications): hetzner deletion failure channel name 2026-09-05 12:32:25 +02:00
peaklabs-dev
0ae8539b80
Merge remote-tracking branch 'origin/main' into pr/11528 2026-09-04 18:25:18 +02:00
Andras Bacsai
dba3d114e5 chore(release): bump Coolify version to 4.3.18 2026-09-04 18:09:53 +02:00
Andras Bacsai
a04c2ecb44 fix(docker): preserve restart policies when stopping containers 2026-09-04 16:38:24 +02:00
🏔️ Peak
faea1d5436
fix(docker): reap orphaned helper containers regardless of registry (#11540) 2026-09-04 16:30:57 +02:00
peaklabs-dev
aafef73aa6
fix(docker): match helper containers at any registry depth 2026-09-04 16:29:24 +02:00
Andras Bacsai
2ebbc5113e fix: return null for invalid repository URLs 2026-09-04 15:44:18 +02:00
Andras Bacsai
053b030c42 fix: remove database restart limits and clear stale Traefik state
Drop restart-limit fields and enforcement from database resources, clear cached Traefik version data when proxies change, and show missing service environment variables from disabled deploy actions.
2026-09-04 15:42:26 +02:00
Andras Bacsai
d0b77b2637 chore(release): bump Coolify version to 4.3.17 2026-09-03 21:51:53 +02:00
Andras Bacsai
1d0d6b4a79 fix(scheduler): run stuck resource cleanup in background at 03:17
Bump the Coolify release version to 4.3.16 and update schedule coverage.
2026-09-03 19:23:08 +02:00
Andras Bacsai
e2e91fbb85
feat(domains): support per-domain internal port overrides (#11594) 2026-09-02 19:39:19 +02:00
Andras Bacsai
7c3b05e2d2
refactor(livewire): make data-sync helpers private (#11578)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-09-01 18:44:18 +02:00
Andras Bacsai
2018e7f329
Validate build-time environment variable names before writing the build .env file (#11575)
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
2026-09-01 11:14:24 +02:00
Andras Bacsai
67b33c27a9
fix(applications): persist restart limit state for stopped containers (#11566) 2026-08-31 13:13:26 +02:00
Devin Dissanayaka
e0d233f933
fix(deployments): keep every domain intact in COOLIFY_URL and COOLIFY… (#11527)
Co-authored-by: Andras Bacsai <5845193+andrasbacsai@users.noreply.github.com>
2026-08-30 16:53:23 +02:00
Andras Bacsai
0dfbc42c0f chore(release): bump Coolify to 4.3.15 and realtime to 1.0.18 2026-08-28 14:51:30 +02:00
Andras Bacsai
51a8a97d87 fix(docker): create standalone networks without the swarm driver
Use the default bridge network driver for standalone destinations and bump the Coolify version to 4.3.14.
2026-08-28 10:49:05 +02:00
Andras Bacsai
28fb694fcb fix: preserve custom names and use Livewire redirects
Resolve custom container names consistently, clean up legacy container names during deployments, and route Livewire resource redirects through the navigation helper.
2026-08-28 09:46:57 +02:00
Andras Bacsai
1639941da7 fix(domains): reject single-label hostnames for app and service domains 2026-08-28 09:34:10 +02:00
Andras Bacsai
b357522f94 fix(livewire): prevent stale keys and refresh races
Use stable identities for dynamic rows and nested components so reordering does not target the wrong item. Scope storage count and volume-list refreshes, preserve PostgreSQL script identity when renaming files, use Livewire-aware destination redirects, and bump the version to 4.3.13.
2026-08-28 09:26:57 +02:00
kashik0i
b7f00e7267 fix(docker): detect unqualified helper images 2026-08-28 02:45:17 +03:00
Andras Bacsai
ac9b1c68c1 fix(server): allow sentinel startup migrations to finish 2026-08-27 19:38:01 +02:00
Andras Bacsai
c2a23466ca
feat(services): add Executor one-click deployment template (#11530) 2026-08-27 10:39:38 +02:00
Ousama Ben Younes
f9f53f2fea fix(notifications): implement toWebhook() for always-send notifications
WebhookChannel::send() calls toWebhook() unconditionally, but the five
notifications reachable through alwaysSendEvents did not implement it, so
enabling the webhook channel turned those events into fatal queued jobs.
2026-08-27 04:45:39 +00:00
Andras Bacsai
44e4f071b1 ci(helper): enable manual workflow dispatch 2026-08-25 21:56:06 +02:00
Omid Sayfun
3d0caa236f
fix(deployments): apply custom docker options when custom container name is set (#11479)
Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
Co-authored-by: Andras Bacsai <5845193+andrasbacsai@users.noreply.github.com>
2026-08-25 12:27:33 +02:00
Andras Bacsai
abeb839a69
fix(deployments): restore commit links in deployment logs (#11495) 2026-08-25 12:12:12 +02:00
Andras Bacsai
cfca155890
fix(deployments): honor stop grace period in compose services (#11498) 2026-08-25 11:50:33 +02:00
Andras Bacsai
c5b7f726b0 fix(security): redact dotted GitHub tokens and contain wide data tables 2026-08-25 10:30:14 +02:00
Andras Bacsai
d9f0820a6f
fix(database): restore custom PostgreSQL backup archives (#11481) 2026-08-24 16:27:45 +02:00
Andras Bacsai
5f5f305569
fix(deployments): honor selected Docker image rollback tag (#11480) 2026-08-24 10:57:22 +02:00
Andras Bacsai
5d06c226a3 feat(templates): add Obsidian LiveSync CouchDB service template
Add the Obsidian LiveSync compose template, service logo, and coverage for its configuration.
2026-08-24 09:10:19 +02:00
Andras Bacsai
dbc0aa529f feat(templates): add HashiCorp Vault service template
Add Vault Compose configuration and generated service metadata with coverage for deployment settings.
2026-08-24 09:04:51 +02:00
Andras Bacsai
3da7f5a5a5
fix(docker): handle commas in container label values (#11477) 2026-08-24 00:25:55 +02:00
Andras Bacsai
379abb2526
fix(docker): make cleanup commands idempotent (#11463) 2026-08-22 17:22:50 +02:00
Andras Bacsai
60eff6fb6e
fix(docker): update helper CLI for registry pushes (#11461) 2026-08-22 12:53:20 +02:00
Andras Bacsai
e82843ac39 fix(terminal): distinguish containers across servers
Namespace terminal container targets by server UUID and bump Coolify to 4.3.11.
2026-08-21 13:55:54 +02:00
Andras Bacsai
7bbd91175f Revert "Merge branch 'next' into main"
This reverts commit 2598f3e4c8, reversing
changes made to 83f1a2e503.
2026-08-21 12:12:56 +02:00
Andras Bacsai
2598f3e4c8
Merge branch 'next' into main 2026-08-21 12:11:40 +02:00