Andras Bacsai
61f47cc7ee
feat(deployments): support Docker image tags for preview deployments
...
Add end-to-end support for `docker_registry_image_tag` in preview and deployment queue flows.
- Extend deploy API to accept `pull_request_id` alias and `docker_tag` for preview deploys
- Persist preview-specific Docker tags on `application_previews` and `application_deployment_queues`
- Pass tag through `queue_application_deployment()` and de-duplicate queued jobs by tag
- Update deployment job logic to resolve and use preview Docker tags for dockerimage build packs
- Update Livewire previews UI/state to manage per-preview tags and manual preview/tag inputs
- Add migration for new tag columns and model fillable/casts updates
- Add feature and unit tests covering API behavior and tag resolution
2026-03-30 13:35:35 +02:00
Andras Bacsai
1da1f32f0e
refactor: use forceCreate() for internal model creation
...
Replace create() with forceCreate() across internal model creation operations to bypass mass assignment protection. This is appropriate for internal code that constructs complete model state without user input.
Add InternalModelCreationMassAssignmentTest to ensure internal model creation behavior is properly tested. Optimize imports by using shortened Livewire attribute references and removing unused imports.
2026-03-30 13:04:11 +02:00
Andras Bacsai
6d16f52143
Add deployment queue limit to prevent queue bombing
...
- Add configurable deployment_queue_limit server setting (default: 25)
- Check queue size before accepting new deployments
- Return 429 status for webhooks/API when queue is full (allows retry)
- Show error toast in UI when queue limit reached
- Add UI control in Server Advanced settings
Fixes #6708
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 13:52:27 +01:00
ShadowArcanist
9620455be0
Merge branch 'next' into shadow/fix-docker-time-command
2025-10-17 18:52:40 +05:30
Andras Bacsai
f77ad4cbd9
Complete Livewire legacy model binding migration (25+ components)
...
This completes the migration from Livewire's legacy `id="model.property"`
pattern to explicit properties with manual synchronization. This allows
disabling the `legacy_model_binding` feature flag.
**Components Migrated (Final Session - 9 components):**
- Server/Proxy.php (1 field)
- Service/EditDomain.php (1 field) - Fixed Collection/string bug & parent sync
- Application/Previews.php (2 fields - array handling)
- Service/EditCompose.php (4 fields)
- Service/FileStorage.php (6 fields)
- Service/Database.php (7 fields)
- Service/ServiceApplicationView.php (10 fields)
- Application/General.php (53 fields) - LARGEST migration
- Application/PreviewsCompose.php (1 field)
**Total Migration Summary:**
- 25+ components migrated across all phases
- 150+ explicit properties added
- 0 legacy bindings remaining (verified via grep)
- All wire:model, id, @entangle bindings updated
- All updater hooks renamed (updatedApplicationX → updatedX)
**Technical Changes:**
- Added explicit public properties (camelCase)
- Implemented syncData(bool $toModel) bidirectional sync
- Updated validation rules (removed model. prefix)
- Updated all action methods (mount, submit, instantSave)
- Fixed updater hooks: updatedBuildPack, updatedBaseDirectory, updatedIsStatic
- Updated Blade views (id & wire:model bindings)
- Applied Collection/string confusion fixes
- Added model refresh + re-sync pattern
**Critical Fixes:**
- EditDomain.php Collection/string confusion (use intermediate variables)
- EditDomain.php parent component sync (refresh + re-sync after save)
- General.php domain field empty (syncData at end of mount)
- General.php wire:model bindings (application.* → property)
- General.php updater hooks (wrong naming convention)
**Files Modified:** 34 files
- 17 PHP Livewire components
- 17 Blade view templates
- 1 MIGRATION_REPORT.md (documentation)
**Ready to disable legacy_model_binding flag in config/livewire.php**
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-13 15:38:59 +02:00
ShadowArcanist
b39690dfa2
Changed docker --time command to -t since --time is deprecated on v28
2025-10-09 13:26:10 +05:30
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
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
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
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
40f108d6e1
feat(auth): implement authorization checks for application management
2025-08-22 16:47:59 +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
6d94aaf0f8
refactor(previews): streamline preview URL generation by utilizing application method
2025-07-07 13:14:45 +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
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
e062edb689
refactor(core): streamline container stopping process and reduce timeout duration; update related methods for consistency
2025-04-30 15:28:59 +02:00
Andras Bacsai
d075241289
feat(Deployment): enhance queue_application_deployment to handle existing deployments and return appropriate status messages
2025-04-11 15:27:56 +02: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
peaklabs-dev
277fd78769
new uuid routes
2024-11-22 16:03:20 +01:00
Lucas Michot
702ee5cd70
Prefer Carbon methods when possible.
2024-10-31 16:47:08 +01:00
Andras Bacsai
b570ccd7d3
format
2024-09-23 19:51:31 +02:00
Andras Bacsai
5ec45d547a
Merge branch 'next' into fix-#2546-deletion-issues
2024-09-18 18:05:06 +02:00
ayntk-ai
fc3c69f687
Feat: more conformations and fixes
2024-09-05 17:54:32 +02:00
Andras Bacsai
4a64374bb3
fix: preview fqdn generation
2024-08-29 12:50:04 +02:00
andrasbacsai
96c4f5b8da
Fix styling
2024-07-25 11:31:59 +00:00
Andras Bacsai
6a4aa492c0
fix: random generated uuid will be full length (not 7 characters)
2024-07-25 13:31:01 +02:00
Andras Bacsai
fcb3d71cb4
feat: add high priority queue
2024-06-20 14:52:12 +02:00
andrasbacsai
2e01665340
Fix styling
2024-06-12 10:21:47 +00:00
Andras Bacsai
019cdd2b3a
fix: compose generator
2024-06-12 12:20:58 +02:00
Thijmen
d86274cc37
Fix styling
2024-06-10 20:43:34 +00:00
Andras Bacsai
7fd0deedb1
feat: able to add several domains to compose based previews
2024-06-05 15:14:44 +02:00
Andras Bacsai
68d3cea528
fix: multiple server deployments
...
feat: custom preview deployment fqdn
ui: improvements here and there
2024-05-30 12:28:29 +02:00
Andras Bacsai
561e424a7d
feat: dashboard live deployment view
2024-01-27 18:44:40 +01:00
Andras Bacsai
e7cafe6850
fix: restrict concurrent deployments per server
2024-01-25 08:36:47 +01:00
Andras Bacsai
381e24bea5
fix: git pull command for deploy key based previews
2024-01-16 15:45:19 +01:00
Andras Bacsai
4c3907c296
refactor routes
2024-01-07 16:23:41 +01:00
Andras Bacsai
f03aa57758
fix: routing, switch back to old one
2023-12-27 16:45:01 +01:00
Andras Bacsai
62c38c9859
wip: swarm
2023-12-18 14:01:25 +01:00
Andras Bacsai
f934dfef33
wip livewire migration
2023-12-07 22:56:55 +01:00
Andras Bacsai
718603e37e
wip: migrate to livewire 3
2023-12-07 19:06:32 +01:00