Andras Bacsai
25a7be23a9
ui(storage): enhance file storage management with new properties and UI improvements
...
- Added properties to manage file and directory counts, improving data handling in the Livewire component.
- Updated the file storage view to include a tabbed interface for volumes, files, and directories, enhancing user navigation.
- Improved UI layout for better readability and user experience, including consistent styling and informative messages.
2025-10-01 08:23:21 +02:00
Andras Bacsai
1fe7df7e38
fix(git): trim whitespace from repository, branch, and commit SHA fields
...
- Add automatic trimming in Application model's boot method for git_repository, git_branch, and git_commit_sha fields
- Add real-time trimming in Source Livewire component via updated{Property} methods
- Refresh component state after save to ensure UI displays trimmed values
- Prevents deployment issues caused by accidental whitespace in git configuration
2025-09-30 12:33:40 +02:00
Andras Bacsai
8e7c869d23
fix(git): handle additional repository URL cases for 'tangled' and improve branch assignment logic
2025-09-30 12:22:57 +02:00
Andras Bacsai
a03c1b3b4b
refactor(dashboard): remove deployment loading logic and introduce DeploymentsIndicator component for better UI management
2025-09-30 11:43:30 +02:00
ShadowArcanist
dc2929e1f7
Added info toast to let the user know to restart the app after enabling healthcheck
...
It only let the user know to restart if healthcheck is enabling while the app is in running state
2025-09-29 10:37:27 +05:30
ShadowArcanist
48ccfa3124
Added confirmation modal for enabling healtcheck + replaced enable checkbox with a button
2025-09-29 10:07:47 +05:30
Andras Bacsai
eac1a9f21b
fix(github): update repository URL to point to the v4.x branch for development
2025-09-25 17:31:16 +02:00
Andras Bacsai
708a08fdd6
fix(application): enhance domain handling by replacing both dots and dashes with underscores for HTML form binding
2025-09-25 13:19:12 +02:00
Andras Bacsai
4ce495d91e
Update app/Livewire/Project/Application/PreviewsCompose.php
...
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2025-09-24 17:53:18 +02:00
Michael Engel
8ee4ddf489
fix(PreviewCompose): adds port to preview urls
2025-09-24 10:52:01 +02:00
Andras Bacsai
b1abdcee83
feat(environment-variables): implement environment variable analysis for build-time issues
...
- Added EnvironmentVariableAnalyzer trait to analyze and warn about problematic environment variables during the build process.
- Integrated analysis into ApplicationDeploymentJob and Livewire components to provide feedback on potential build issues.
- Introduced a new Blade component for displaying warnings related to environment variables in the UI.
2025-09-23 08:53:14 +02:00
Andras Bacsai
36dfd1bc6e
refactor(github): enhance API request handling and validation
...
- Updated validation rules for 'custom_user' and 'custom_port' fields to be nullable in the GithubController.
- Refactored API request handling in GithubController, GithubPrivateRepository, and helper functions to use a consistent Http::GitHub method with timeout and retry logic.
- Improved error handling for repository and branch loading processes.
2025-09-22 15:41:56 +02:00
Andras Bacsai
4fc62ea33f
Merge pull request #6496 from QarthO/fix/url-validation
...
fix(domains) url validation silently fails with surrounding whitespace
2025-09-22 12:49:43 +02:00
Andras Bacsai
b1ad24eecf
Merge pull request #6657 from ShadowArcanist/shadow/metrics-visual-improvements
...
chore(ui): improve sentinel metrics
2025-09-22 09:46:26 +02:00
Andras Bacsai
4f71d14d39
feat(event): introduce ApplicationConfigurationChanged event to handle team-specific configuration updates and broadcast changes
...
feat(envs): Generate hash from secrets to invalidate docker layers
2025-09-22 09:44:30 +02:00
ShadowArcanist
ee9cf076c3
Removed debug logging for metrics
2025-09-19 23:28:25 +05:30
ShadowArcanist
0ef0247e14
Improved metrics graph tooltip to show usage in a better way and added timestamp to the tooltip
2025-09-19 22:40:08 +05:30
Andras Bacsai
f33df13c4e
feat(environment): replace is_buildtime_only with is_runtime and is_buildtime flags for environment variables, updating related logic and views
2025-09-18 18:14:54 +02:00
Andras Bacsai
074c70c8ab
fix(clone): update destinations method call to ensure correct retrieval of selected destination
2025-09-18 13:44:56 +02:00
Andras Bacsai
c1bee32f09
feat(deployment): introduce 'use_build_secrets' setting for enhanced security during Docker builds and update related logic in deployment process
2025-09-17 10:34:38 +02: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
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
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
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
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
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
0db2835565
fix(application): add functionality to stop and remove Docker containers on server
2025-09-11 12:39:28 +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
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
a7671ed379
refactor(dns-validation): rename DNS validation functions for consistency and clarity, and remove unused code
2025-09-09 09:00:35 +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
339118558c
feat(settings): add option to restrict PR deployments to repository members and contributors
2025-09-05 14:30:51 +02:00
QarthO
bfc8a25b72
move domain trimming before URL validation
2025-08-29 09:09:03 -04: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
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
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
ae1b0de561
feat(auth): enhance authorization checks in Livewire components for resource management
2025-08-26 10:27:38 +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
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
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
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
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
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
0dada987a2
feat(backup): add disable local backup option and related logic for S3 uploads
2025-08-17 12:34:20 +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
e8892b3d29
feat(core): finally fqdn is fqdn and url is url. haha
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
peaklabs-dev
279edf696c
chore(docker): remove unused arguments on StopService
2025-08-04 22:12:56 +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
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
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
🏔️ 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
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
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
6d94aaf0f8
refactor(previews): streamline preview URL generation by utilizing application method
2025-07-07 13:14:45 +02:00
Nathan James
4d2910e740
Merge branch 'coollabsio:next' into next
2025-07-04 16:07:31 +01:00
Nathan James
4c4b115008
Correct Typo: 'form' -> 'from'
2025-07-04 16:06:53 +01:00
Andras Bacsai
ca62f8dacc
refactor(terminal): simplify command construction for SSH execution
2025-07-03 15:48:59 +02:00
Andras Bacsai
13a9816770
fix(service): ensure configuration changes are properly tracked and dispatched
2025-07-03 15:08:13 +02:00
Hicro
43bcfe8d02
fix: removing eager loading ( #6071 )
...
since the destionations relationship is not really needed, we could
remove it and avoid the issue with the missing eager constraint.
Co-authored-by: Andras Bacsai <5845193+andrasbacsai@users.noreply.github.com>
2025-07-01 11:10:47 +02:00
Andras Bacsai
a1ec86f433
fix(terminal): ensure shell execution only uses valid shell if available in terminal command
2025-07-01 10:37:34 +02:00
Andras Bacsai
8fc79022f3
feat(service): enhance service status handling and UI updates
2025-06-24 12:52:22 +02:00
Andras Bacsai
3643a388bf
fix(github): changing github app breaks the webhook. it does not anymore
2025-06-21 19:28:38 +02:00
Andras Bacsai
f7daddce58
refactor(ui): terminal
2025-06-17 09:28:07 +02:00
Andras Bacsai
87225405a8
refactor(clone-project): enhance server retrieval by including destinations and filtering out build servers
2025-06-16 13:15:40 +02:00
Andras Bacsai
d1d899c0cf
refactor(execute-container-command): simplify connection logic and improve terminal availability checks
2025-06-14 13:56:48 +02:00
Andras Bacsai
64dd648b3f
fix(terminal): now it should work
2025-06-14 13:00:16 +02:00
Andras Bacsai
581151bb11
refactor(resource-operations): filter out build servers from the server list and clean up commented-out code in the resource operations view
2025-06-13 16:49:27 +02:00
Andras Bacsai
d47d2f14f7
refactor(logs): remove unused methods and debug functionality from Logs.php for cleaner code
2025-06-10 10:48:08 +02:00
Andras Bacsai
8e70b2907f
fix(terminal-connection): improve error handling and stability for auto-connection; enhance component readiness checks and retry logic
2025-06-06 21:40:52 +02:00
Andras Bacsai
7df6890920
refactor(terminal-connection): streamline auto-connection logic and improve component readiness checks
2025-06-06 21:34:27 +02:00
Andras Bacsai
ba970d909c
feat(terminal-connection): enhance terminal connection handling with auto-connect feature and improved status messaging
2025-06-06 21:15:50 +02:00
Andras Bacsai
4c887a3126
fix(database-heading): simplify stop database message for clarity
2025-06-05 13:33:02 +02:00
Andras Bacsai
618a7d459c
refactor(logs): enhance container loading logic and improve UI for logs display across various resource types
2025-06-05 13:24:26 +02:00
Andras Bacsai
908c587ea1
refactor(docker-compose): replace hardcoded Docker Compose configuration with external YAML template for improved database detection testing
2025-06-04 11:32:06 +02:00
Andras Bacsai
1704a25a24
fix(previews): escape container names in stopContainers method to prevent shell injection vulnerabilities
2025-06-04 09:11:08 +02:00
Andras Bacsai
32a14b0050
fix(select-component): handle exceptions during parameter retrieval and environment selection in the mount method
2025-06-02 13:02:01 +02:00
Andras Bacsai
ff20cb0b7c
fix(application-configuration): prevent access to preview deployments for deploy_key applications and update menu visibility accordingly
2025-05-30 14:15:07 +02:00
Andras Bacsai
b0e33eb59d
fix(application-management): improve stop messages for application, database, and service to enhance clarity and formatting
2025-05-30 14:04:43 +02:00
Andras Bacsai
200b5cd4fb
refactor(service-management): enhance container stopping logic by implementing parallel processing and removing deprecated methods
2025-05-30 12:56:22 +02:00
Andras Bacsai
9f06e7193e
feat(previews): add force deploy without cache functionality and update deploy method to accept force rebuild parameter
2025-05-30 10:09:13 +02:00
Andras Bacsai
9480fc2b2f
refactor(environment-variables): remove debug logging from bulk submit handling for cleaner code
2025-05-30 09:11:40 +02:00
Andras Bacsai
05a03c44d3
refactor(terminal): enhance terminal connection management and error handling, including improved reconnection logic and cleanup procedures
2025-05-29 14:36:13 +02:00