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
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
cef3d3af5d
feat(proxy): enhance proxy configuration regeneration by extracting custom commands
...
- Added a new function to extract custom proxy commands from existing Traefik configurations before regenerating the proxy configuration.
- Updated the proxy configuration generation logic to include these custom commands, ensuring they are preserved during regeneration.
- Introduced unit tests to validate the extraction of custom commands and handle various scenarios, including invalid YAML and different proxy types.
2025-10-07 11:11:13 +02:00
Andras Bacsai
590de8ce37
feat(docker): enhance Docker image handling with new validation and parsing logic
...
- Refactored DockerImage component to use separate properties for image name, tag, and SHA256 digest.
- Introduced DockerImageFormat validation rule to enforce correct image format.
- Updated DockerImageParser to handle new parsing logic for image tags and SHA256 hashes.
- Enhanced UI to separate input fields for image name, tag, and SHA256 digest, improving user experience.
- Added comprehensive tests for DockerImageParser to ensure accurate parsing and validation of image formats.
2025-10-03 11:31:00 +02:00
Andras Bacsai
0e02eff4a1
Merge branch 'v4.x' into allow-dep
2025-10-03 10:57:10 +02:00
Andras Bacsai
aadde3a83e
feat(deployments): enhance Docker build argument handling for multiline variables
...
- Introduced new helper functions to generate Docker build arguments and environment flags, accommodating multiline variables with proper escaping.
- Updated the ApplicationDeploymentJob to utilize these new functions, improving the handling of environment variables during deployment.
- Added comprehensive tests to ensure correct behavior for multiline variables and special characters.
2025-10-02 13:54:36 +02:00
Andras Bacsai
502dd72a34
fix(validation): update git:// URL validation to support port numbers and tilde characters in paths
2025-09-29 12:21:15 +02:00
Andras Bacsai
810ba3dd9e
feat(validation): enhance ValidGitRepositoryUrl to support additional safe characters and add comprehensive unit tests for various Git repository URL formats
2025-09-28 22:18:21 +02:00
Andras Bacsai
320a7c97f9
refactor(tests): simplify matchWatchPaths tests and update implementation for better clarity
2025-09-26 14:33:18 +02:00
Andras Bacsai
0691a1834a
feat(application): implement order-based pattern matching for watch paths with negation support
2025-09-25 14:26:11 +02:00
Andras Bacsai
38e5e85344
Merge pull request #6598 from ossamalafhel/feature/watch-paths-for-services
...
feat: 👀 Show Watch Paths field for Docker Compose applicationsFeature/watch paths for services
2025-09-25 13:17:29 +02:00
Andras Bacsai
1f691e274b
Merge branch 'v4.x' into feature/watch-paths-for-services
2025-09-25 12:11:01 +02:00
Andras Bacsai
47b060e291
refactor(ui): improve styling and consistency in environment variable warning and docker cleanup components
2025-09-25 11:45:07 +02:00
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
Ossama Lafhel
5247185933
feat(add-watch-paths-for-services): show watch paths field for docker compose applications
...
- Fix UI template to display Watch Paths for all GitHub-based applications
- Remove condition that limited Watch Paths to private repositories only
- Add comprehensive unit tests for isWatchPathsTriggered() method
- Test various pattern matching scenarios (wildcards, globs, etc.)
- Watch Paths now works for Docker Compose apps with both public and private repos
2025-09-13 05:40:07 +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
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
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
saurabhraghuvanshii
3c126927d5
enhancement: allow deploy from container image hash
2025-08-28 02:10:14 +05:30
Andras Bacsai
cde528bf5e
fix(parsers): enhance volume string handling by preserving mode in application and service parsers. Update related unit tests for validation.
2025-08-27 16:54:49 +02:00
Andras Bacsai
5fbad08e45
fix(parsers): implement parseDockerVolumeString function to handle various Docker volume formats and modes, including environment variables and Windows paths. Add unit tests for comprehensive coverage.
2025-08-27 16:39: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
42bdc2a5fd
refactor(docker compose): remove deprecated newParser function and associated test file to streamline codebase
2025-08-17 18:03:00 +02:00
Andras Bacsai
8e8400f595
feat(utf8-handling): implement UTF-8 sanitization for command outputs and enhance error handling in logs processing
2025-06-05 14:27:39 +02:00
Andras Bacsai
c97415a8ef
chore(tests): update test environment database name and add new feature test for converting container environment variables to array
2025-05-22 14:30:16 +02:00
Andras Bacsai
78ef80f800
refactor
2025-04-23 13:22:01 +02:00
Andras Bacsai
e4648bcf9c
feat(docker): add HTTP Basic Authentication support and enhance hostname parsing in Docker run conversion
2025-04-23 11:57:26 +02:00
Andras Bacsai
8520beff51
refactor(docker): remove debug statement and enhance hostname handling in Docker run conversion
2025-04-23 11:21:37 +02: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
Andras Bacsai
57f61d4589
fix: docker image parser
2025-01-20 13:59:02 +01:00
Andras Bacsai
15ac12e131
test: setup database for upcoming tests
2024-12-04 12:43:52 +01:00
Andras Bacsai
327b4308d4
fix: add tests for git url converts
2024-11-12 11:32:18 +01:00
Andras Bacsai
47cd8f9e13
fix: for --gpus device support
2024-11-06 12:26:05 +01:00
Andras Bacsai
ff6f089483
feat: add --gpu support for custom docker command
2024-11-06 10:13:40 +01:00
Andras Bacsai
2eef8ee433
add dusk tests
2024-10-28 22:57:56 +01:00
Lucas Michot
d557a22b91
Remove all ray() calls
2024-10-28 13:51:23 +01:00
Andras Bacsai
3835dc3fd7
Refactor DuskTestCase.php to use a hardcoded base URL
2024-10-17 21:26:06 +02:00
Andras Bacsai
cbff462a5a
Refactor Chrome Driver port in browser-tests.yml and DuskTestCase.php
2024-10-17 21:20:55 +02:00
Andras Bacsai
8bb021e62a
Refactor DuskTestCase to support headless Chrome and maximize window size
2024-10-17 21:18:37 +02:00
Andras Bacsai
becaf92fd8
test dusk gh
2024-10-17 21:15:48 +02:00
Andras Bacsai
b38e214f23
Merge branch 'next' into tests/LoginPageTest
2024-10-17 16:28:46 +02:00
Andras Bacsai
e6566d8be3
fix: new parser with SERVICE_URL_ envs
2024-10-10 11:46:41 +02:00
Andras Bacsai
ee74abb3eb
Merge branch 'next' into tests/LoginPageTest
2024-09-12 20:21:40 +02:00
Andras Bacsai
1d72f76072
fix: appwrite template + parser
2024-09-09 15:04:51 +02:00
ALsJourney
38d4e4a035
Added a HowTo Markdown on how to run tests
2024-09-08 21:41:56 +02:00
Andras Bacsai
8b3eed5895
chore: Update version to 4.0.0-beta.332
2024-09-07 20:56:56 +02:00
ALsJourney
cddd4b59f9
Added a basic login test and also added 2 small variables to dev .env file
...
Small test just to see if you wish to continue this way of me writing tests in this shape and form. you can run them locally with php artisan dusk:chrome-driver --detect, run it with ./vendor/laravel/dusk/bin/chromedriver-mac-arm --port=9515 then run tests with php artisan dusk
2024-09-06 14:16:40 +02:00
Andras Bacsai
b57e2960f2
fix: parser
2024-09-06 12:05:22 +02:00
Andras Bacsai
a32e53c5a3
feat: Update Docker Compose file with DB_URL environment variable
2024-09-06 10:02:44 +02:00
Andras Bacsai
8150b6fdaf
fix: check if array is associative or not
2024-09-03 17:04:56 +02:00
Andras Bacsai
cfc6518157
refactor: Update parse method in Advanced, All, ApplicationPreview, General, and ApplicationDeploymentJob classes
2024-08-29 12:39:37 +02:00
Andras Bacsai
d27b1766e6
feat: Add Code Server environment variables to Service model
2024-08-29 10:44:16 +02:00
Andras Bacsai
5525c02c7f
fix: delete preview deployments + cleanup stucked
...
fix: parser
2024-08-28 22:05:49 +02:00
Andras Bacsai
43f2f1ef2b
fix: if compose file has more that 6 components, force stop
...
fix: parser
2024-08-28 15:45:11 +02:00
Andras Bacsai
954d82207d
MORE PARSERS
2024-08-27 21:48:25 +02:00
Andras Bacsai
d8d821e7a9
parser parser
2024-08-27 16:02:52 +02:00
Andras Bacsai
fe89269b4b
rename parser functions
2024-08-23 20:57:22 +02:00
Andras Bacsai
dfa30bbb7f
more tests
2024-08-23 17:37:15 +02:00
Andras Bacsai
9d5556aea2
test: more tests
2024-08-23 17:33:06 +02:00
Andras Bacsai
6fbdfee3e7
refactor: Update dockerComposeParser to use YAML data from $yaml instead of $compose
2024-08-23 14:31:16 +02:00
Andras Bacsai
af1b479d73
fix: parser
...
ui: storage layout changed
2024-08-23 14:21:12 +02:00
Andras Bacsai
1e24ab9146
fix: parser parser parser
2024-08-22 15:05:04 +02:00
Andras Bacsai
ecb2c3b7b8
chore: new compose parser with tests
2024-08-21 20:32:02 +02:00
Andras Bacsai
3ebb35a5cd
fix: remove lemon + paddle things
2024-06-25 13:54:58 +02:00
Thijmen
d86274cc37
Fix styling
2024-06-10 20:43:34 +00:00
Andras Bacsai
c7da43f50d
feat: add static ipv4 ipv6 support
2024-02-25 23:13:27 +01:00
Andras Bacsai
8a0046c571
update packages + fix tests
2024-02-14 09:21:25 +01:00
Andras Bacsai
364a6aa3a2
fix: boolean docker options
2024-02-14 08:42:47 +01:00
Andras Bacsai
798d747164
add Docker run command parse test
2024-02-09 13:38:17 +01:00
Andras Bacsai
829e41f93f
Delete TeamSharedVariablesIndexTest.php
2024-01-26 11:12:07 +01:00
Andras Bacsai
fb478c79b3
feat: shared environments
2024-01-23 17:13:23 +01:00
Andras Bacsai
f0abdcc2da
okay, now it is way better
2023-09-27 12:45:53 +02:00
Andras Bacsai
291b9a84ef
refactoring
2023-08-29 14:36:17 +02:00
Andras Bacsai
82a01b4483
format muhahaha
2023-08-11 20:48:52 +02:00
Andras Bacsai
f2228cec7b
testing php storm code cleanup and styling
2023-08-08 11:51:36 +02:00
Andras Bacsai
167379b0e0
fix
2023-05-24 15:25:08 +02:00
Andras Bacsai
6e7ee0ca48
a ton 👷♂️
2023-05-24 14:26:50 +02:00
Joao Patricio
e7763f3b73
Refactor for CoolifyTask.
2023-05-03 06:15:45 +01:00
Andras Bacsai
02edfaf54b
fix: tests
2023-04-12 13:39:26 +02:00
Joao Patricio
e6f0059e5e
Changes output to JSON serialization.
2023-04-07 15:58:45 +01:00
Joao Patricio
27172740e9
Adds Dusk and Gitpod
2023-04-03 09:31:04 +01:00
Joao Patricio
940cb3c000
Have the output Marker and markTidyer.
2023-04-01 20:50:57 +01:00
Joao Patricio
a642cc2470
Cleans up tests.
2023-03-31 17:54:55 +01:00
Joao Patricio
2d25d3848c
Merge remote-tracking branch 'origin/v4' into ijpatricio-wip-4
...
# Conflicts:
# bootstrap/helpers.php
# docker/dev/supervisord.conf
2023-03-31 10:56:46 +01:00
Joao Patricio
ae0bb7727b
wip
2023-03-30 20:32:48 +01:00
Joao Patricio
04626eb1ee
wip
2023-03-30 20:26:53 +01:00
Joao Patricio
a852a15dab
wip
2023-03-30 20:24:43 +01:00
Andras Bacsai
da2f657342
wip
2023-03-30 15:52:19 +02:00
Joao Patricio
eb6dc9615c
Merge branch 'v4' into ijpatricio-wip-4
...
# Conflicts:
# tests/Feature/DockerCommandsTest.php
2023-03-30 10:17:40 +01:00
Joao Patricio
e2f527fc7b
wip
2023-03-30 09:04:44 +01:00
Andras Bacsai
78c4344583
feat: add deployments as activity
...
fix: tests
refactor: remoteProcess
2023-03-29 12:27:02 +02:00
Joao Patricio
29fb40bd16
Refactoring: extract process handling from async job.
2023-03-21 10:32:38 +00:00
Joao Patricio
cf121062a1
Refactoring: extract process handling from async job.
2023-03-21 09:56:49 +00:00
Joao Patricio
d0d33da493
Refactoring: extract process handling from async job.
2023-03-21 09:31:16 +00:00
Joao Patricio
e74c464857
Refactoring: extract process handling from async job.
2023-03-21 09:08:36 +00:00
Joao Patricio
97cd5ed537
Converts unit test to Pest. Outlines GH Action
2023-03-20 21:24:53 +00:00
Joao Patricio
d7c7494007
Adds Pest tests. Starts GH Action.
2023-03-20 21:17:28 +00:00
Andras Bacsai
edd1719431
init of v4 🌮
2023-03-17 15:33:48 +01:00