A MyAdmin plugin for managing CloudLinux, KernelCare, and Imunify360 license provisioning. This package integrates with the MyAdmin panel plugin system using Symfony EventDispatcher to handle license activation, deactivation, IP changes, and listing through the CloudLinux XML-RPC API.
- Automated provisioning of CloudLinux, KernelCare, and Imunify360 licenses
- License activation and deactivation with IP address management
- IP address change support with automatic license migration
- Admin-only license listing interface
- Out-of-stock control via settings
- Email notifications for failed deactivations
| Product | Type ID |
|---|---|
| CloudLinux License | 1 |
| KernelCare License | 16 |
| ImunityAV+ | 40 |
| Imunity360 Single User | 41 |
| Imunity360 Up to 30 Users | 42 |
| Imunity360 Up to 250 Users | 43 |
| Imunity360 Unlimited Users | 49 |
- PHP >= 5.3.0
- ext-curl
detain/cloudlinux-licensing(CloudLinux API client)symfony/event-dispatcher^5.0
composer require detain/myadmin-cloudlinux-licensing
The plugin requires the following constants to be defined in your application:
define('CLOUDLINUX_LOGIN', 'your-login'); define('CLOUDLINUX_KEY', 'your-api-key'); define('OUTOFSTOCK_LICENSES_CLOUDLINUX', 0); // 0 = in stock, 1 = out of stock
Register the plugin hooks with your Symfony EventDispatcher instance:
use Detain\MyAdminCloudlinux\Plugin; $hooks = Plugin::getHooks(); foreach ($hooks as $event => $handler) { $dispatcher->addListener($event, $handler); }
composer install vendor/bin/phpunit
To generate a coverage report:
vendor/bin/phpunit --coverage-text
This package is licensed under the LGPL-2.1-only license.