Skip to content

Latest commit

 

History

History
82 lines (59 loc) · 2.7 KB

File metadata and controls

82 lines (59 loc) · 2.7 KB

MyAdmin CloudLinux Licensing Plugin

Tests Latest Stable Version Total Downloads License

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.

Features

  • 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

Supported License Types

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

Requirements

  • PHP >= 5.3.0
  • ext-curl
  • detain/cloudlinux-licensing (CloudLinux API client)
  • symfony/event-dispatcher ^5.0

Installation

composer require detain/myadmin-cloudlinux-licensing

Configuration

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

Usage

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);
}

Running Tests

composer install
vendor/bin/phpunit

To generate a coverage report:

vendor/bin/phpunit --coverage-text

License

This package is licensed under the LGPL-2.1-only license.