Commit graph

216 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
2c64136503 feat(backup): enhance backup job with S3 upload handling and notifications
- Introduced a new notification class, BackupSuccessWithS3Warning, to alert users when local backups succeed but S3 uploads fail.
- Updated DatabaseBackupJob to track local backup success and handle S3 upload errors, improving error reporting and user notifications.
- Modified ScheduledDatabaseBackupExecution model to include a new s3_uploaded boolean field for tracking S3 upload status.
- Adjusted views and validation logic to reflect changes in backup execution status and S3 handling.
- Added tests to ensure the new s3_uploaded column is correctly implemented and validated.
2025-10-07 15:02:23 +02:00
Andras Bacsai
a243b99df4 feat(exceptions): introduce NonReportableException to handle known errors and update Handler for selective reporting 2025-09-08 09:18:25 +02:00
Andras Bacsai
ee502b9f76 feat(email): implement email change request and verification process
- Added functionality for users to request an email change, including generating a verification code and setting an expiration time.
- Implemented methods in the User model to handle email change requests, code validation, and confirmation.
- Created a new job to update the user's email in Stripe after confirmation.
- Introduced rate limiting for email change requests and verification attempts to prevent abuse.
- Added a new notification for email change verification.
- Updated the profile component to manage email change requests and verification UI.
2025-08-18 14:54:08 +02:00
Andras Bacsai
7925e2e42a fix(email notifications): enhance EmailChannel to validate team membership for recipients and handle errors gracefully 2025-08-17 17:59:22 +02:00
Andras Bacsai
e005f1c838 fix(server): enhance error handling in server patch check notifications 2025-05-27 14:23:16 +02:00
Andras Bacsai
6ea6d2742b feat(server): implement server patch check notifications
- Added a new job, ServerPatchCheckJob, to handle server patch checks and notifications.
- Introduced a new notification class, ServerPatchCheck, for sending updates via email, Discord, Slack, Pushover, and Telegram.
- Updated notification settings models to include server patch notification options for email, Discord, Slack, Pushover, and Telegram.
- Created a migration to add server patch notification fields to the respective settings tables.
- Enhanced the UI to allow users to enable/disable server patch notifications across different channels.
2025-05-26 14:03:59 +02:00
peaklabs-dev
185eef0533
fix(email): transactional emails not sending 2025-04-03 15:02:04 +02:00
peaklabs-dev
d15f1b9b94
fix(email): Emails are not sent in multiple cases
- fix(email): transactional emails are all not sent if `Use system wide (transactional) email settings` is disabled and no other email provide is setup on the Notifications page
- fix(email): no emails are sent if SMTP username and SMTP password are empty (which is the case in dev for example)
- fix(email): Wrong test email notification is used, causing the transactional email test notification to fail if no email provider is set up on the Notifications page.
2025-04-02 16:28:14 +02:00
Andras Bacsai
d110c93ba9 refactor(email): enhance sender information formatting in email logic 2025-03-28 20:44:28 +01:00
Andras Bacsai
ebb81aff68 refactor(email): allow custom email recipients in email sending logic 2025-03-28 19:09:36 +01:00
Andras Bacsai
6d9887afba refactor(email): remove unnecessary whitespace in email sending logic 2025-03-28 18:46:46 +01:00
Andras Bacsai
2b046c4bc4 refactor(email): streamline email sending logic and improve configuration handling 2025-03-28 18:44:10 +01:00
Andras Bacsai
09636b413e refactor(email): validate team membership for email recipients 2025-03-28 14:55:13 +01:00
Andras Bacsai
11bfc37db7 refactor(notifications): update Telegram button URL for staging environment 2025-03-26 08:31:11 +01:00
Andras Bacsai
e891318396 refactor(configuration): centralize configuration management in ConfigurationRepository 2025-03-24 21:01:27 +01:00
Andras Bacsai
e7f32a1c44 refactor(notifications): standardize getRecipients method signatures 2025-03-24 17:55:10 +01:00
Andras Bacsai
26f4d37346 feat(notifications): add discord ping functionality and settings 2025-03-21 12:16:33 +01:00
Andras Bacsai
009cee1bbd
Merge branch 'next' into feat-db-ssl 2025-03-17 15:15:24 +01:00
Andras Bacsai
798aab6955 refactor(ScheduledTask): clean up code formatting and remove unused import 2025-03-14 16:11:41 +01:00
Andras Bacsai
dea125f679 refactor(notifications): Improve transactional email settings handling
- Replace `! $type` checks with `blank($type)` for consistency
- Modify email settings configuration to handle null/disabled states
- Ensure proper fallback and configuration of email providers
2025-02-27 12:56:37 +01:00
Andras Bacsai
4e38872f71 fix(notifications): Correct environment URL path in application notifications 2025-02-27 11:56:39 +01:00
Andras Bacsai
27e4882d57 feat(core): You can validate compose files with docker compose config
fix(core): labels are now accepted with both compose styles
refactor: remove lots of ray's
2025-02-27 11:29:04 +01:00
🏔️ Peak
43adb74755
Merge branch 'next' into feat-db-ssl 2025-02-11 17:41:45 +01:00
Gary Tou
5528212b41
fix(slack): Notification settings URL in HighDiskUsage message (#5071) 2025-02-11 16:27:48 +01:00
peaklabs-dev
268fca3477
feat: SSL notification 2025-02-10 21:31:31 +01:00
Andras Bacsai
fbb6ce3fce fix(core): enhance Slack deployment success notification formatting 2025-02-04 12:44:31 +01:00
Andras Bacsai
df129b83b3 fix(core): update Slack notification formatting to use bold correctly 2025-02-04 12:40:04 +01:00
Andras Bacsai
3da921e2ac fix(core): improve deployment failure Slack notification formatting 2025-02-04 12:36:39 +01:00
peaklabs-dev
a230a42599
fix(email): transactional email sending 2025-01-21 14:53:44 +01:00
Andras Bacsai
1fe4dd722b Revert "rector: arrrrr"
This reverts commit 16c0cd10d8.
2025-01-07 15:31:43 +01:00
Andras Bacsai
16c0cd10d8 rector: arrrrr 2025-01-07 14:52:08 +01:00
Andras Bacsai
f575d1249e Merge branch 'main' into next 2024-12-27 11:09:29 +01:00
peaklabs-dev
1f6c6140ba
fix: smtp encryption 2024-12-23 15:28:35 +01:00
Andras Bacsai
203a20e75e Merge branch 'next' into fix-unreachable-notificiations 2024-12-17 22:35:09 +01:00
Andras Bacsai
9e3467578f feat: add environment_uuid support and update API documentation
- Introduced `environment_uuid` as a required field in various API endpoints and schemas.
- Updated descriptions to clarify that either `environment_name` or `environment_uuid` must be provided.
- Modified routes and controller methods to accommodate the new UUID parameter.
- Adjusted frontend components to utilize `environment_uuid` for better consistency and clarity.
- Removed deprecated fields related to environment handling.

This change enhances the API's flexibility in identifying environments, improving overall usability.
2024-12-17 13:42:16 +01:00
Andras Bacsai
bf9d89f279
Merge branch 'next' into fix-environement-route 2024-12-17 12:17:50 +01:00
peaklabs-dev
f88438edd3
chore: rename topicID to threadId like in the telegram API response 2024-12-11 23:13:13 +01:00
peaklabs-dev
92fec9582c
fix: make pushover settings more clear
- Rename User to User Key
- Rename Token to API Token
- fix: helper and docs links
2024-12-11 19:18:39 +01:00
peaklabs-dev
ebfc8a1094
fix: telegram topic IDs 2024-12-11 19:16:54 +01:00
Zao Soula
9afe929921 refactor: unify notification icon 2024-12-11 18:37:12 +01:00
Zao Soula
ef35429533 feat(notification): add Pushover 2024-12-11 18:13:16 +01:00
Andras Bacsai
b442965976 fix: test notifications to only send it to the right channel 2024-12-11 11:57:56 +01:00
Andras Bacsai
6a7b283844 fix: docker cleanup email notifications 2024-12-11 10:50:10 +01:00
peaklabs-dev
0375db0d7c
feat: Docker cleanup success and failure notification files 2024-12-10 16:12:32 +01:00
peaklabs-dev
99eea783ae
feat: scheduled task success and failure notifications 2024-12-10 14:45:47 +01:00
peaklabs-dev
96c970ca4e
chore: use new notification trait 2024-12-09 19:44:43 +01:00