Commit Graph
100 Commits
Author SHA1 Message Date
Andras Bacsai fd5eb3e0cd feat(project): add icons and improve persistent volume management
Add project icon storage and serving with local/S3 support, prevent deletion of compose-managed volumes, and optimize volume backups. Refine project and backup UI components with consistent styling and coverage.
2026-08-13 22:56:52 +02:00
Andras BacsaiandGitHub a02d02d19b fix(ui): resolve "Could not find Livewire component in DOM tree" on What's New click (#11261) 2026-08-13 21:38:23 +02:00
Andras Bacsai 447a26568e fix(logs): preserve manual follow state and hide filtered lines 2026-08-13 15:04:01 +02:00
Andras Bacsai 3bcef578de chore(release): bump Coolify version metadata
Set the default and nightly versions to 4.3.3 and stable v4 to 4.3.2.
2026-08-13 14:59:04 +02:00
Andras Bacsai 719942853f fix(upgrade): explain manual reload fallback 2026-08-13 14:44:25 +02:00
Andras Bacsai 8576214a6d fix(upgrade): handle status polling after older release restarts
Treat recovered health checks and polling errors as successful completion when older target releases cannot report upgrade status.
2026-08-13 14:30:47 +02:00
Andras Bacsai 6492d08136 fix(upgrade): use authenticated status polling after restart
Remove the version header from the health endpoint and use upgrade status polling to determine completion.
2026-08-13 14:23:29 +02:00
Andras Bacsai 1932673c22 feat(ui): consolidate resource heading actions 2026-08-13 14:08:33 +02:00
Andras Bacsai 5f3108b68d feat(ui): unify resource headings with responsive action menus
Add responsive overflow handling and dedicated action menus for application,
service, database, and server headings, while improving upgrade and email
settings flows and returning 404s for missing deployment environments.
2026-08-13 12:17:16 +02:00
Andras BacsaiandGitHub 592b537c61 fix(docker): replace deprecated stop flags with version-aware ones (#11251) 2026-08-13 11:25:44 +02:00
Andras Bacsai 4a7e77f809 Merge remote-tracking branch 'origin/main' into 11244-deprecated-docker-flags 2026-08-13 11:24:48 +02:00
Andras Bacsai 47c0080d3b fix(docker): log docker stop command only in local development
Log the generated docker stop command and Docker version when
running locally so developers can inspect version-aware flags.
Skip logging outside local development.
2026-08-13 11:24:08 +02:00
Andras Bacsai e79230cf37 fix(docker): replace deprecated stop flags with version-aware ones
Store each server's Docker version and build stop commands via
dockerStopCommand() so newer Docker uses --timeout instead of
deprecated --time/-t. Also show Docker version in server details.
2026-08-13 11:17:44 +02:00
Andras BacsaiandGitHub 462d6af99e feat(services): add Jean Server one-click template (#11248) 2026-08-13 11:15:42 +02:00
Andras BacsaiandGitHub a3275c8289 fix(backups): include id 0 when paging scheduled jobs (#11249) 2026-08-13 11:15:08 +02:00
Andras BacsaiandGitHub 62d142d925 fix(metrics): convert container memory samples from bytes to MB (#11247) 2026-08-13 11:09:13 +02:00
Andras Bacsai 13948ac789 fix(backups): include id 0 when paging scheduled jobs
Start backup and task pagination without an id lower bound so a legacy coolify-db backup or scheduled task at id 0 is dispatched with later positive ids. Document instance sentinel ids so they are not treated as ordinary autoincrement rows.
2026-08-13 11:08:54 +02:00
Andras Bacsai c3f485e0d6 feat(services): add Jean Server one-click template and extra fields
Register the jean-server compose template, logo, and catalog entries,
and expose token and allowed-origins settings on the service form.
Sort extra fields by sortOrder and omit empty service-name prefixes.
2026-08-13 11:00:04 +02:00
Andras Bacsai 7162185400 fix(metrics): convert container memory samples from bytes to MB
Sentinel stores container used memory in bytes while application and
database charts label the series as megabytes. Convert those samples
before they reach the frontend so the graph is not inflated by ~1024x.
2026-08-13 10:58:28 +02:00
Andras Bacsai 6481ffffcf fix(upgrade): wait for new version before showing success
Expose the running Coolify version on /api/health and only treat an upgrade as complete once that version meets the target. Parse upgrade status in a shared service, start the update after the Livewire response, and keep polling when the instance is still on the old version.
2026-08-13 10:46:06 +02:00
Andras Bacsai 882e25e072 fix(ui): reserve scrollbar space and animate event multiselect
Always reserve vertical scrollbar space on base and v5 body
layouts to prevent content shift. Match notification event
multiselect panel open/close transitions to other listboxes.
2026-08-13 09:17:37 +02:00
Andras Bacsai 009b298520 chore(dev): replace Spin with docker compose for local dev
Drop Spin from docs and helper scripts; run the stack and container
exec via docker compose with docker-compose.yml and docker-compose.dev.yml.
Update firewall-delegation tests to match the new commands.
2026-08-13 09:09:05 +02:00
Andras Bacsai 402dcd7783 fix(domains): stop suggesting missing www counterpart domains
Remove buildSuggestedWwwRows from application and service domain
row builders so configured domains no longer auto-surface an
unconfigured www pair. Update ApplicationDomainsTest accordingly.
2026-08-13 08:58:10 +02:00
Andras Bacsai 37ed725dc1 fix(ui): scope resource card keys and env count hide
Limit enter/space deploy handlers to the card root with .self so nested focusable content no longer triggers deploy. Hide the environments table resource count on mobile via a stable class instead of nth-child.
2026-08-12 23:57:32 +02:00
Andras Bacsai 1f550e8fcf fix(ui): show resource domains in mobile resource list 2026-08-12 23:54:40 +02:00
Andras Bacsai 2c6208c8ce fix(ui): render domain guidance below the section header 2026-08-12 23:52:27 +02:00
Andras BacsaiandGitHub 24c32c3c39 fix(backups): forward configured timeouts to the ssh timeout wrapper (#11183) 2026-08-12 23:40:55 +02:00
Andras Bacsai e2fbd6a16e Merge remote-tracking branch 'origin/next' into fix/backup-ssh-command-timeout-next 2026-08-12 23:40:19 +02:00
Andras Bacsai e17c516bf2 chore(release): bump Coolify version to 4.3.2 2026-08-12 23:40:14 +02:00
Andras Bacsai bc98d52104 chore(release): bump Coolify to 4.3.1 and label workflow runs 2026-08-12 17:06:40 +02:00
Andras Bacsai fb4588be3c Merge remote-tracking branch 'origin/main' 2026-08-12 16:42:47 +02:00
Andras Bacsai 1ed6f4bac5 fix(ui): use Coollabs glow on error pages
Update the error shell background gradient to use the Coollabs color token and add a regression test.
2026-08-12 16:41:35 +02:00
Andras BacsaiandGitHub 99434caba3 fix(api): regenerate basic auth labels after updates (#11196) 2026-08-12 16:40:47 +02:00
Andras Bacsai 49375adbe3 Merge remote-tracking branch 'origin/next' into fix/api-basic-auth-labels 2026-08-12 16:40:24 +02:00
Andras BacsaiandGitHub 61d988745c fix(ui): terminal page design (#11203) 2026-08-12 16:39:54 +02:00
Andras Bacsai 2793bc5cdb fix(ui): improve mobile terminal controls and target filtering 2026-08-12 16:39:13 +02:00
Andras BacsaiandGitHub 0764ec425d fix(ui): environment settings broken header & project settings header (#11204) 2026-08-12 16:30:49 +02:00
Andras BacsaiandGitHub 6a1b911097 fix(models): add datetime cast for finished_at in ScheduledDatabaseBackupExecution (#11210) 2026-08-12 16:29:55 +02:00
Andras Bacsai 20981777a9 Merge remote-tracking branch 'origin/main' into fix/db-backup-datetime-cast 2026-08-12 16:29:28 +02:00
Andras Bacsai 5e7ba47054 test(models): cover finished_at datetime cast 2026-08-12 16:27:33 +02:00
Andras Bacsai 3de6284265 Merge remote-tracking branch 'origin/main' 2026-08-12 16:26:54 +02:00
Andras BacsaiandGitHub afca5603b7 fix(ui): remove duplicate metrics tooltip border (#11213) 2026-08-12 16:26:34 +02:00
Andras Bacsai 8e6e2b099a feat(ui): dock configuration warnings in the navigation HUD 2026-08-12 16:24:01 +02:00
Andras Bacsai feb5be3a3c Merge remote-tracking branch 'origin/main' 2026-08-12 14:23:55 +02:00
Andras Bacsai 03816bce3a chore(workflows): pin lock-threads action to v6.0.2 2026-08-12 14:12:47 +02:00
Andras Bacsai 08627795a5 ci(release): standardize production workflows on main
Route production builds, releases, and changelog generation through `main`, update contribution guidance for main/next branch targets, and cover the branch policy in workflow tests.
2026-08-12 13:12:55 +02:00
Andras BacsaiandGitHub e2184d30a2 feat(workflows): add pull request branch management workflow (#11193) 2026-08-12 12:58:24 +02:00
Andras Bacsai 12b14bbefd ci(release): support main during production branch rename
Run production builds and changelog generation from both v4.x and main while excluding both branches from staging builds.
2026-08-12 12:53:16 +02:00
Andras Bacsai 8c88f6093a chore(release): bump default version to 4.3.1 2026-08-12 12:27:08 +02:00
Andras BacsaiandGitHub ec7659aa59 fix(release): preserve tags when publishing draft releases (#11199) 2026-08-12 12:02:53 +02:00
Andras Bacsai decf6c7a9a fix(release): preserve tags when publishing draft releases
Upgrade github-script to v8 and pass the release tag and target commit when creating and publishing releases.
2026-08-12 12:02:37 +02:00
Andras BacsaiandGitHub 54c735b673 fix(ui): expose environment variable settings on mobile (#11198) 2026-08-12 11:52:11 +02:00
Andras Bacsai 4e3def11e3 fix(ui): expose environment variable settings on mobile
Collapse environment variable rows to the key and settings action on small
screens, and let the key open the corresponding details modal.
2026-08-12 11:51:42 +02:00
Andras BacsaiandGitHub d662de05d9 fix(ui): raise top bar above open service actions (#11197) 2026-08-12 11:34:34 +02:00
Andras Bacsai 8264129f03 fix(ui): raise top bar above open service actions 2026-08-12 11:32:00 +02:00
Andras BacsaiandGitHub 4b34ac7cab feat(ui): show two-factor status of team members (#11186) (#11192) 2026-08-11 21:12:47 +02:00
Andras BacsaiandGitHub b12524cda3 internal changes (#11189) 2026-08-11 16:35:23 +02:00
Andras Bacsai cde9597c09 fix(release): run support image workflows on main 2026-08-11 16:35:03 +02:00
Andras BacsaiandGitHub 4d58a20f88 internal changes only (#11188) 2026-08-11 16:32:46 +02:00
Andras Bacsai 8bf4ac9c68 fix(release): restrict production workflows to v4.x
Update release documentation and workflow coverage tests for the branch strategy.
2026-08-11 16:32:22 +02:00
Andras BacsaiandGitHub e01a676811 internal updates (#11187) 2026-08-11 16:14:08 +02:00
Andras Bacsai 5e0e76df4b feat(release): rebuild stable images from reviewed draft releases
Add manual fix-release validation and stable image rebuilds, inject traceable development versions into SHA builds, and suppress invalid release links for development versions.
2026-08-11 16:11:13 +02:00
Andras BacsaiandGitHub 091a5689ac v4.3 (#11106) 2026-08-11 12:26:16 +02:00
Andras Bacsai d64cbda3e8 fix(profile): remove redundant 2FA enabled badge 2026-08-11 12:18:35 +02:00
Andras Bacsai 1a8a4bb5ef fix(ui): refine overlays, toast actions, and save-state feedback
Improve overlay stacking and positioning, add toast copying, standardize domain labels, and animate unsaved changes while saving.
2026-08-11 12:08:44 +02:00
Andras Bacsai 41b3ed95aa fix(ui): stabilize domain controls and unify resource navigation
Preserve optimistic listbox selections during Livewire saves, refresh service domains after updates, and align application, service, and server navigation layouts.
2026-08-11 11:28:46 +02:00
Andras Bacsai 3f47d41880 feat(ui): improve terminal mobile UX and server status feedback
Add keyboard-aware terminal controls, refine terminal layouts and navigation, surface proxy and Sentinel health warnings, and make avatar uploads update only after successful persistence.
2026-08-11 09:33:11 +02:00
Andras Bacsai 32bf1860d4 feat(domains): add structured URL editing and responsive domain controls
Add reusable domain URL parsing and input components, expose per-domain
redirect and indexing controls, and improve application and service domain
layouts across responsive breakpoints.
2026-08-11 00:06:55 +02:00
Andras Bacsai 8cf22d7739 feat(search): preselect first result in resource picker
Add the local UI design system reference and update frontend references to it.
2026-08-10 15:17:26 +02:00
Andras BacsaiandGitHub 3d64eb214a feat(domains): add per-domain noindex support (#10908) 2026-08-10 15:17:00 +02:00
Andras Bacsai be2a6d6d1e feat(domains): edit compose redirect direction in domain modal 2026-08-10 15:15:48 +02:00
Andras Bacsai 69ba001e21 feat(domains): add inline indexing and redirect controls
Move domain indexing and redirect settings into domain management views and include noindex changes in deployment configuration diffs.
2026-08-10 15:10:30 +02:00
Andras Bacsai 8c9a7413d0 Merge remote-tracking branch 'origin/next' into feat/noindex-domains 2026-08-10 14:23:09 +02:00
Andras Bacsai 7037633f45 feat(dashboard): refresh metrics and color server status indicators
Refresh visible dashboard metrics every minute and after backgrounding. Replace server status badges with accessible color-coded icon borders and status text.
2026-08-10 14:04:24 +02:00
Andras Bacsai 865fd7e80c Merge remote-tracking branch 'origin/next' into next 2026-08-10 11:52:56 +02:00
Andras Bacsai a84505efe8 style(ui): refine focus ring thickness and warning color 2026-08-10 11:52:24 +02:00
Andras Bacsai f412b2bf0d feat(dashboard): add server metrics charts and polish UI feedback 2026-08-10 11:08:04 +02:00
Andras Bacsai 62b2fe2330 feat(ui): add volume backup storage controls and grouped navigation 2026-08-10 10:35:15 +02:00
Andras Bacsai 4ba6aa3500 feat(servers): separate connection and provisioning options
Group existing server connections separately from cloud provisioning and use a select for dedicated build server roles.
2026-08-10 10:09:03 +02:00
Andras Bacsai faf527d554 fix(dev): support configurable hosts and light-mode surfaces
Add configurable bind addresses and Vite protocols for development networking, and improve light-mode styling for logs and unsaved-change controls.
2026-08-10 09:56:30 +02:00
Andras Bacsai 003e44d123 Merge remote-tracking branch 'origin/next' into feat/noindex-domains 2026-08-08 11:26:20 +02:00
Andras Bacsai c0b75d04a6 feat(service): unify database and storage backups on one page
List service database schedules with volume backups, add a database
picker when creating scheduled DB backups from the service page, and
cover the unified table and create flow in tests.
2026-08-08 00:12:56 +02:00
Andras Bacsai 12b14665b5 fix(ui): use 100dvh body height and coollabs auth glow
Replace min-h-screen with min-height: 100dvh on body for correct
mobile viewport height, and point the auth shell radial glow at
--color-coollabs instead of --color-accent. Add branding CSS tests.
2026-08-07 23:31:57 +02:00
Andras BacsaiandGitHub f9caa5250d feat(servers): add cross-instance server migration (#11075) 2026-08-07 23:07:55 +02:00
Andras BacsaiandGitHub c15e3b35fd feat(resources): add cross-server resource migration (dev-only) (#11165) 2026-08-07 23:01:31 +02:00
Andras BacsaiandGitHub d83ba627cd feat(service): add Celld one-click service template (#11155) 2026-08-07 22:46:55 +02:00
Andras Bacsai 11dc7cee7a Merge remote-tracking branch 'origin/next' into celld-one-click-service 2026-08-07 22:46:22 +02:00
Andras Bacsai bbb46eca59 fix(ui): scroll backup tables on mobile and use icon actions
Keep backup schedule grids full-width with horizontal scroll instead of
hiding columns, and replace volume backup execution Download/Delete
buttons with compact icon actions.
2026-08-07 21:48:01 +02:00
Andras Bacsai fb8af10089 chore(db): bump avatar storage migration timestamp
Rename migration from 185535 to 185536 so it runs after
conflicting migrations with the same second-level stamp.
2026-08-07 21:41:18 +02:00
Andras Bacsai 51561e4bee feat(profile): add uploadable avatars with local/S3 storage
Users can upload and remove profile pictures on the profile page.
Admins choose local or instance S3 storage in advanced settings.
Avatars are compressed to JPEG and served via a private cached route.
2026-08-07 21:39:56 +02:00
Andras Bacsai e50108a905 fix(ui): prefer Compose env values and polish error pages
When a managed variable shares a Compose-defined key, show the
hardcoded Compose value as read-only and exclude it from managed
rows. Render Contact support as a button, use the collapsible
component for 419 proxy help, and style its list/code markers.
2026-08-07 18:31:19 +02:00
Andras Bacsai 47da47d8e0 fix(docker): escape Traefik www redirect replacements for Compose
Double-escape ${n} in Traefik redirectregex.replacement labels so Docker
Compose emits $${n} and Traefik still receives the correct capture groups.
2026-08-07 18:18:58 +02:00
Andras Bacsai a4f7cb723a fix(services): default celld image tag to latest
Use ${CELLD_VERSION:-latest} in the celld compose template
and regenerate service templates; update unit tests.
2026-08-07 18:17:33 +02:00
Andras Bacsai 968ea69e7d fix(ui): show loading state on compose validate button
Disable the Validate control and show a spinner until validateCompose
finishes, then clear state via compose-validate-finished.
2026-08-07 18:05:51 +02:00
Andras Bacsai da43086a32 Merge remote-tracking branch 'origin/next' into celld-one-click-service 2026-08-07 18:01:47 +02:00
Andras Bacsai a37f1369c8 fix(ui): skip hidden global search results in keyboard nav
Limit navigateResults to visible .search-result-item nodes under the
search root so hidden command palette entries are not focused.
2026-08-07 18:01:43 +02:00
Andras Bacsai 78fe7ee76f fix(ui): use listbox for domain redirects and key terminal canvases
Replace the service domain www-redirect native select with the shared
listbox (htmlId for stable trigger IDs) and allow dropdown overflow.
Key terminal target/session canvases for Livewire DOM branches, and
enable terminal browser debug via ?terminal-debug= plus theme logs.
2026-08-07 17:59:00 +02:00
Andras Bacsai fff83884da fix(ui): polish create flows and terminal navigation
Open the global terminal outside Livewire navigation, clarify that
image tag and SHA256 digest are mutually exclusive, inset the GitLab
empty state, and show loading on Dockerfile create. Add regression tests.
2026-08-07 17:54:50 +02:00
Andras Bacsai c07f66cb5e fix(ui): polish create flows for compose and GitHub repos
Use shared listbox for private-repo selection, align listbox
trigger heights with form inputs, restore compose editor spacing
and full width, and wire loading states on create/continue
actions.
2026-08-07 17:25:50 +02:00
Andras Bacsai 9c0908f0fc feat(ui): polish DB public access, backups, and nav
Gate public TCP proxy until a port is set, show loading while saving
access, and open proxy logs in process-dialog. Compact backup
execution actions, add Postgres general section anchors, and tint
resource Actions icons with warning color.
2026-08-07 17:14:43 +02:00