Commit graph

4381 commits

Author SHA1 Message Date
GitHub Actions
c1c149968e Fix team invitation email case sensitivity bug
- Add email normalization to TeamInvitation model using setEmailAttribute()
- Add HasFactory trait to Team model for testing support
- Create TeamFactory for testing
- Add tests to verify email normalization works correctly
- Fixes issue where mixed case emails in invitations would cause lookup failures
- Resolves #6291

The bug occurred because:
1. User model normalizes emails to lowercase
2. TeamInvitation model did not normalize emails
3. When invitation was created with mixed case, it was stored as-is
4. User lookup failed due to case mismatch during invitation acceptance
5. This caused users to not be able to see teams they were invited to

This fix ensures both models normalize emails consistently.
2025-09-16 15:31:48 +01:00
Andras Bacsai
9e8fb36bc8 feat(deployment): implement cancellation checks during deployment process to enhance user control and prevent unnecessary execution 2025-09-16 13:40:51 +02:00
Ahmed A
ea30c4798a
Merge branch 'next' into v4.x 2025-09-16 14:13:50 +03:00
Andras Bacsai
f9ed02a0b7 fix(server): implement refreshServer method and update navbar event listener for improved server state management 2025-09-16 10:33:32 +02:00
Andras Bacsai
9bd80e4c07 fix(server): add build server check to disable Sentinel and update related logic 2025-09-16 10:31:57 +02:00
Andras Bacsai
2ef139bc42 fix(server): update server usability check to reflect actual Docker availability status 2025-09-16 10:18:35 +02:00
Andras Bacsai
4f8dfa598e refactor(server): remove debugging ray call from validateConnection method for cleaner code 2025-09-16 09:43:51 +02:00
Andras Bacsai
7322072518 refactor(deployment): update environment file paths in docker compose commands to use working directory for improved consistency 2025-09-15 18:05:11 +02:00
Andras Bacsai
133e72336a Revert "refactor(file-transfer): replace base64 encoding with direct file transfer method in various components for improved clarity and efficiency"
This reverts commit feacedbb04.
2025-09-15 17:56:48 +02:00
Andras Bacsai
393745b68c Revert "refactor(file-transfer): replace base64 encoding with direct file transfer method across multiple database actions for improved clarity and efficiency"
This reverts commit 18068857b1.
2025-09-15 17:55:08 +02:00
Andras Bacsai
54a55be8e5 refactor(deployment): streamline environment variable handling for dockercompose and improve sorting of runtime variables 2025-09-15 15:39:07 +02:00
Andras Bacsai
7eb0c5a757 fix(application): improve watch paths handling by trimming and filtering empty paths to prevent unnecessary triggers 2025-09-15 13:59:14 +02:00
Andras Bacsai
a1eaa046c9 feat(auth): enhance user login flow to handle team invitations, attaching users to invited teams upon first login and maintaining personal team logic for regular logins 2025-09-15 12:12:14 +02:00
Andras Bacsai
97428a4a80 feat(executions): add 'Load All' button to view all logs and implement loadAllLogs method for complete log retrieval 2025-09-15 11:05:29 +02:00
Andras Bacsai
4027c1426c feat(sentinel): add support for custom Docker images in StartSentinel and related methods 2025-09-14 19:21:55 +02:00
Andras Bacsai
08d257535a fix(docker): enhance container status aggregation for multi-container applications, including exclusion handling based on docker-compose configuration 2025-09-13 20:32:15 +02:00
Andras Bacsai
b6ff5f89b9 refactor(stripe-jobs): comment out internal notification calls and add subscription status verification before sending failure notifications 2025-09-13 19:35:32 +02:00
Andras Bacsai
a6a4fd39bb chore(cleanup): remove deprecated ServerCheck and related job classes to streamline codebase 2025-09-13 18:35:39 +02:00
Ahmed A
4d52a26ac6 fix rebase 2025-09-13 17:04:22 +03:00
Ahmed A
5eacb01beb Merge branch 'v4.x' of https://github.com/ahmadw13/coolify into v4.x 2025-09-13 17:01:39 +03:00
Ahmed A
b3d8b99959 Adding support for using config values for process 2025-09-13 17:00:17 +03:00
Andras Bacsai
a2a2bfa6c9 feat(user-management): implement user deletion command with phased resource and subscription cancellation, including dry run option 2025-09-13 15:08:30 +02:00
Andras Bacsai
8e155f25b3 refactor(environment): streamline environment variable handling by replacing sorting methods with direct property access and enhancing query ordering for improved performance 2025-09-12 12:09:03 +02:00
Andras Bacsai
a0b08fae5d fix(feedback): update feedback email address to improve communication with users 2025-09-11 20:23:07 +02:00
Andras Bacsai
20ad2165e7 feat(environment): introduce 'is_buildtime_only' attribute to environment variables for improved build-time configuration 2025-09-11 17:38:16 +02:00
Andras Bacsai
5b3b4bbc43 refactor(environment): remove 'is_build_time' attribute from environment variable handling across the application to simplify configuration 2025-09-11 16:51:56 +02:00
Andras Bacsai
60374c214e refactor(deployment): update environment file handling in Docker commands to use '/artifacts/' path and streamline variable management 2025-09-11 16:22:03 +02:00
Andras Bacsai
ab0786f5a0 feat(environment): add 'is_literal' attribute to environment variable for enhanced configuration options 2025-09-11 15:25:44 +02:00
Andras Bacsai
501e6a2650 refactor(environment): standardize service name formatting by replacing '-' and '.' with '_' in environment variable keys 2025-09-11 13:59:02 +02:00
Andras Bacsai
13af4811f5 feat(storages): add method to retrieve the first storage ID for improved stability in storage display 2025-09-11 13:41:22 +02:00
Andras Bacsai
5e0b86f322
Merge pull request #6170 from mindedtech/Add-SERVICE_NAME-variable-for-docker-compose-services
Add SERVICE_NAME variable for docker compose services
2025-09-11 13:06:10 +02:00
Andras Bacsai
b46429e879 refactor(deployment): add environment variable copying logic to Docker build commands for pull requests 2025-09-11 13:01:45 +02:00
Andras Bacsai
0db2835565 fix(application): add functionality to stop and remove Docker containers on server 2025-09-11 12:39:28 +02:00
Andras Bacsai
c8f49f29c0 refactor(application): enhance environment variable retrieval in configuration change check for improved accuracy 2025-09-11 12:29:57 +02:00
Andras Bacsai
e74da06465 refactor(clone): consolidate application cloning logic into a dedicated function for improved maintainability and readability 2025-09-11 10:38:08 +02:00
peaklabs-dev
3e9dd6a7bf
chore: remove webhooks table cleanup 2025-09-10 19:56:15 +02:00
Andras Bacsai
d9ebf3b142 refactor(webhook): remove Webhook model and related logic; add migrations to drop webhooks and kubernetes tables 2025-09-10 19:35:53 +02:00
Andras Bacsai
f64622c764 refactor(models): remove 'is_readonly' attribute from multiple database models for consistency 2025-09-10 19:34:49 +02:00
Andras Bacsai
49a2942836 fix(deployment): add COOLIFY_* environment variables to Nixpacks build context for enhanced deployment configuration 2025-09-10 16:15:08 +02:00
Andras Bacsai
2c8f5415f1 feat(database-backup): enhance error handling and output management in DatabaseBackupJob 2025-09-10 16:13:08 +02:00
Andras Bacsai
1c08d32b85 refactor(database): remove volume_configuration_dir and streamline configuration directory usage in MongoDB and PostgreSQL handlers 2025-09-10 16:12:53 +02:00
Andras Bacsai
48d3b3d263 refactor(deployment): add validation for pull request existence in deployment process to enhance error handling 2025-09-10 14:31:29 +02:00
Andras Bacsai
d10e4fa388 refactor(deployment): streamline next deployment queuing logic by repositioning queue_next_deployment call 2025-09-10 13:26:35 +02:00
Andras Bacsai
52312e9de6 refactor(github-webhook): restructure application processing by grouping applications by server for improved deployment handling 2025-09-10 09:30:43 +02:00
Andras Bacsai
40f2471c5a feat(ssh-multiplexing): add connection age metadata handling to improve multiplexed connection management 2025-09-10 08:38:36 +02:00
Andras Bacsai
b433f17dac feat(ssh-multiplexing): enhance multiplexed connection management with health checks and metadata caching 2025-09-10 08:19:38 +02:00
Andras Bacsai
cead87d650 refactor(private-key): remove debugging statement from storeInFileSystem method for cleaner code 2025-09-10 08:19:25 +02:00
Andras Bacsai
a60d6dadc7 fix(private-key): implement transaction handling and error verification for private key storage operations 2025-09-09 16:46:38 +02:00
Andras Bacsai
a06c79776e feat(dev-command): dispatch CheckHelperImageJob during instance initialization to enhance setup process 2025-09-09 16:46:24 +02:00
Ahmed A
c2d6cd1445 spacing fix 2025-09-09 17:28:58 +03:00
Ahmed A
a4e13f56c0 Adding support for using config values for process 2025-09-09 17:25:55 +03:00
Andras Bacsai
1ca94b90da fix(proxy): replace CheckConfiguration with GetProxyConfiguration and SaveConfiguration with SaveProxyConfiguration for improved clarity and consistency in proxy management 2025-09-09 12:52:19 +02:00
Andras Bacsai
feacedbb04 refactor(file-transfer): replace base64 encoding with direct file transfer method in various components for improved clarity and efficiency 2025-09-09 11:10:38 +02:00
Andras Bacsai
b1a2938f84 fix(ScheduledTaskJob): replace generic Exception with NonReportableException for better error handling 2025-09-09 09:30:44 +02:00
Andras Bacsai
a7671ed379 refactor(dns-validation): rename DNS validation functions for consistency and clarity, and remove unused code 2025-09-09 09:00:35 +02:00
Andras Bacsai
45ca76ed1c fix(LocalFileVolume): add missing directory creation command for workdir in saveStorageOnServer method 2025-09-09 08:56:00 +02:00
Arnaud B
e23ab1e621
feat(deployment): add SERVICE_NAME variables for service discovery
This change introduces automatically generated `SERVICE_NAME_<SERVICE>`
environment variables for each service within a Docker Compose deployment.
This allows services to reliably reference each other by name, which is particularly
useful in pull request environments where container names are dynamically suffixed.

