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-licensingThe 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 stockRegister 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/phpunitTo generate a coverage report:
vendor/bin/phpunit --coverage-textThis package is licensed under the LGPL-2.1-only license.