Commit Graph
16370 Commits
Author SHA1 Message Date
Mohmmad QunibiandGitHub 950c4e5936 Update EMQX image to use 'latest' tag 2026-04-20 12:17:08 +03:00
Mohmmad QunibiandGitHub cc0a864486 Merge branch 'coollabsio:v4.x' into add-emqx-as-a-service-template 2026-04-20 12:14:33 +03:00
🏔️ PeakandGitHub d392bab4c1 Merge branch 'next' into v5.x-chore/deprecate-docker-swarm 2026-04-20 01:12:43 +02:00
Andras Bacsai 8a715489cb Delete lessons.md 2026-04-19 17:42:17 +02:00
Andras Bacsai 1f9dd5326f Merge remote-tracking branch 'origin/next' into audit-policies
# Conflicts:
#	tests/Feature/DatabaseBackupCreationApiTest.php
2026-04-19 17:40:12 +02:00
Andras BacsaiandGitHub a1b2ab124a fix(api): use explicit team ID for S3 storage lookup in backup endpoints (#9655) 2026-04-19 15:28:13 +02:00
Andras Bacsai 5019c8db92 fix(api): use explicit team ID for S3 storage lookup in backup endpoints
Replace `ownedByCurrentTeam()` (session-based) with `ownedByCurrentTeamAPI($teamId)`
(explicit team ID) when resolving S3 storage in create_backup and update_backup.
Session-based team resolution is unreliable in API context where auth is token-based.

Add `S3Storage::ownedByCurrentTeamAPI(int $teamId)` scope and update feature tests
to use real model instances instead of Mockery mocks.
2026-04-19 15:26:47 +02:00
Andras BacsaiandGitHub 661d609da3 fix(server): exclude persistent resources from container prune (#9654) 2026-04-19 15:19:41 +02:00
Andras Bacsai 43f33d94ad Merge remote-tracking branch 'origin/next' into audit-policies
# Conflicts:
#	app/Http/Controllers/Api/SecurityController.php
#	app/Http/Controllers/Api/ServersController.php
#	app/Livewire/Admin/Index.php
#	app/Livewire/Destination/Show.php
#	app/Livewire/NavbarDeleteTeam.php
#	app/Livewire/Project/Application/Previews.php
#	app/Livewire/Project/DeleteProject.php
#	app/Livewire/Project/Shared/ResourceOperations.php
#	app/Livewire/Server/Resources.php
#	app/Livewire/Server/ValidateAndInstall.php
#	app/Livewire/Storage/Show.php
#	resources/views/livewire/dashboard.blade.php
#	resources/views/livewire/project/application/heading.blade.php
#	resources/views/livewire/project/database/heading.blade.php
#	resources/views/livewire/project/service/heading.blade.php
#	resources/views/livewire/project/shared/environment-variable/show.blade.php
#	resources/views/livewire/project/shared/scheduled-task/show.blade.php
#	tests/Feature/Security/TrustHostsMiddlewareTest.php
2026-04-19 15:19:37 +02:00
Andras Bacsai 0620496c5f fix(server): exclude persistent resources from container prune
Prevent docker container prune from removing containers labeled as
database, application, or service types. Previously only proxy containers
were excluded, risking accidental cleanup of active resources.
2026-04-19 15:17:47 +02:00
Andras BacsaiandGitHub 371e883c75 refactor(api): validate and throttle feedback endpoint (#9653) 2026-04-19 14:50:03 +02:00
Andras BacsaiandClaude Opus 4.7 434f91f83c refactor(help): raise feedback subject cap to 600 characters
Align composed payload size with the 2000-char backend budget
(prefix ~56 + email 255 + subject 600 + description 1000 = 1911).

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-04-19 14:48:34 +02:00
Andras BacsaiandClaude Opus 4.7 233f063850 refactor(help): cap feedback subject length to 255 characters
Keep composed feedback payload within the server-side 2000-char budget
(prefix ~56 + email 255 + subject 255 + description 1000 = 1566).

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-04-19 14:46:42 +02:00
Andras BacsaiandGitHub 5bf4bb9e80 feat(api): add DELETE endpoint for preview deployments by PR id (#9614) 2026-04-19 14:43:32 +02:00
Andras BacsaiandClaude Opus 4.7 e7bbd45408 refactor(api): validate and throttle feedback endpoint
- Validate content (required string, min:10, max:2000) in OtherController@feedback
- Register 'feedback' named rate limiter (3/min per user or IP) in RouteServiceProvider
- Apply throttle:feedback middleware to POST /api/feedback
- Forward to Discord with allowed_mentions.parse=[] and a 5s HTTP timeout

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-04-19 14:41:47 +02:00
Andras BacsaiandGitHub 1337e4351a refactor(webhook): encrypt manual webhook secrets and tighten HMAC verification (#9652) 2026-04-19 12:53:02 +02:00
Andras BacsaiandClaude Opus 4.7 bafb9a5a8b refactor(webhook): encrypt manual webhook secrets and tighten HMAC verification
- Auto-generate a 40-char random secret for each manual_webhook_secret_* column on Application creation so new apps are never left with an empty secret.
- Add encrypted cast for the four webhook-secret columns; backfill migration re-encrypts existing plaintext values and fills missing ones.
- Reject webhook deliveries when the stored secret is empty (GitHub, GitLab, Bitbucket, Gitea manual endpoints).
- Bitbucket: require the sha256 algorithm prefix on X-Hub-Signature instead of trusting the client-supplied algo.
- GitLab: drop the ?? '' fallback on the token comparison.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-04-19 12:52:23 +02:00
Andras BacsaiandGitHub 0627e14810 build(deps-dev): bump follow-redirects from 1.15.11 to 1.16.0 (#9580) 2026-04-19 12:04:56 +02:00
Andras BacsaiandGitHub 33518b24a2 refactor: tighten team scoping on resource creation and admin nav (#9651) 2026-04-19 12:01:11 +02:00
Andras Bacsai f77cc91b83 refactor(admin): use named routes for admin index navigation
Replace Referer-based redirects in Admin Index back() and switchUser()
with named routes (admin.index and dashboard) for consistent navigation
behavior independent of the request header.

Add tests verifying back() returns to admin.index, switchUser routes to
the dashboard, and the Referer header is no longer consulted.
2026-04-19 11:58:52 +02:00
Andras Bacsai a478ac66eb refactor: scope destination and resource lookups by current team
Use find_destination_for_current_team helper across resource creation
flows and the destination controller. Pass full destination objects to
database creation helpers instead of UUIDs so team relationships are
resolved consistently before the resource is created or linked.

Add feature tests covering destination, backup storage, and resource
proof lookups across teams.
2026-04-19 11:55:12 +02:00
Jan Thiel 0ca6ebdfad fix(modal): add some padding to the top of the modal content to prevent cuttoffs of the content area and restore close-outside click behaviour 2026-04-19 07:35:21 +02:00
Jan Thiel 14eb37b9aa fix(modal): add missing scrolling behavior for better user experience on smaller screens for modals with much content 2026-04-19 06:14:07 +02:00
Jan Thiel a4b27641c8 feat(hetzner): add endpoints and UI for attaching firewalls and internal networks to the Server Creation dialog 2026-04-19 06:12:50 +02:00
DarkMaper beeed85e43 feat(service): enable plane 2026-04-18 23:35:59 +02:00
DarkMaper 53b47b0baa feat(service): update docker-compose according to the official doc 2026-04-18 23:35:37 +02:00
peaklabs-dev 15cb9446ff chore(swarm): mark docker swarm as deprecated 2026-04-17 23:41:39 +02:00
peaklabs-dev 340cd70ae5 chore(ui): add a deprecated notice component 2026-04-17 23:31:30 +02:00
Andras Bacsai bceb5f28dc feat(applications): add DELETE endpoint for preview deployments by PR id
Add `DELETE /api/v1/applications/{uuid}/previews/{pull_request_id}` to
cancel active deployments, stop containers, and delete the preview
record via `CleanupPreviewDeployment`. Includes OpenAPI annotations,
input validation, and full feature test coverage.
2026-04-17 13:29:11 +02:00
Andras Bacsai 451b7376ed Merge remote-tracking branch 'origin/next' into feat/railpack 2026-04-17 07:01:27 +02:00
ShadowArcanistandGitHub e18ac5a7e8 fix(service): twenty fails to deploy due to dependency unhealthy 2026-04-16 23:18:19 +05:30
miqonee c07053d28b fix(templates): restore Jitsi Meet service template (#4813) 2026-04-16 18:45:27 +07:00
dependabot[bot]andGitHub 0daf450efb build(deps-dev): bump follow-redirects from 1.15.11 to 1.16.0
Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.15.11 to 1.16.0.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases)
- [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.15.11...v1.16.0)

---
updated-dependencies:
- dependency-name: follow-redirects
  dependency-version: 1.16.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-15 19:04:15 +00:00
Mohmmad Qunibi be6acd6f24 Changed the category of emqx to Networking 2026-04-15 19:11:03 +03:00
Mohmmad QunibiandGitHub 6307bd1ad8 Merge branch 'next' into add-emqx-as-a-service-template 2026-04-15 19:00:38 +03:00
Andras Bacsai 3a8f52ce16 fix(team): mark servers unreachable when subscription ends
Set unreachable_count to 3 and unreachable_notification_sent to true
on all team servers in subscriptionEnded(), so the existing cleanup
command can pick them up after the 7-day grace period.

Also adds feature tests for the subscription-ended cleanup flow and
casts server IP to string in existing unreachable server tests to fix
type comparison.
2026-04-15 15:12:29 +02:00
Andras Bacsai a5b3d3a536 fix(migrations): guard uuid column addition and filter teamless servers
- Skip uuid column creation if it already exists to prevent duplicate
  column errors on re-run
- Use chunkById instead of orderBy+chunk for efficient pagination
- Filter servers by whereHas('team') to avoid processing orphaned servers
  without a team relationship
2026-04-15 14:24:41 +02:00
Mohmmad QunibiandGitHub 8b4e8fd783 Merge branch 'next' into add-emqx-as-a-service-template 2026-04-15 11:56:55 +03:00
Mohmmad Qunibi d4e4e446b0 feat: add emqx service template 2026-04-15 11:30:43 +03:00
Andras Bacsai 68e8d6904d feat(env): add buildtime and runtime checkboxes for shared variables
Add is_buildtime and is_runtime checkboxes to shared environment
variable UI, shown in both editable and read-only (disabled) states.
2026-04-14 17:14:49 +02:00
ShadowArcanist 2ca0ee7d19 feat(ui): show warning callout on sentinel page if sentinel is out of sync 2026-04-14 19:11:27 +05:30
ShadowArcanist 2a5e1f4838 fix(ui): server metrics charts were not loading after enabling metrics 2026-04-14 19:05:40 +05:30
Andras BacsaiandGitHub 3fa4ea9ad3 fix(git): preserve ssh scheme URLs with custom ports (#9425) 2026-04-14 15:31:31 +02:00
ShadowArcanist 65ca7e2df3 refactor(ui): use callout components for application metrics alerts 2026-04-14 19:01:01 +05:30
ShadowArcanist f8d095c9b9 fix(routes): fix application metrics link and rename server.charts to server.metrics 2026-04-14 18:59:08 +05:30
ShadowArcanist 6b1b1b14f2 feat(ui): move Sentinel to dedicated tab with sidebar navigation and logs page 2026-04-14 18:50:01 +05:30
Andras Bacsai df5a9e9ba3 chore(version): bump Coolify to 4.0.0-beta.474
Update the app version constant and synced version manifests for the latest beta release.
2026-04-14 11:29:50 +02:00
Andras BacsaiandGitHub 7667146678 Added extra documentation on format for port+path for domains (#8331) 2026-04-14 11:18:35 +02:00
Andras Bacsai 988c127e20 Merge remote-tracking branch 'origin/next' into domain-info-addition 2026-04-14 11:17:59 +02:00
Andras Bacsai 7196b05777 Merge remote-tracking branch 'origin/next' into domain-info-addition 2026-04-14 11:17:40 +02:00