Commit graph

13421 commits

Author SHA1 Message Date
Andras Bacsai
e79316c8b5
Update app/Jobs/DeleteResourceJob.php
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2025-11-11 11:35:30 +01:00
Andras Bacsai
ae6ad5175a
Port detection lol (#7185) 2025-11-11 11:33:58 +01:00
Andras Bacsai
75e8605c3d
Merge branch 'next' into port-detection-lol 2025-11-11 11:32:17 +01:00
Andras Bacsai
0039be49b2 fix(DeleteResourceJob): escape deployment UUID and stack name in Docker commands 2025-11-11 11:30:17 +01:00
Andras Bacsai
45ab79f292
Merge branch 'next' into port-detection-lol 2025-11-11 11:21:26 +01:00
Andras Bacsai
7fc4a2f7f6 feat: implement service environment variable parsing and add unit tests for port detection logic 2025-11-11 11:19:33 +01:00
Andras Bacsai
6d6ebe92ff fix: remove unnecessary peer property from multiple dependencies in package-lock.json 2025-11-11 11:17:56 +01:00
peaklabs-dev
28b38babca
fix(service): disable openpanel worker UI by default 2025-11-10 22:09:04 +01:00
Andras Bacsai
959763c75c
Fix deployment status message to improve user feedback (#7190) 2025-11-10 21:33:46 +01:00
Andras Bacsai
a12dd98f64 Merge branch 'next' into fix-deployment-skipped-message 2025-11-10 21:33:10 +01:00
Andras Bacsai
fd50f72889 fix: remove duplicate deployment queue call causing false error messages
Removed duplicate queue_application_deployment() call in Heading.php deploy method that was causing "Deployment already queued for this commit" error to display even though deployment was successfully queued.

Also changed notification type from 'success' to 'error' when deployment is actually skipped for proper user feedback.
2025-11-10 21:31:06 +01:00
Andras Bacsai
be808a92fe
Fix stuck resource cleanup and improve error handling (#7186) 2025-11-10 15:30:34 +01:00
Andras Bacsai
f1d80d6776 fix: enhance error handling in initialization and cleanup process 2025-11-10 15:29:26 +01:00
Andras Bacsai
23c165d4d1 fix: wrap database updates in a transaction for consistency in GetContainersStatus 2025-11-10 15:07:44 +01:00
Andras Bacsai
761f177b1e fix: move restart count reset logic to the correct position in the restart method 2025-11-10 14:59:29 +01:00
Andras Bacsai
cefb425492
Update app/Livewire/Project/Application/Heading.php
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2025-11-10 14:58:08 +01:00
Andras Bacsai
18a14037c7 fix: improve logging for PORT environment variable mismatch and ensure .env file is created in the correct directory 2025-11-10 14:56:27 +01:00
Andras Bacsai
0b8d3d395e fix: remove redundant process termination logic from deployment methods 2025-11-10 14:46:02 +01:00
Andras Bacsai
9507f602df fix: ensure service state is refreshed and compose configurations are saved after submission 2025-11-10 14:44:11 +01:00
Andras Bacsai
b9846c08cc fix: ensure unique environment files are included for applications and services 2025-11-10 14:42:34 +01:00
Andras Bacsai
f5fa09790e refactor: improve command handling and ensure correct working directory for Docker operations 2025-11-10 14:40:03 +01:00
Andras Bacsai
d8878d868c fix: remove unnecessary peer dependencies from package-lock.json 2025-11-10 14:39:57 +01:00
Andras Bacsai
fe46c490a2 Update service templates for Convex and EmbyStat; modify compose configurations and adjust tags and categories for better clarity and organization 2025-11-10 14:16:14 +01:00
Andras Bacsai
6decad2e96 refactor: streamline required port retrieval in EditDomain and ServiceApplicationView; add environment_variables method in ServiceApplication 2025-11-10 14:15:53 +01:00
Andras Bacsai
2e85ca8a57 Update service templates for Convex and EmbyStat; modify compose configurations and adjust tags and categories for better clarity and organization 2025-11-10 14:13:54 +01:00
Andras Bacsai
e63a270fea
Enhance container status tracking and improve user notifications (#7182) 2025-11-10 13:58:22 +01:00
Andras Bacsai
194d023f70
Enhance port detection and improve user notifications (#7184) 2025-11-10 13:56:09 +01:00
Andras Bacsai
99e97900a5 feat: add automated PORT environment variable detection and UI warnings
Add detection system for PORT environment variable to help users configure applications correctly:

- Add detectPortFromEnvironment() method to Application model to detect PORT env var
- Add getDetectedPortInfoProperty() computed property in General Livewire component
- Display contextual info banners in UI when PORT is detected:
  - Warning when PORT exists but ports_exposes is empty
  - Warning when PORT doesn't match ports_exposes configuration
  - Info message when PORT matches ports_exposes
- Add deployment logging to warn about PORT/ports_exposes mismatches
- Include comprehensive unit tests for port detection logic

The ports_exposes field remains authoritative for proxy configuration, while
PORT detection provides helpful suggestions to users.
2025-11-10 13:43:27 +01:00
Andras Bacsai
68a9f2ca77 feat: add container restart tracking and crash loop detection
Track container restart counts from Docker and detect crash loops to provide better visibility into application health issues.

- Add restart_count, last_restart_at, and last_restart_type columns to applications table
- Detect restart count increases from Docker inspect data and send notifications
- Show restart count badge in UI with warning icon on Logs navigation
- Distinguish between crash restarts and manual restarts
- Implement 30-second grace period to prevent false "exited" status during crash loops
- Reset restart count on manual stop, restart, and redeploy actions
- Add unit tests for restart count tracking logic

This helps users quickly identify when containers are in crash loops and need attention, even when the container status flickers between states during Docker's restart backoff period.
2025-11-10 13:04:31 +01:00
Andras Bacsai
5702733a53
Enhance Nginx configuration for better performance and analytics (#7179) 2025-11-10 11:34:24 +01:00
Andras Bacsai
40e242b874 perf(nginx): increase client body buffer size to 256k for Sentinel payloads
Increases client_body_buffer_size from default (8k-16k) to 256k to handle
Sentinel monitoring data in memory instead of buffering to disk. This eliminates
the "client request body is buffered to a temporary file" warning and improves
performance for servers with many containers (50-100+) sending health check data.

Affects both production and development nginx configurations.
2025-11-10 11:32:49 +01:00
Andras Bacsai
0ea27ce37a
Cancel active deployments when a pull request is closed (#7164) 2025-11-10 11:16:54 +01:00
Andras Bacsai
919fc184b7 fix(docker): improve pull request ID check in container status function 2025-11-09 20:35:03 +01:00
Andras Bacsai
67605d50fc fix(deployment): prevent base deployments from being killed when PRs close (#7113)
- Fix container filtering to properly distinguish base deployments (pullRequestId=0) from PR deployments
- Add deployment cancellation when PR closes via webhook to prevent race conditions
- Prevent CleanupHelperContainersJob from killing active deployment containers
- Enhance error messages with exit codes and actual errors instead of vague "Oops" messages
- Protect status transitions in finally blocks to ensure proper job failure handling
2025-11-09 14:41:35 +01:00
Andras Bacsai
649dd023cb
feat(service): Add postgresus service template. (#7055) 2025-11-08 16:16:26 +01:00
Andras Bacsai
f382e95d9b
Merge branch 'next' into v4.x 2025-11-08 16:15:57 +01:00
Andras Bacsai
ed51785fb9
Enhance Docker Compose handling and improve error management (#7148) 2025-11-08 16:14:15 +01:00
Andras Bacsai
712d60c75b feat: ensure .env file exists for docker compose and auto-inject in payloads 2025-11-07 15:20:10 +01:00
Andras Bacsai
d3eba6c1b7
Merge branch 'next' into issue-7127 2025-11-07 14:44:38 +01:00
Andras Bacsai
775216e7a5 jean jean 2025-11-07 14:33:32 +01:00
Andras Bacsai
7fd1d799b4 refactor: rename onWorktreeCreate script to setup in jean.json 2025-11-07 14:33:32 +01:00
Andras Bacsai
8660d1d8fe Merge branch 'next' into issue-7127 2025-11-07 14:14:51 +01:00
Andras Bacsai
e86575d6f7 fix: guard against null or empty docker compose in saveComposeConfigs method 2025-11-07 14:14:43 +01:00
Andras Bacsai
a71638581e
chore(deps-dev): bump tar from 7.5.1 to 7.5.2 (#7134) 2025-11-07 14:13:00 +01:00
Andras Bacsai
75a10df394
Add/Fix categories/tags (#7147) 2025-11-07 14:11:56 +01:00
Andras Bacsai
049affe216 refactor: rename onWorktreeCreate script to setup in jean.json 2025-11-07 14:04:09 +01:00
Andras Bacsai
468d5fe7d7 refactor: improve docker compose validation and transaction handling in StackForm 2025-11-07 14:03:19 +01:00
hareland
07ce375ac5 Embystat: change category from 'media' to 'analytics' 2025-11-07 13:50:19 +01:00
hareland
b08ea4402a Embystat: change category from 'media' to 'analytics' 2025-11-07 13:46:12 +01:00
hareland
183c70e3c8 **Update rybbit.yaml schema: add category field and adjust tags formatting** 2025-11-07 13:29:49 +01:00