Andras Bacsai
438eeefa73
feat(api): add REST endpoints for destinations ( #10405 )
2026-07-02 15:34:30 +02:00
Andras Bacsai
70021c8d5e
fix(api): handle destination create races as conflicts
2026-07-02 15:33:01 +02:00
Andras Bacsai
88d5aff018
Merge remote-tracking branch 'origin/next' into team-level-mcp-enablement
2026-07-02 15:15:11 +02:00
Andras Bacsai
4ef884e1ac
Merge remote-tracking branch 'origin/next' into feat/api-destinations
2026-07-02 15:14:13 +02:00
Andras Bacsai
20b5b90cf9
Merge remote-tracking branch 'origin/next' into improve-s3-storage-handling
2026-07-02 15:06:11 +02:00
Andras Bacsai
78d9244caa
fix: improve s3 storage handling
2026-07-02 15:05:05 +02:00
Andras Bacsai
bed058b826
Improve outbound URL validation ( #10833 )
2026-07-02 15:02:37 +02:00
Andras Bacsai
a06c1a7bf5
Improve storage mount path handling
2026-07-02 14:54:38 +02:00
Andras Bacsai
c7f014017b
Improve outbound URL validation
2026-07-02 14:46:46 +02:00
Andras Bacsai
a121386ab4
Merge branch 'next' into improve-resource-route-handling
2026-07-02 13:25:47 +02:00
Andras Bacsai
fb2d477e48
fix: improve team resource route handling
2026-07-02 13:05:27 +02:00
Andras Bacsai
74f4d04f53
fix(backups): default S3 storage for backup schedules
...
Show the S3 storage selector even when S3 backups are disabled, save
storage changes immediately, and improve responsive confirmation buttons.
2026-07-02 12:47:54 +02:00
Julien Bouquillon
77086e28af
Merge branch 'v4.x' into api-application-preview-deployments
2026-07-01 19:11:16 +02:00
Andras Bacsai
22b31f5671
fix(backups): require valid S3 storage selection
...
Preserve S3 backups when a single valid storage is available, require
explicit selection when multiple storages exist, and disable S3 when none
are available.
Make backup action controls responsive on narrow screens.
2026-07-01 11:14:20 +02:00
Andras Bacsai
78374b566a
fix members smtp pw update
2026-06-30 15:29:19 +02:00
Andras Bacsai
63d6d835a9
Align resource creation permissions ( #10799 )
2026-06-29 15:59:46 +02:00
Andras Bacsai
29445bf177
fix: align resource creation permissions
2026-06-29 15:57:17 +02:00
Andras Bacsai
f2d11d9300
fix(railpack): interpolate build-time env variables by sourcing build… ( #10768 )
2026-06-29 11:08:19 +02:00
Andras Bacsai
7d65a4b496
Merge remote-tracking branch 'origin/next' into harden-database-import-files
2026-06-29 10:35:35 +02:00
Andras Bacsai
2d63d51237
fix: harden database backup imports
2026-06-29 10:27:01 +02:00
Andras Bacsai
9a64b2ea0a
Merge remote-tracking branch 'origin/next' into fix/railpack-buildtime-env-interpolation
2026-06-29 10:20:07 +02:00
Andras Bacsai
2dc34f61ff
fix(railpack): create empty build-time env file
2026-06-29 10:19:22 +02:00
Andras Bacsai
a630532308
fix(deploy): preserve deploy key command metadata
2026-06-29 10:17:09 +02:00
Andras Bacsai
3729b5c074
improve github webhook
2026-06-28 15:25:58 +02:00
Andras Bacsai
1a5b8d3612
fix(deploy): skip logging deploy key commands
2026-06-28 13:15:18 +02:00
Andras Bacsai
87d4744390
Validate environment variable keys
2026-06-25 18:19:58 +02:00
Andras Bacsai
bef94a9ce2
feat(mcp): add per-team server toggle
2026-06-25 11:42:19 +02:00
Aditya Tripathi
623bf89543
fix(railpack): interpolate build-time env variables by sourcing build-time .env
...
Railpack builds forwarded build-time variables inline as `env 'KEY=VALUE'`,
which single-quotes each value and prevents shell interpolation. References
like BETTER_AUTH_URL=$COOLIFY_URL reached the build as the literal string
"$COOLIFY_URL" instead of the resolved URL, breaking builds that validate
their env (e.g. SvelteKit/better-auth).
Wrap the railpack `docker buildx build` invocation with the same
wrap_build_command_with_env_export() helper used by the Dockerfile and
Nixpacks build paths, sourcing the build-time .env file (which writes
COOLIFY_* first and double-quotes normal vars to allow $VAR expansion).
Only buildpack control variables (NIXPACKS_/RAILPACK_), excluded from that
file and never needing interpolation, remain inline. Secret flags are
unchanged and read the interpolated values from the exported environment.
Fixes #10736
2026-06-24 20:11:46 +00:00
Andras Bacsai
00c5a630cf
fix(subscription): clamp dynamic quantity to MIN_SERVER_LIMIT on update
2026-06-19 08:27:41 +02:00
Andras Bacsai
9e021c4037
fix(api): enforce destination access and cleanup networks
...
Require admin team membership for destination mutations, return invalid-token
responses for tokenless requests, and remove standalone Docker networks when
deleting destinations.
2026-06-15 17:15:56 +02:00
Andras Bacsai
9665aa292c
fix(api): block invalid destination types and service deletions
2026-06-15 17:03:01 +02:00
Andras Bacsai
506643603c
Merge remote-tracking branch 'origin/next' into feat/api-destinations
2026-06-15 17:02:24 +02:00
Andras Bacsai
f5ecdfa4ce
Merge remote-tracking branch 'origin/next' into api-sensitive-data-scrubber
2026-06-15 13:29:25 +02:00
Andras Bacsai
22d05c78aa
Merge remote-tracking branch 'origin/next' into ghe-support-helpers
2026-06-15 12:55:34 +02:00
Andras Bacsai
507a8afa20
fix(github): sync app slug before generating installation path
2026-06-15 12:55:29 +02:00
Andras Bacsai
b9bda7301a
Merge remote-tracking branch 'origin/next' into fix-ghe-app-install-url
2026-06-15 12:55:08 +02:00
Andras Bacsai
d2deaa8363
fix(auth): restrict Sentinel access and register S3 policy
2026-06-15 12:31:30 +02:00
Andras Bacsai
2ebe2e8dbb
Merge remote-tracking branch 'origin/next' into api-sensitive-data-scrubber
2026-06-15 12:30:15 +02:00
Andras Bacsai
78d8afa602
Merge remote-tracking branch 'origin/next' into audit-policies
2026-06-15 12:05:19 +02:00
Andras Bacsai
9302a49bbf
Merge remote-tracking branch 'origin/next' into 10633-invitation-link-redirect
2026-06-15 11:58:03 +02:00
Osamaali313
74b1077010
fix: accept underscores in domain hostnames for API URL validation
...
PHP's FILTER_VALIDATE_URL rejects underscores in the host, so domains
like https://myapp_service.example.com were rejected by the API and
never got a Let's Encrypt certificate. Add an isValidDomainUrl() helper
that validates a copy with underscores replaced by hyphens, and route
domain validation in the Applications and Services API controllers
through it.
Fixes #10597
2026-06-13 22:46:04 +03:00
Andras Bacsai
52739141ee
fix(previews): clean up closed PR previews after update failures ( #10180 )
2026-06-12 20:08:34 +02:00
Andras Bacsai
403f8abcb4
Merge remote-tracking branch 'origin/next' into fix-ghe-app-install-url
2026-06-12 20:02:23 +02:00
Andras Bacsai
78d7291929
fix(github): keep provided api_url on GitHub app updates
2026-06-12 19:56:13 +02:00
Andras Bacsai
4f509c02be
fix(auth): validate invitation magic link tokens
...
Accept invitation links across configured public origins while still
rejecting stored invitations whose token no longer matches.
2026-06-12 16:17:45 +02:00
Andras Bacsai
61d2d17f52
feat(subscription): add Stripe action controls
...
Add subscription action handling and tests for cancel, resume, and refund flows while resolving StripeClient through the container.
2026-06-12 15:54:21 +02:00
Andras Bacsai
0d9a39ea23
fix(github): sync pending app credentials before slug lookup
2026-06-09 18:32:05 +02:00
Andras Bacsai
281184c040
fix(github): derive app API URLs from HTML hosts
...
Normalize GitHub organization values and derive API URLs for GitHub.com,
GHE.com, and enterprise hosts when creating or updating GitHub Apps.
2026-06-09 18:31:06 +02:00
Andras Bacsai
bc2c6068ea
fix(github): sync app slug before building install URL
...
Move GitHub App JWT generation and slug synchronization into shared helpers so installation URLs use the canonical GitHub slug. Encode GHE organization path segments and keep the app-scoped fallback for blank organizations.
2026-06-09 15:27:35 +02:00
vuguul
4c77504b5e
fix(service): limit Grafana extra fields to Grafana images
2026-06-05 14:29:29 -06:00
vaguul
63ba33261b
fix(api): allow source commit build setting
2026-06-04 17:51:17 -06:00
Andras Bacsai
70eda65d19
fix(api): hide nested server secrets from read tokens
...
Require read:sensitive for nested server logdrain and sentinel fields in
application and database API responses.
Limit deployment configuration column migration SQL to PostgreSQL.
2026-06-04 16:51:52 +02:00
Andras Bacsai
2fcc42b0a9
Merge remote-tracking branch 'origin/next' into api-sensitive-data-scrubber
2026-06-04 15:27:32 +02:00
Andras Bacsai
22f9f96db6
chore: inspect staged changes for commit message
2026-06-04 15:24:53 +02:00
Andras Bacsai
5973bb4d4f
fix(security): hide notification secrets from non-admins
...
Prevent users without update permission from reading notification credentials and manual webhook secrets in Livewire state or rendered forms.
2026-06-04 11:24:19 +02:00
Andras Bacsai
062ad57740
fix(security): enforce team access on mutable actions
...
Authorize cloud provider token access, audit sensitive operations, and
standardize public IDs across deployment and resource flows.
2026-06-04 11:03:06 +02:00
Andras Bacsai
b01c2dd52b
Merge remote-tracking branch 'origin/next' into api-sensitive-data-scrubber
2026-06-04 10:58:07 +02:00
Andras Bacsai
9dca7ca351
Merge remote-tracking branch 'origin/next' into audit-policies
2026-06-04 10:18:54 +02:00
Andras Bacsai
981b670eb4
feat(services): show template update timestamps
2026-06-04 09:34:11 +02:00
Cornelis Terblanche
f7150a1d6c
Fix Vultr power controls for stopped instances
2026-06-03 21:32:18 +02:00
Cornelis Terblanche
94abbe1590
Add Vultr cloud provider integration
2026-06-03 21:32:18 +02:00
Andras Bacsai
33f3a0b100
fix(git): write deploy key to per-deployment path, not root's id_rsa ( #10440 )
2026-06-03 15:09:45 +02:00
Andras Bacsai
e39a9ad827
fix(git): use deploy key path for PR fetches
2026-06-03 14:39:05 +02:00
Andras Bacsai
08735e6cc8
feat(postgres): add internal database upgrade script
...
Publish upgrade-postgres.sh with install and upgrade flows, include the
PostgreSQL compose override when present, and sync the script to BunnyCDN.
2026-06-03 14:27:01 +02:00
Andras Bacsai
3eb5463e3e
Merge remote-tracking branch 'origin/next' into fix/deploy-key-dedicated-path-race
2026-06-03 14:00:34 +02:00
Andras Bacsai
81cff9f486
Merge remote-tracking branch 'origin/next' into feat/api-destinations
2026-06-03 13:57:04 +02:00
Andras Bacsai
f8960f44fa
fix(api): apply private_key_uuid in update_server ( #10416 )
2026-06-03 13:49:36 +02:00
Andras Bacsai
217541a987
fix(api): allow disabling build server mode
2026-06-03 13:48:31 +02:00
Andras Bacsai
acc929a7b0
feat(ui): add search functionality for environment variables ( #10421 )
2026-06-03 13:48:03 +02:00
Andras Bacsai
1802522c60
fix(env-vars): treat search wildcards literally
...
Escape SQL LIKE wildcard characters in environment variable searches and hide production or preview sections when the filtered results are empty.
2026-06-03 13:43:26 +02:00
Andras Bacsai
09d8ba0d89
fix(api): prevent partial server updates on invalid disk schedule
2026-06-03 13:03:12 +02:00
Andras Bacsai
36d44faaf9
fix(git): apply HTTP transport config to PR checkouts
2026-06-03 12:59:45 +02:00
Andras Bacsai
ffe37fc892
Merge remote-tracking branch 'origin/next' into 5251-large-repo-deploy-bug
2026-06-03 12:56:27 +02:00
Andras Bacsai
d7524a743d
fix(env-vars): show single empty state for searches
...
Move the environment variable search field above the production section
and hide production and preview headings when a search has no results.
2026-06-03 12:54:50 +02:00
Andras Bacsai
d300ddf902
Merge remote-tracking branch 'origin/next' into feat/search-to-envs
2026-06-03 12:47:37 +02:00
Andras Bacsai
b3f3ddf0ce
Merge remote-tracking branch 'origin/next' into fix/api-update-server-private-key
2026-06-03 12:44:31 +02:00
Andras Bacsai
9dabaabdf1
fix(git): force HTTP/1.1 for repository imports
...
Apply HTTP/1.1 transport config to HTTPS git clone and submodule commands,
including GitHub App credential rewrites, to avoid flaky large repo imports.
2026-06-03 12:42:04 +02:00
Andras Bacsai
8b8ec9c4f9
Merge remote-tracking branch 'origin/next' into fix/api-update-server-private-key
2026-06-03 12:27:41 +02:00
Andras Bacsai
ec7a8b5ea9
fix(scheduled-jobs): link skipped service database backups
...
Render skipped service database backups with the service database backup route while preserving standalone database backup links.
2026-06-03 12:25:13 +02:00
Andras Bacsai
419a551d76
fix(server): return SSH username validation messages
2026-06-03 11:57:46 +02:00
Andras Bacsai
1ca472d549
Merge remote-tracking branch 'origin/next' into fix/api-update-server-private-key
2026-06-03 11:43:32 +02:00
Andras Bacsai
d525c12457
fix(env): keep dev view env saves independent of search
...
Search environment variables case-insensitively by key, add accessible search
labeling, and ensure switching to developer view after searching loads the full
variable set so non-matching entries are not removed on save.
2026-06-03 11:40:54 +02:00
Andras Bacsai
ad4a21d15f
Merge remote-tracking branch 'origin/next' into feat/search-to-envs
2026-06-03 11:40:38 +02:00
Andras Bacsai
9aa40bb5f0
Merge remote-tracking branch 'origin/next' into jean/allow-dots-username
2026-06-03 11:38:55 +02:00
Andras Bacsai
bc2afdf02e
fix(server): share SSH username validation
...
Centralize SSH username rules and sanitization so dotted usernames are
accepted consistently across API, onboarding, and Livewire server forms.
2026-06-03 11:38:48 +02:00
Andras Bacsai
13e94a499d
feat(destinations): split Docker resources into separate page
...
Move standalone Docker destination resource listings out of the general
settings view and add a searchable resources page with team-scoped tests.
2026-06-03 11:24:36 +02:00
Andras Bacsai
128464e77c
Merge remote-tracking branch 'origin/next' into jean/docker-network-ui
2026-06-03 11:13:29 +02:00
Andras Bacsai
c0c8fd7f11
Merge remote-tracking branch 'origin/next' into jean/sentinel-ux
2026-06-03 11:10:19 +02:00
Andras Bacsai
d892d0ad10
fix(sentinel): refresh server nav after toggles
...
Dispatch server show refreshes after Sentinel and metrics toggles, preserve editable Sentinel form fields during restart events, and gate custom image editing by update permission.
2026-06-03 11:10:13 +02:00
Andras Bacsai
1fc224cd75
Merge remote-tracking branch 'origin/next' into jean/docker-network-ui
2026-06-03 11:01:29 +02:00
Andras Bacsai
aaa540421f
feat(application): preserve crash restart limit status
...
Stop applications after they hit the crash restart limit without clearing
restart tracking, surface the stopped-limit warning in status UI, and use
the application link in restart limit notifications.
2026-06-03 11:01:28 +02:00
Andras Bacsai
2d2634f87b
Merge remote-tracking branch 'origin/next' into jean/sentinel-ux
2026-06-03 10:57:36 +02:00
Andras Bacsai
d581abb284
Merge remote-tracking branch 'origin/next' into jean/add-restart-loop-limit
2026-06-03 10:43:57 +02:00
Andras Bacsai
07f381b88c
Merge remote-tracking branch 'origin/next' into jean/port-exposes-improvement
2026-06-03 10:32:57 +02:00
Andras Bacsai
be6ed4377d
feat(ui): add resource details view ( #9756 )
2026-06-03 10:21:15 +02:00
Andras Bacsai
63be45b21b
fix(ui): configuration changes modal doesn't go away after redeployment for git based compose apps ( #10461 )
2026-06-03 10:19:03 +02:00
Andras Bacsai
a047971bc1
fix(github): use provided app for installation URLs
...
Generate GitHub App installation links and setup cache state from the
current app instance, and keep the Livewire app name in sync after
permission checks.
2026-06-03 10:07:57 +02:00
Andras Bacsai
858b1906ec
Improve GitHub App setup flow
2026-06-03 09:33:46 +02:00
Ömer Faruk ŞAHİN
903f7a7177
Merge branch 'next' into fix/deploy-key-dedicated-path-race
2026-06-03 10:28:34 +03:00
Andras Bacsai
d681e656c7
fix(server): preserve remote HOME in Railpack buildx prune
2026-06-02 16:36:00 +02:00
Andras Bacsai
67687efc65
Merge remote-tracking branch 'origin/next' into 10507-railpack-cache-volume
2026-06-02 15:14:13 +02:00
Andras Bacsai
a75dc07567
fix(server): prune Railpack buildx cache via helper container
2026-06-02 15:14:01 +02:00
Andras Bacsai
d87ab279fb
fix(log-drain): connect drain to service networks
...
Ensure the log drain container joins enabled service destination networks
when services start or the log drain restarts.
2026-06-02 14:33:57 +02:00
Andras Bacsai
5eec212ade
fix(deploy): persist Railpack buildx metadata
...
Mount the host buildx metadata directory into helper containers so the
Railpack builder can be pruned during Docker cleanup.
2026-06-02 14:30:49 +02:00
Andras Bacsai
40294bc3b3
chore: inspect staged changes
2026-06-02 14:05:26 +02:00
Andras Bacsai
cd06e10b1b
fix(auth): bind magic links to their invitation
...
Include the invitation UUID in generated magic link tokens and validate the
matching stored invitation link before logging the user in, preventing stale
or same-email invitations from being reused.
2026-06-02 12:57:30 +02:00
Andras Bacsai
40d570f195
chore: update team invitation handling
2026-06-02 12:22:27 +02:00
Andras Bacsai
252a4a702c
Merge remote-tracking branch 'origin/next' into audit-policies
2026-06-02 12:08:35 +02:00
Andras Bacsai
973632b49c
Merge remote-tracking branch 'origin/next' into audit-policies
2026-06-02 12:03:38 +02:00
Andras Bacsai
93aa8894a8
fix(service): Garage doesn't start due to RPC secret being wrong length ( #10425 )
2026-06-02 12:01:41 +02:00
Andras Bacsai
0038a8f5c9
Merge remote-tracking branch 'origin/next' into api-sensitive-data-scrubber
2026-06-02 11:57:13 +02:00
Andras Bacsai
1bad82cf43
Merge remote-tracking branch 'origin/next' into chore/update-deployment-validation
2026-06-02 11:28:42 +02:00
Andras Bacsai
fb4c3aa22e
fix(applications): allow repeated hyphens in image names
2026-06-02 11:27:25 +02:00
Andras Bacsai
098b098509
Merge remote-tracking branch 'origin/next' into chore/update-deployment-validation
2026-06-02 11:20:29 +02:00
Andras Bacsai
507ecfdf54
Merge remote-tracking branch 'origin/next' into fix/application-image-validation
2026-06-02 11:14:35 +02:00
Andras Bacsai
6dae53a0e5
Merge remote-tracking branch 'origin/next' into fix/application-image-validation
2026-06-02 11:13:36 +02:00
Andras Bacsai
d72c1e2a47
fix(applications): harden image validation
2026-06-02 11:11:33 +02:00
Andras Bacsai
c7c8107dcd
Merge remote-tracking branch 'origin/next' into fix/application-branch-validation
2026-06-02 11:10:33 +02:00
Andras Bacsai
62caa30056
Merge remote-tracking branch 'origin/next' into chore/update-deployment-validation
2026-06-02 11:10:32 +02:00
Andras Bacsai
1ce36926f6
Merge remote-tracking branch 'origin/next' into fix/proxy-config-validation
2026-06-02 11:07:07 +02:00
Andras Bacsai
51894d9c05
chore: defer server policy changes
2026-06-02 10:57:14 +02:00
Andras Bacsai
a511bd9b67
fix(api): validate token team context
2026-06-01 15:17:55 +02:00
Andras Bacsai
5e4873322e
chore: improve deployment input handling
2026-06-01 15:15:38 +02:00
Andras Bacsai
419593e7d4
fix(proxy): tighten config validation
2026-06-01 15:14:28 +02:00
Andras Bacsai
2bb07bbe9e
fix: validate application branch updates
2026-06-01 15:13:04 +02:00
Andras Bacsai
4b2dfa7c77
Merge remote-tracking branch 'origin/next' into 2731-investigate-failed-git-clone
2026-06-01 11:44:09 +02:00
Andras Bacsai
92d6b577fd
Merge remote-tracking branch 'origin/next' into 7616-conditional-image-tags
2026-06-01 11:15:55 +02:00
Andras Bacsai
e7483f591f
fix(deployments): scope submodule git credentials per command
...
Use per-command git config for GitHub App HTTPS credentials so private submodules authenticate without persisting global git config. Preserve configured git options for checkout, fetch, submodule, and LFS commands, and cover GitLab PR submodule checkout with tests.
2026-06-01 10:54:14 +02:00
Andras Bacsai
bc8928fdc4
Merge remote-tracking branch 'origin/next' into 2731-investigate-failed-git-clone
2026-06-01 10:40:02 +02:00
Andras Bacsai
a5313a78cf
fix(deployments): filter generated compose service env vars ( #10186 )
2026-06-01 10:38:36 +02:00
Andras Bacsai
e37f9401bc
Merge remote-tracking branch 'origin/next' into 7552-pr-previews-not-working
2026-06-01 10:35:37 +02:00
Andras Bacsai
8e30035031
Merge remote-tracking branch 'origin/next' into s3-backup-validation
2026-06-01 10:32:17 +02:00
Andras Bacsai
d4ff7ea791
Merge remote-tracking branch 'origin/next' into s3-backup-validation
2026-06-01 10:02:12 +02:00
Andras Bacsai
3db41a83a8
Merge remote-tracking branch 'origin/next' into terminal-long-session-disconnects
2026-06-01 09:52:34 +02:00
Andras Bacsai
51062e73a6
fix(database): honor disabled standalone health checks
...
Skip Docker healthcheck configuration when standalone database health checks are disabled, and document default health check settings in the database API schema.
2026-06-01 08:55:03 +02:00
Andras Bacsai
094e64ed2d
Merge remote-tracking branch 'origin/next' into terminal-long-session-disconnects
2026-06-01 06:56:11 +02:00
Andras Bacsai
4f053bf5b4
Merge remote-tracking branch 'origin/next' into 10444-database-healthchecks
2026-06-01 06:55:40 +02:00
Jérémy Derdaele
b5416859e5
fix(templates): generate valid Garage RPC secret
...
Garage requires a 32 bytes secret (which is a 64 char hex string)
2026-05-31 23:57:46 +02:00
Andras Bacsai
b46d8e2601
fix(terminal): keep sessions alive without hard timeouts
2026-05-31 21:52:46 +02:00
Andras Bacsai
8a52307255
fix(cleanup): preserve self-hosted server IPs ( #10480 )
2026-05-31 21:50:28 +02:00
Andras Bacsai
d423223d38
feat(database): configure standalone health checks
...
Add configurable health check settings for standalone databases and apply them to generated Docker Compose services. Allow disabling health checks and cover the behavior with feature tests.
2026-05-31 21:50:10 +02:00
Andras Bacsai
1b68f11ec0
fix(cleanup): disable unreachable self-hosted servers
...
Preserve self-hosted server IPs during unreachable cleanup and force-disable them instead. Keep cloud cleanup behavior overwriting the IP, with test coverage for both paths.
2026-05-31 21:47:18 +02:00
Andras Bacsai
34f15c106c
fix(webhook): match GitLab SSH repos with custom ports
...
Strip leading port segments from scp-style GitLab repository URLs so manual webhook matching compares the repository path consistently. Cover both ported and unported SSH URL forms.
2026-05-31 21:46:23 +02:00
Andras Bacsai
c9fcc0bc44
fix(service): defer stop when pulling latest images
...
Ensure restart actions flow through StartService so pull-latest restarts can
avoid stopping the service before image pulls. Also raise the changelog modal
above the desktop sidebar toggle.
2026-05-31 21:19:18 +02:00
ShadowArcanist
84eb9d31bb
feat(ui): improve configuration changes modal
2026-05-30 13:16:37 +05:30
Andras Bacsai
38e855b20e
fix(webhook): skip preview deployments for fork PRs ( #10457 )
2026-05-29 20:43:29 +02:00
ShadowArcanist
ab4b2045d4
fix(webhook): skip preview deployments for fork PRs when public previews are off
2026-05-29 23:53:51 +05:30
Andras Bacsai
b81bfc7f32
feat(profile): add appearance preferences page
...
Add a profile appearance section for theme, page width, and zoom preferences.
Move changelog access into the sidebar and bump the Coolify version to 4.1.2.
2026-05-29 13:59:01 +02:00
Andras Bacsai
c5fbf78bd8
fix(database): quote S3 restore temp paths
...
Escape generated restore file paths before composing docker and shell cleanup commands so paths with spaces or metacharacters cannot break command execution. Update import form security coverage to target ImportForm directly.
2026-05-29 12:27:33 +02:00
Andras Bacsai
bbbd46ca26
fix(database): always include MongoDB archive path in restores
2026-05-29 08:27:45 +02:00