processmaker
processmaker copied to clipboard
FOUR-24651: Enable and disable custom packages / enterprise packages per tenant
Issue & Reproduction Steps
Solution
- add a new command
- Ensures the boot() method only executes tenant-specific logic if the tenant has the required feature enabled.
- Maintains best practices for Laravel service providers and package bootstrapping.
- create command
php artisan tenants:artisan "processmaker:license-update ./enterprise.json" --tenant=77
How to Test
- have two tenants
- run
php artisan tenants:artisan "processmaker:license-update ./enterprise.json" --tenant=<first tenant ID> - run
php artisan tenants:artisan "processmaker:license-update ./enterprise2.json" --tenant=<second tenant ID> - review the tenant and mas contain the packages licensed
Related Tickets & Packages
- https://processmaker.atlassian.net/browse/FOUR-24651
Code Review Checklist
- [ ] I have pulled this code locally and tested it on my instance, along with any associated packages.
- [ ] This code adheres to ProcessMaker Coding Guidelines.
- [ ] This code includes a unit test or an E2E test that tests its functionality, or is covered by an existing test.
- [ ] This solution fixes the bug reported in the original ticket.
- [ ] This solution does not alter the expected output of a component in a way that would break existing Processes.
- [ ] This solution does not implement any breaking changes that would invalidate documentation or cause existing Processes to fail.
- [ ] This solution has been tested with enterprise packages that rely on its functionality and does not introduce bugs in those packages.
- [ ] This code does not duplicate functionality that already exists in the framework or in ProcessMaker.
- [ ] This ticket conforms to the PRD associated with this part of ProcessMaker.
Quality Gate passed
Issues
0 New issues
0 Accepted issues
Measures
0 Security Hotspots
No data about Coverage
No data about Duplication