Commit graph

14545 commits

Author SHA1 Message Date
Andras Bacsai
dc15bee980 feat: implement actual webhook delivery with Ray debugging
Added actual HTTP POST delivery for webhook notifications and comprehensive Ray debugging for development.

Changes:
- Updated Team model to implement SendsWebhook interface
- Added routeNotificationForWebhook() method to Team
- Enhanced SendWebhookJob with Ray logging for request/response
- Added Ray debugging to WebhookChannel for dispatch tracking
- Added Ray debugging to Webhook Livewire component

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-10 18:07:04 +02:00
Andras Bacsai
413dee5d8c feat: implement actual webhook delivery
Implement full webhook delivery functionality:
- Create SendWebhookJob to handle HTTP POST requests
- Update WebhookChannel to dispatch webhook jobs
- Configure retry logic (5 attempts, 10s backoff)
- Update Test notification payload with success/message structure

Webhook payload structure:
{
  "success": true/false,
  "message": "notification message",
  "event": "event_type",
  "url": "coolify_dashboard_url"
}

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-10 17:59:17 +02:00
Andras Bacsai
729c891542 feat: add WebhookChannel placeholder implementation
Add basic WebhookChannel infrastructure:
- Create SendsWebhook interface
- Create WebhookChannel with placeholder implementation (logs instead of sending)
- Update Test notification to support webhook channel
- Add WebhookChannel to HasNotificationSettings trait
- Add toWebhook() method to Test notification

This provides a working foundation that won't break test notifications.
The actual HTTP webhook delivery will be implemented in a follow-up.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-10 17:57:10 +02:00
Andras Bacsai
22153c419d feat: add webhook placeholder to Test notification
Add webhook case to the Test notification's via() method
to prepare for future WebhookChannel implementation.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-10 17:55:11 +02:00
Andras Bacsai
22ef6c8c9a fix: add missing server_patch_webhook_notifications field
Add the server_patch_webhook_notifications column to both
the create and populate migrations to match the model and
Livewire component expectations.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-10 17:52:07 +02:00
Romain ROCHAS
4ce1c2ece7
Merge branch 'next' into fix/evolution-api-slogan 2025-10-10 17:51:09 +02:00
Andras Bacsai
eea372d702 fix: register WebhookNotificationSettings with NotificationPolicy
Add WebhookNotificationSettings to the policy mappings in
AuthServiceProvider to enable authorization checks for the
webhook notification settings.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-10 17:48:14 +02:00
Andras Bacsai
53d1ad48cd fix: populate webhook notification settings for existing teams
Add migration to create webhook notification settings records
for all existing teams. This fixes the "unauthorized" error when
accessing the webhook notifications page for teams that existed
before the webhook feature was added.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-10 17:47:26 +02:00
Andras Bacsai
9481247ef4 fix(conductor): update run script to include 'spin down' command 2025-10-10 17:44:17 +02:00
Andras Bacsai
eb9305df8e feat(docker-compose): add image specifications for coolify, soketi, and testing-host services 2025-10-10 17:44:01 +02:00
Andras Bacsai
606b3b56b1 fix(conductor): update run script command to 'spin up' 2025-10-10 17:28:37 +02:00
Andras Bacsai
655e5a011a feat(conductor): add run script and update runScriptMode configuration 2025-10-10 16:07:51 +02:00
Andras Bacsai
4834ff27d1 fix(conductor-setup): update script permissions for execution 2025-10-10 16:06:30 +02:00
Andras Bacsai
840c16246d feat(conductor): add setup script and configuration file 2025-10-10 16:03:22 +02:00
Andras Bacsai
3c74620f36 feat: add modal support for creating private keys in server creation form and enhance UI for private key selection 2025-10-10 15:53:17 +02:00
Andras Bacsai
b28875c612 fix: update cloud provider token form with improved placeholder and guidance for API token creation 2025-10-10 15:40:20 +02:00
Andras Bacsai
a90236ed60 feat: enhance datalist component with unified input container and improved option handling 2025-10-10 15:40:15 +02:00
Andras Bacsai
27879377a0 feat: add custom webhook notification support
Add basic infrastructure for custom webhook notifications:
- Create webhook_notification_settings table with event toggles
- Add WebhookNotificationSettings model with encrypted URL
- Integrate webhook settings into Team model and HasNotificationSettings trait
- Create Livewire component and Blade view for webhook configuration
- Add webhook navigation route and UI

