Commit Graph
667 Commits
Author SHA1 Message Date
github-actions[bot] 69d1e89ac2 Merge remote-tracking branch 'origin/main' into next 2026-09-16 03:14:20 +00:00
Andras Bacsai ede9d8417a build(minio): use packaged mx client in development images 2026-09-15 23:00:45 +02:00
Andras Bacsai ab30f95ad9 feat(restarts): make resource restart limits opt-in
Default restart limits to zero for applications, previews, and services, and bump the Coolify version to 4.3.21.
2026-09-15 12:58:59 +02:00
Andras Bacsai 8ab54da2ac style(ui): remove description placeholders and normalize control heights 2026-09-15 12:28:16 +02:00
Andras Bacsai 776c56f947 fix(helper): hide deployment details unless explicitly requested 2026-09-15 11:38:33 +02:00
github-actions[bot] 02ab8db270 Merge remote-tracking branch 'origin/main' into next 2026-09-15 03:14:58 +00:00
Andras Bacsai 22fbbd74ff fix(sentinel): restore hourly version checks for enabled servers
Dispatch Sentinel checks hourly for eligible servers, including healthy
installations, while continuing to exclude build servers.
2026-09-14 15:43:52 +02:00
github-actions[bot] b903def71b Merge remote-tracking branch 'origin/main' into next 2026-09-14 11:33:22 +00:00
Andras Bacsai b692b27b4e chore(docker): pin AIStor MinIO client release 2026-09-14 13:32:30 +02:00
Andras Bacsai 2c1744fbd2 Merge remote-tracking branch 'origin/next' into pr-11784-automation/sync-main-to-next 2026-09-14 13:30:17 +02:00
Andras Bacsai 6a8cee4630 Merge remote-tracking branch 'origin/next' into automation/sync-main-to-next 2026-09-14 13:26:19 +02:00
Andras Bacsai 7d11bc92f7 feat(logs): accept all for log lines and keep -1
API log endpoints and the GetLogs UI now treat `all` as unbounded
output, with `-1` remaining as a compatibility alias. MCP still
falls back to a positive default. Traefik version checks run from
CheckForUpdatesJob instead of a weekly schedule.
2026-09-13 15:25:20 +02:00
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
peaklabs-dev 9faa4f4b7c Merge branch 'main' into next 2026-09-09 15:32:27 +02:00
peaklabs-dev 266d414a04 feat(docker): add container name prefix for generated container names 2026-09-09 15:01:57 +02:00
🏔️ Peak 62df33ba3d feat(docker): use ISO 8601 timestamp suffix for generated container names (#11702) 2026-09-09 15:01:53 +02:00
🏔️ Peak 45501131bb fix(docker): custom container names (#11701) 2026-09-09 14:58:10 +02:00
Andras Bacsai d4a655c390 fix(database): keep S3 import credentials out of activity commands
Pass S3 endpoint and keys as helper container env vars and run mc alias
via those variables so the stored import command no longer contains
access keys or secrets. Start the helper in a separate remote process,
use the storage filesystem adapter for object checks, and remove a
credential temp file during import cleanup when the path is safe.
2026-09-09 14:27:31 +02:00
Andras Bacsai 7109a11826 fix: queue import cleanup and scope DNS record updates
Move database import temp/container cleanup into a queued listener with retries, and clear the import running state on failed restore starts. Tighten Cloudflare replace/delete to the current server IP and owning resource, notify when DNS jobs fail, and pass domain-removal confirmation through remove-by-key. Document import request oneOf schemas without extra properties.
2026-09-09 13:43:56 +02:00
peaklabs-dev 8d07bb9274 fix(docker): use custom container names for compose applications 2026-09-09 13:38:07 +02:00
peaklabs-dev de013ace2a fix(docker): only use custom container names in consistent naming mode 2026-09-09 13:38:07 +02:00
Andras Bacsai 7002ee95bc fix(database): decompress gzip backups for mysql and mariadb restores
Single-database mysql/mariadb imports accepted .gz files but redirected
them straight into the client. Pipe through the existing gunzip fallback
used by dump-all restores.
2026-09-09 13:10:12 +02:00
Andras Bacsai 903b5d3a0d fix(database): emit valid shell env vars in dump-all MySQL imports 2026-09-09 13:06:04 +02:00
Andras Bacsai e0dfbaa8b9 test(database): use App\Models namespaces in import command builder tests 2026-09-09 13:03:30 +02:00
Andras Bacsai 4accae95b5 feat(database): add replace-existing option for PostgreSQL restores
Allow single-database PostgreSQL imports to drop matching objects before restore. The API and import form accept replace_existing, which adds --clean --if-exists to pg_restore, and pg_restore now uses --exit-on-error.
2026-09-09 11:48:17 +02:00
Andras Bacsai ab3b3926aa feat: add database import API and Cloudflare DNS management
Queue database imports from upload, S3, or server paths via REST, and
manage Cloudflare DNS records from integration tokens and domain UIs.
2026-09-09 11:14:22 +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 c927df0a1d Merge remote-tracking branch 'origin/next' into coolify-analytics-traefik-caddy 2026-09-08 14:28:24 +02:00
Andras Bacsai 9708b78bee Merge remote-tracking branch 'origin/next' into automation/sync-main-to-next
# Conflicts:
#	resources/css/app.css
2026-09-08 13:47:44 +02:00
Andras Bacsai f359778115 Merge remote-tracking branch 'origin/next' into coolify-analytics-traefik-caddy
# Conflicts:
#	resources/views/components/forms/listbox.blade.php
2026-09-08 11:55:49 +02:00
Andras Bacsai 4a3dc11958 feat(ui): polish env editor, error buttons, and modal layout 2026-09-08 11:49:02 +02:00
Andras Bacsai 09e9822264 Merge remote-tracking branch 'origin/next' into automation/sync-main-to-next
# Conflicts:
#	app/Actions/Database/StartDatabase.php
#	app/Models/StandaloneClickhouse.php
#	app/Models/StandaloneDragonfly.php
#	app/Models/StandaloneKeydb.php
#	app/Models/StandaloneMariadb.php
#	app/Models/StandaloneMongodb.php
#	app/Models/StandaloneMysql.php
#	app/Models/StandalonePostgresql.php
#	app/Models/StandaloneRedis.php
#	resources/views/livewire/project/shared/storages/all.blade.php
#	tests/Feature/PersistentStorageVolumesLayoutTest.php
#	tests/Feature/UserSeederTest.php
2026-09-08 10:02:12 +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 c68259cddf Merge remote-tracking branch 'origin/next' into coolify-analytics-traefik-caddy 2026-09-07 20:28:42 +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