- The application parser now generates and injects these `SERVICE_NAME` variables
   into the environment of all services in the compose file.
- `ApplicationDeploymentJob` is updated to correctly handle and filter these
  new variables during deployment.
- UI components and the `EnvironmentVariableProtection` trait have been updated
to make these generated variables read-only, preventing accidental modification.

This commit introduces two new helper functions to standardize resource naming
for pull request deployments:

-  `addPreviewDeploymentSuffix()`: Generates a consistent suffix format (-pr-{id})
   for resource names in preview deployments
-  `generateDockerComposeServiceName()`: Creates SERVICE_NAME environment variables
   for Docker Compose services
2025-09-08 15:22:44 +02:00
Andras Bacsai
18068857b1 refactor(file-transfer): replace base64 encoding with direct file transfer method across multiple database actions for improved clarity and efficiency 2025-09-08 14:04:24 +02:00
Andras Bacsai
852b2688d9 refactor(error-handling): remove ray debugging statements from CheckUpdates and shared helper functions to clean up error reporting 2025-09-08 14:03:27 +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
45c75ad9c1 feat(ssh): add Sentry tracking for SSH retry events to enhance error monitoring 2025-09-07 18:57:20 +02:00
Andras Bacsai
4bd29bf966 refactor(ssh): enhance error handling in SSH command execution and improve connection validation logging 2025-09-07 18:45:44 +02:00
Andras Bacsai
579cc25898 fix(ssh): introduce SshRetryHandler and SshRetryable trait for enhanced SSH command retry logic with exponential backoff and error handling 2025-09-07 17:17:35 +02:00
Andras Bacsai
b847740924 refactor(command): simplify SSH command retry logic by removing unnecessary logging and improving delay calculation 2025-09-07 16:38:11 +02:00
Andras Bacsai
b6176d905b feat(command): implement SSH command retry logic with exponential backoff and logging for better error handling 2025-09-07 10:26:23 +02:00
Andras Bacsai
2d135071c7 refactor(command): replace forceDelete calls with DeleteResourceJob dispatch for all stuck resources in cleanup process 2025-09-05 19:28:08 +02:00
Andras Bacsai
8c5c249c6a refactor(webhook): replace direct forceDelete calls with DeleteResourceJob dispatch for application previews 2025-09-05 19:27:59 +02:00
Andras Bacsai
136ca08305 refactor(command): streamline Init command by removing unnecessary options and enhancing error handling for various operations 2025-09-05 19:27:49 +02:00
Andras Bacsai
a10e51b2c4 fix(webhook): replace delete with forceDelete for application previews to ensure immediate removal 2025-09-05 17:50:33 +02:00
Andras Bacsai
28d05f759e refactor(command): remove InitChangelog command as it is no longer needed 2025-09-05 17:45:15 +02:00
Andras Bacsai
9c3345318a fix(user): ensure email attributes are stored in lowercase for consistency and prevent case-related issues 2025-09-05 17:44:34 +02:00
Andras Bacsai
49bd0a2a01 refactor(command): improve database collection logic for deletion command by using unique identifiers and enhancing user experience 2025-09-05 17:43:19 +02:00
Andras Bacsai
581b649cd7 fix(command): enhance cleanup process for stuck application previews by adding force delete for trashed records 2025-09-05 17:43:05 +02:00
Andras Bacsai
16447b7391 refactor(command): streamline database deletion process to handle multiple database types and improve user experience 2025-09-05 14:56:30 +02:00
Andras Bacsai
b17c65b224 fix(command): enhance database deletion command to support multiple database types 2025-09-05 14:55:15 +02:00
Andras Bacsai
339118558c feat(settings): add option to restrict PR deployments to repository members and contributors 2025-09-05 14:30:51 +02:00
Dominic
758fe18d79
oops missed a check 2025-09-03 13:01:03 -04:00
Andras Bacsai
9db8b62219 feat(ui): display current version in settings dropdown and update UI accordingly 2025-09-01 16:23:14 +02:00
Andras Bacsai
0bfffb503e feat(command): add option to sync GitHub releases to BunnyCDN and refactor sync logic 2025-09-01 16:14:02 +02:00
Andras Bacsai
d2ed68e605 refactor(jobs): pull github changelogs from cdn instead of github 2025-09-01 16:13:55 +02:00
Dominic
719d094754
Merge branch 'next' into patch-1 2025-08-31 22:46:35 -04:00
Dominic
c0ffda37f2
remove ~ from forbidden characters in git URLs 2025-08-31 22:32:30 -04:00
Andras Bacsai
6e3e80f1c2 fix(api): add custom labels generation for applications with readonly container label setting enabled 2025-08-31 15:40:48 +02:00
QarthO
bfc8a25b72 move domain trimming before URL validation 2025-08-29 09:09:03 -04:00
Andras Bacsai
bf884bd1a0 refactor(policy): simplify ServiceDatabasePolicy methods to always return true and add manageBackups method 2025-08-28 17:19:09 +02:00
Andras Bacsai
75b61a6b00 feat(domains): add force_domain_override option and enhance domain conflict detection responses 2025-08-28 11:21:30 +02:00
Andras Bacsai
80499a03d8 feat(domains): implement domain conflict detection and user confirmation modal across application components 2025-08-28 10:52:41 +02:00
Andras Bacsai
643343785a refactor(auth): simplify access control logic in CanAccessTerminal and ServerPolicy by allowing all users to perform actions 2025-08-28 10:48:24 +02:00
Andras Bacsai
7fe6a4198d fix(previews): simplify FQDN generation logic by removing unnecessary empty check 2025-08-28 10:11:56 +02:00
Andras Bacsai
e0aa28ba31 refactor(domains): rename check_domain_usage to checkDomainUsage and update references across the application 2025-08-28 10:00:19 +02:00
Andras Bacsai
2e85ce0e0e refactor(urls): replace generateFqdn with generateUrl for consistent URL generation across applications 2025-08-28 09:49:58 +02:00
saurabhraghuvanshii
3c126927d5 enhancement: allow deploy from container image hash 2025-08-28 02:10:14 +05:30
peaklabs-dev
6c560261f2
refactor(git): improve submodule cloning 2025-08-27 17:13:28 +02:00
broesch
c2ff9eae0d
fix(git): submodule update command uses an unsupported option (#6454) 2025-08-27 16:51:08 +02:00
Andras Bacsai
d98b7ab7e0 feat(policies): add EnvironmentVariablePolicy for managing environment variables ( it was missing ) 2025-08-26 21:44:36 +02:00
peaklabs-dev
bc6709e43b
fix(backups): s3 backup upload is failing 2025-08-26 18:12:47 +02:00
Andras Bacsai
a8d565836a refactor(policies): remove Response type hint from update methods in ApplicationPreviewPolicy and DatabasePolicy for improved flexibility 2025-08-26 16:55:59 +02:00
Andras Bacsai
ed93031a39 feat(docker): implement Docker cleanup processing in ScheduledJobManager; refactor server task scheduling to streamline cleanup job dispatching 2025-08-26 14:43:57 +02:00
Andras Bacsai
13397b62cf refactor: update check frequency logic for cloud and self-hosted environments; streamline server task scheduling and timezone handling 2025-08-26 13:51:42 +02:00
Andras Bacsai
63fcc0ebc3 feat(acl): Change views/backend code to able to use proper ACL's later on. Currently it is not enabled. 2025-08-26 10:27:38 +02:00
Andras Bacsai
74ebaef17b feat(api): enhance IP access control in middleware and settings; support CIDR notation and special case for 0.0.0.0 to allow all IPs 2025-08-26 10:27:38 +02:00
Andras Bacsai
83f2e856ec feat(sentinel): implement SentinelRestarted event and update Livewire components to handle server restart notifications 2025-08-26 10:27:38 +02:00
Andras Bacsai
990331cd74 feat(validation): add ValidIpOrCidr rule for validating IP addresses and CIDR notations; update API access settings UI and add comprehensive tests 2025-08-26 10:27:38 +02:00
Andras Bacsai
ae1b0de561 feat(auth): enhance authorization checks in Livewire components for resource management 2025-08-26 10:27:38 +02:00
Andras Bacsai
ae79a98d72 feat(auth): add middleware for resource creation authorization 2025-08-26 10:27:38 +02:00
Andras Bacsai
3e1f47a243 feat(auth): introduce resource creation authorization middleware and policies for enhanced access control 2025-08-26 10:27:38 +02:00
Andras Bacsai
b1334a1bc6 feat(auth): implement comprehensive authorization checks across API controllers 2025-08-23 18:51:10 +02:00
Andras Bacsai
b5fe5dd909 feat(auth): refine authorization checks for S3 storage and service management 2025-08-23 18:50:50 +02:00
Andras Bacsai
adb8f9d88e feat(auth): implement authorization checks for database management 2025-08-23 18:50:35 +02:00
Andras Bacsai
6d02f6a60b feat(auth): add comprehensive authorization checks for all kind of resource creations 2025-08-23 18:47:31 +02:00
Andras Bacsai
b2de69a9ba feat(auth): enhance API error handling for authorization exceptions 2025-08-23 18:45:56 +02:00
Andras Bacsai
6ef16f6170 fix(auth): enhance authorization checks in application management 2025-08-23 18:19:50 +02:00
Andras Bacsai
40f108d6e1 feat(auth): implement authorization checks for application management 2025-08-22 16:47:59 +02:00
Andras Bacsai
37ee6717e9 feat(security): add authorization checks for package updates in Livewire components 2025-08-22 14:43:18 +02:00
Andras Bacsai
8408205955 feat(validation): add custom validation rules for Git repository URLs and branches
- Introduced `ValidGitRepositoryUrl` and `ValidGitBranch` validation rules to ensure safe and valid input for Git repository URLs and branch names.
- Updated relevant Livewire components and API controllers to utilize the new validation rules, enhancing security against command injection and invalid inputs.
- Refactored existing validation logic to improve consistency and maintainability across the application.
2025-08-22 14:38:21 +02:00
Andras Bacsai
6772cfe603 feat(auth): implement authorization for Docker and server management
- Added authorization checks in Livewire components related to Docker and server management to ensure only authorized users can create, update, and manage Docker instances and server settings.
- Introduced new policies for StandaloneDocker and SwarmDocker to define access control rules based on user roles and team associations.
- Updated AuthServiceProvider to register the new policies, enhancing security and access control for Docker functionalities and server management operations.
2025-08-22 14:04:25 +02:00
Andras Bacsai
d8d01e6886 feat(auth): implement authorization for PrivateKey management
- Added authorization checks in the Create and Show Livewire components to ensure only authorized users can create, update, and delete PrivateKey instances.
- Introduced a new PrivateKeyPolicy to define access control rules for viewing, creating, updating, and deleting PrivateKey models based on user roles and team associations.
- Updated AuthServiceProvider to register the new PrivateKeyPolicy, enhancing security and access control for PrivateKey functionalities.
2025-08-22 13:02:20 +02:00
Andras Bacsai
3ffc751f1a feat(auth): implement authorization checks for server updates across multiple components
- Added authorization checks using the `authorize` method in various Livewire components to ensure only authorized users can update server settings.
- Updated `ServerPolicy` to restrict update permissions to admin users and their respective teams.
- Enhanced security and access control for server management functionalities.
2025-08-22 13:02:11 +02:00
Andras Bacsai
0748ef3ee5 refactor(jobs): rename job classes to indicate deprecation status 2025-08-22 12:09:12 +02:00
Andras Bacsai
7d10711a65 fix(servercheck): Properly check server statuses with and without Sentinel 2025-08-22 11:50:56 +02:00
Andras Bacsai
a6fc39e798 feat(git-settings): add support for shallow cloning in application settings
- Introduced a new boolean setting `is_git_shallow_clone_enabled` to the application settings model.
- Updated the `Advanced` component to include a checkbox for enabling shallow cloning.
- Modified the `setGitImportSettings` and `generateGitImportCommands` methods to handle shallow clone logic.
- Created a migration to add the new setting to the database schema.
- Enhanced the deployment process to utilize shallow cloning for improved performance.
2025-08-21 10:16:57 +02:00
Andras Bacsai
ea5b33b923 fix(init): improve error handling for deployment and template pulling processes 2025-08-19 14:22:48 +02:00
Andras Bacsai
5c4a265542 refactor(validation): implement centralized validation patterns across components
- Introduced `ValidationPatterns` class to standardize validation rules and messages for various fields across multiple components.
- Updated components including `General`, `StackForm`, `Create`, and `Show` to utilize the new validation patterns, ensuring consistent validation logic.
- Enhanced error messages for required fields and added regex validation for names and descriptions to improve user feedback.
- Adjusted styling in the `create.blade.php` view for better visual hierarchy.
2025-08-19 14:15:31 +02:00
Andras Bacsai
38c0641734 feat(validation): centralize validation patterns for names and descriptions
- Introduced `ValidationPatterns` class to standardize validation rules and messages for name and description fields across the application.
- Updated various components and models to utilize the new validation patterns, ensuring consistent sanitization and validation logic.
- Replaced the `HasSafeNameAttribute` trait with `HasSafeStringAttribute` to enhance attribute handling and maintain consistency in name sanitization.
- Enhanced the `CleanupNames` command to align with the new validation rules, allowing for a broader range of valid characters in names.
2025-08-19 12:14:48 +02:00
Andras Bacsai
e958b3761d feat(cleanup): add command for sanitizing name fields across models
- Introduced `CleanupNames` command to sanitize name fields by removing invalid characters, ensuring only letters, numbers, spaces, dashes, underscores, and dots are retained.
- Implemented options for dry run, model-specific cleaning, database backup, and forced execution.
- Updated `Init` command to call the new `cleanup:names` command.
- Enhanced project and environment validation to enforce name sanitization rules.
- Added `HasSafeNameAttribute` trait to relevant models for consistent name handling.
2025-08-19 11:04:23 +02:00
Pritam Yadav
f01341bfbf
fix(ui): handle null values in postgres metrics (#6388) 2025-08-18 17:39:30 +02:00
peaklabs-dev
dbed6c270e
feat: generate category for services 2025-08-18 17:28:20 +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
5cfe6464aa fix(database): conditionally set started_at only if the database is running 2025-08-18 12:09:58 +02:00
Andras Bacsai
460198bb05 fix(application): clear Docker Compose specific data when switching away from dockercompose 2025-08-18 11:31:14 +02:00
Andras Bacsai
0e014ce213 fix(service api): separate create and update service functionalities 2025-08-17 19:45:12 +02:00
Andras Bacsai
6b0d995033
Merge branch 'next' into fix/service-update-required-params 2025-08-17 18:43:36 +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
91cc52f81e feat(dev patches): add functionality to send test email with patch data in development mode 2025-08-17 17:58:38 +02:00
Andras Bacsai
73cdbd501c fix(ApplicationPreview): change null check to empty check for fqdn in generate_preview_fqdn method 2025-08-17 15:34:36 +02:00
Andras Bacsai
240f8f33e2
Merge pull request #6367 from nahtnam/v4.x
BUGFIX: Update `ls-remote` logic to pull correct branch
2025-08-17 15:20:27 +02:00
Andras Bacsai
0dada987a2 feat(backup): add disable local backup option and related logic for S3 uploads 2025-08-17 12:34:20 +02:00
Andras Bacsai
5ded100300 feat(api): add endpoints for managing environments in projects, including listing, creating, and deleting environments 2025-08-16 18:27:38 +02:00
Andras Bacsai
a32342d126 feat(api): add create_environment endpoint to ProjectController for environment creation in projects 2025-08-15 20:24:32 +02:00
Manthan Mallikarjun
08e4086bb9
fix(git): use exact refspec in ls-remote to avoid matching similarly named branches (e.g., changeset-release/main). Use refs/heads/<branch> or provider-specific PR refs. 2025-08-13 01:14:47 -07:00
Andras Bacsai
f018d640e5 fix(templates): should generate old SERVICE_FQDN service templates as well 2025-08-12 14:19:17 +02:00
Andras Bacsai
970fd3d9e6 refactor(parsers): streamline domain handling in applicationParser and improve DNS validation logic 2025-08-12 10:07:11 +02:00
Andras Bacsai
c9ddda8ed2 feat(drizzle-gateway): enhance service configuration by adding Master Password field and updating compose file path 2025-08-12 10:07:11 +02:00
Andras Bacsai
a2ef545b6b feat(changelog): implement automated changelog fetching from GitHub and enhance changelog read tracking 2025-08-12 10:07:11 +02:00
Andras Bacsai
39f25573bf refactor(templates): update service template file handling to use dynamic file name from constants 2025-08-12 10:06:19 +02:00
Andras Bacsai
0e7cc988a6 feat(user): add changelog read tracking and unread count method 2025-08-12 10:06:19 +02:00
Andras Bacsai
e8892b3d29 feat(core): finally fqdn is fqdn and url is url. haha 2025-08-12 10:06:19 +02:00
Andras Bacsai
1ddec358a5 feat(input): add autofocus attribute to input component for improved accessibility 2025-08-12 10:06:19 +02:00
Andras Bacsai
a0bc4dac55 fix(application): streamline environment variable updates for Docker Compose services and enhance FQDN generation logic 2025-08-12 10:06:19 +02:00
Andras Bacsai
cc5abc093d fix(container): sort containers alphabetically by name in ExecuteContainerCommand and update filtering in Terminal Index 2025-08-12 10:06:19 +02:00
Andras Bacsai
103a9c2df2 fix(policy): update delete method to check for admin status in S3StoragePolicy 2025-08-12 10:06:19 +02:00
Yanluis Fermin
9b0fd2073a
fix(api): update service upsert to retain name and description values if not set 2025-08-11 12:31:12 -04:00
🏔️ Peak
c404581b25
fix(database): custom postgres configs with SSL (#6352) 2025-08-11 18:22:03 +02:00
Yanluis Fermin
4ff7ab7895
Merge branch 'next' into fix/service-update-required-params 2025-08-11 10:23:30 -04:00
Cynthia Ebert
a40dd8880d
fix(proxy): remove hardcoded port 80/443 checks (#6275) 2025-08-04 22:16:49 +02:00
peaklabs-dev
36961d8ae8
fix(docker): cleanup always running on deletion
- docker cleanup was always running on deletion instead of using the settings set in the deletion modal
2025-08-04 22:14:19 +02:00
peaklabs-dev
279edf696c
chore(docker): remove unused arguments on StopService 2025-08-04 22:12:56 +02:00
peaklabs-dev
daa96c27a7
chore(deletion): rename isDeleteOperation to deleteConnectedNetworks 2025-08-04 22:12:04 +02:00
peaklabs-dev
c551be9be8
chore(core): remove unused argument 2025-08-04 22:11:29 +02:00
🏔️ Peak
2a526c54d5
fix(docker): volumes get delete when stopping a service if Delete Unused Volumes is activated (#6317) 2025-08-04 21:15:56 +02:00
Yanluis Fermin
d3f46e2625
Merge branch 'next' into fix/service-update-required-params 2025-08-04 08:39:35 -04:00
peaklabs-dev
723f14e6f6
fix(git): tracking issue due to case sensitivity 2025-08-03 22:36:38 +02:00
peaklabs-dev
2a1aa5375e
fix(git): tracking issue due to case sensitivity 2025-08-03 22:26:45 +02:00
peaklabs-dev
79fc9927d7
fix(git): tracking issue due to case sensitivity 2025-08-03 22:22:16 +02:00
Yanluis Fermin
ad8f442318
refactor(services): update validation rules to be optional 2025-07-30 15:59:35 -04:00
Andras Bacsai
5ddaf3a61f fix(application): add option to suppress toast notifications when loading compose file 2025-07-18 23:22:24 +02:00
Andras Bacsai
039aa86321 fix(application): update service environment variables when generating domain for Docker Compose 2025-07-18 23:16:12 +02:00
Andras Bacsai
11341d7c2c refactor(jobs): remove logging for ScheduledJobManager and ServerResourceManager start and completion 2025-07-18 23:15:51 +02:00
Andras Bacsai
43ff38d914 feat(terminal): dispatch focus event for terminal after connection and enhance focus handling in JavaScript 2025-07-18 22:39:42 +02:00
Andras Bacsai
90ccaeba51 feat(application): implement environment variable updates for Docker Compose applications, including creation, updating, and deletion of SERVICE_FQDN and SERVICE_URL variables 2025-07-18 20:48:56 +02:00
Andras Bacsai
ef91e43384 feat(container): add updatedSelectedContainer method to connect to non-default containers and update wire:model for improved reactivity 2025-07-18 20:48:56 +02:00
Andras Bacsai
4df349f74d refactor(previews): streamline preview domain generation logic in ApplicationDeploymentJob for improved clarity and maintainability 2025-07-18 20:48:56 +02:00
Rado
00225a9eff
fix(webhooks): exclude webhook routes from CSRF protection (#6200) 2025-07-18 19:04:08 +02:00
peaklabs-dev
a0db5b342f
fix(backups): error message if there is no exception 2025-07-18 15:56:01 +02:00
🏔️ Peak
e5e1bdcd4d
fix(backups): large database backups are not working (#6217) 2025-07-18 15:47:14 +02:00
Andras Bacsai
13f10028db feat(previews): implement soft delete and cleanup for ApplicationPreview, enhancing resource management in DeleteResourceJob 2025-07-14 21:17:40 +02:00
Andras Bacsai
5bdf2e8481 refactor(previews): move preview domain generation logic to ApplicationPreview model for better encapsulation and consistency across webhook handlers 2025-07-14 19:12:57 +02:00
Andras Bacsai
8a107b3c4b fix(previews): refine preview domain generation for Docker Compose applications, ensuring correct method usage based on build pack type 2025-07-14 15:47:16 +02:00
Andras Bacsai
a9e542bc4b fix(previews): enhance domain generation logic for application previews, ensuring unique domains are created when none are set 2025-07-14 15:42:01 +02:00
Andras Bacsai
e5a0cdf3b7 fix(previews): order application previews by pull request ID in descending order 2025-07-14 15:22:02 +02:00
Andras Bacsai
3bb28c29be fix(application): sanitize service names for HTML form binding and ensure original names are stored in docker compose domains 2025-07-14 14:45:01 +02:00
Andras Bacsai
0b84792871 feat(deployment): add pull request filtering and pagination to deployment and backup execution components
fix(ui): make them more stylish yeah
2025-07-13 12:36:53 +02:00
Andras Bacsai
fbe98cfd11 refactor(scheduling): replace deprecated job checks with ScheduledJobManager and ServerResourceManager for improved scheduling efficiency 2025-07-12 14:44:52 +02:00
Andras Bacsai
80fae306e6 feat(scheduling): introduce ScheduledJobManager and ServerResourceManager for enhanced job scheduling and resource management 2025-07-12 14:44:44 +02:00
Andras Bacsai
0f5c988658 fix(horizon): add silenced jobs 2025-07-12 14:44:32 +02:00
Andras Bacsai
316f233eb8 feat(logging): add frequency filters for scheduled logs command to support hourly, daily, weekly, and monthly job views 2025-07-11 19:26:42 +02:00
Andras Bacsai
36fe235bea feat(logging): implement scheduled logs command and enhance backup/task scheduling with cron checks 2025-07-11 15:10:55 +02:00
Andras Bacsai
2214099c90 feat(scheduling): add frequency filter option for manual execution of scheduled jobs 2025-07-11 15:10:43 +02:00
Andras Bacsai
ea0e02d422 feat(scheduling): add command to manually run scheduled database backups and tasks with options for chunking, delays, and dry runs 2025-07-08 21:03:26 +02:00
Andras Bacsai
eb322ce397 fix(database): ensure internal port defaults correctly for unsupported database types in StartDatabaseProxy 2025-07-08 21:03:20 +02:00
Andras Bacsai
ecbfaa9a8a fix(scheduling): change redis cleanup command frequency from hourly to weekly for better resource management 2025-07-08 10:57:09 +02:00
Andras Bacsai
b9ba04c4e1 fix(deployment): update COOLIFY_URL and COOLIFY_FQDN generation to use Spatie URL library for improved accuracy 2025-07-08 10:49:09 +02:00
Andras Bacsai
94f9c54256 fix(deployment): refactor domain parsing and environment variable generation using Spatie URL library 2025-07-08 10:42:34 +02:00
Andras Bacsai
95da765a9e fix(deployment): improve docker-compose domain handling and environment variable generation 2025-07-07 16:07:08 +02:00
Andras Bacsai
6d94aaf0f8 refactor(previews): streamline preview URL generation by utilizing application method 2025-07-07 13:14:45 +02:00
Andras Bacsai
085529dc63 fix(deployment): enhance COOLIFY_URL and COOLIFY_FQDN variable generation for better compatibility 2025-07-07 12:55:35 +02:00
Andras Bacsai
6a90bdf9fa fix(env): Generate literal env variables better 2025-07-07 12:30:44 +02:00
Andras Bacsai
540e8f0c46
Merge pull request #6130 from Nathanjms/next
Typo Correction on modal
2025-07-07 10:31:46 +02:00
Andras Bacsai
9b8da285c0 refactor(database): improve error handling for unsupported database types in StartDatabaseProxy 2025-07-07 10:23:31 +02:00
Andras Bacsai
3b7f4bcbbd refactor(init): standardize method naming conventions and improve command structure in Init.php 2025-07-07 09:50:15 +02:00