This provides the foundation for sending webhook notifications to custom HTTP/HTTPS endpoints when events occur in Coolify.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-10 15:37:00 +02:00
Romain ROCHAS
21fbc3bad8 fix(n8n): add DB_SQLITE_POOL_SIZE environment variable for configuration 2025-10-10 14:34:23 +02:00
Romain ROCHAS
9c4114e9fa fix(template) update n8n with new required env + image version 2025-10-10 14:28:18 +02:00
ShadowArcanist
8e954a3451
Set static version number for documenso service 2025-10-10 16:41:06 +05:30
ShadowArcanist
ac26fbe675
Added resend api env for documenso service 2025-10-10 16:37:35 +05:30
Andras Bacsai
ac3af8a882 feat: add support for selecting additional SSH keys from Hetzner in server creation form 2025-10-10 12:17:05 +02:00
Andras Bacsai
ee211526ea fix: improve placeholder text for token name input in cloud provider token form 2025-10-10 11:38:35 +02:00
Andras Bacsai
2e21d875af feat: implement ValidHostname validation rule and integrate it into server creation process 2025-10-10 11:03:13 +02:00
Andras Bacsai
bd88bbca5b fix: streamline proxy status handling in StartProxy and Navbar components 2025-10-10 10:41:58 +02:00
Andras Bacsai
9c152fd40a feat: add retry mechanism with rate limit handling to API requests in HetznerService 2025-10-10 10:41:37 +02:00
Andras Bacsai
5362952e2a fix: correct dispatch logic for Hetzner server status refresh in checkHetznerServerStatus method 2025-10-10 10:13:14 +02:00
Andras Bacsai
2bca22082c feat: add retry functionality for server validation process 2025-10-10 10:13:08 +02:00
Andras Bacsai
00cb06150e fix: improve error logging and handling in ServerConnectionCheckJob for Hetzner server status 2025-10-10 10:12:59 +02:00
Andras Bacsai
32b53d756a feat: enhance proxy status notifications with detailed messages for various states 2025-10-10 09:37:05 +02:00
Andras Bacsai
513f6b54f7 feat: implement Hetzner deletion failure notification system with email and messaging support 2025-10-10 09:35:58 +02:00
Andras Bacsai
bbaef03602 fix: update Hetzner server status handling to prevent unnecessary database updates and improve UI responsiveness 2025-10-10 09:35:54 +02:00
Andras Bacsai
77dcabe51c fix: refresh server data before showing notification to ensure accurate proxy status 2025-10-10 09:35:49 +02:00
Blue Mouse
d16b6e9378 Bump Swetrix base version to v4.0.4 2025-10-10 01:40:53 +01:00
Andras Bacsai
f4e5c195fe refactor: replace direct SslCertificate queries with server relationship methods for consistency 2025-10-09 17:00:05 +02:00
Andras Bacsai
bf5c08d071 work work on hetzner integration 2025-10-09 16:54:13 +02:00
Andras Bacsai
f85a4f04d9 fix(css): update focus styles for Checkbox and modal input components to enhance accessibility 2025-10-09 16:53:46 +02:00
Andras Bacsai
4a38497622 fix(css): remove unnecessary tracking classes from status components for consistency 2025-10-09 16:38:40 +02:00
Andras Bacsai
3241bd2a74 fix(css): update focus styles for input and button utilities to improve accessibility 2025-10-09 16:38:27 +02:00
Andras Bacsai
8d5ac0da00 feat(deployment): save build-time .env file before build and enhance logging for Dockerfile 2025-10-09 16:38:17 +02:00
Andras Bacsai
2f124592d2 fix(css): update success color to match design specifications 2025-10-09 16:38:05 +02:00
Andras Bacsai
da93a52976 feat(cleanup): add force deletion of stuck servers and orphaned SSL certificates 2025-10-09 16:37:56 +02:00
Andras Bacsai
231ad85e15 docs(database-patterns): add critical note on mass assignment protection for new columns 2025-10-09 15:36:40 +02:00
Andras Bacsai
704ddf2968 improved hetzner features 2025-10-09 12:53:57 +02:00
Andras Bacsai
c9e6418542 refactor(forms): simplify wire:dirty class bindings for input, select, and textarea components 2025-10-09 12:52:59 +02:00
Andras Bacsai
61e688affd refactor(checkbox, utilities, global-search): enhance focus styles for better accessibility 2025-10-09 12:46:36 +02:00
Andras Bacsai
d837aa1473 fix(api-tokens): update settings link for API enablement message
- Changed the link in the API tokens view to direct users to the advanced settings page instead of the general settings page, providing clearer guidance for enabling the API.
2025-10-09 11:22:10 +02:00
Andras Bacsai
215301fa8f basics of adding / removing hetzner servers 2025-10-09 10:41:29 +02:00
ShadowArcanist
b39690dfa2 Changed docker --time command to -t since --time is deprecated on v28 2025-10-09 13:26:10 +05:30