Deploy Ladill QR Plus / deploy (push) Successful in 28s
Full control center for ticketed events, contributions, attendees, badges, and programmes — not a QR utility clone. Includes SSO shell, import command, and platform cutover runbook. Co-authored-by: Cursor <cursoragent@cursor.com>
704 lines
28 KiB
PHP
704 lines
28 KiB
PHP
<?php
|
||
|
||
return [
|
||
/*
|
||
|--------------------------------------------------------------------------
|
||
| Contabo API Configuration
|
||
|--------------------------------------------------------------------------
|
||
|
|
||
| Credentials for the Contabo Compute Management API.
|
||
| Used for provisioning VPS and VDS instances.
|
||
|
|
||
*/
|
||
'contabo' => [
|
||
'client_id' => env('CONTABO_CLIENT_ID'),
|
||
'client_secret' => env('CONTABO_CLIENT_SECRET'),
|
||
'api_user' => env('CONTABO_API_USER'),
|
||
'api_password' => env('CONTABO_API_PASSWORD'),
|
||
'product_catalog_endpoint' => env('CONTABO_PRODUCT_CATALOG_ENDPOINT'),
|
||
],
|
||
|
||
/*
|
||
|--------------------------------------------------------------------------
|
||
| Pricing Configuration
|
||
|--------------------------------------------------------------------------
|
||
|
|
||
| Dynamic pricing settings for VPS/Dedicated servers.
|
||
| Base prices from Contabo are in USD, converted to GHS using exchange rate.
|
||
|
|
||
*/
|
||
'pricing' => [
|
||
'base_currency' => 'USD',
|
||
'display_currency' => 'GHS',
|
||
|
||
// Fallback rate used when live API fails
|
||
'fallback_usd_to_ghs_rate' => env('FALLBACK_USD_TO_GHS_RATE', 15.50),
|
||
|
||
// Profit margins (percentage on top of converted Contabo USD price)
|
||
'margins' => [
|
||
'vps' => env('VPS_PROFIT_MARGIN', 45),
|
||
'dedicated' => env('DEDICATED_PROFIT_MARGIN', 30),
|
||
],
|
||
|
||
'contabo_price_cache_ttl' => env('CONTABO_PRICE_CACHE_TTL', 3600),
|
||
|
||
'term_discounts' => [
|
||
'quarterly' => 5,
|
||
'semiannual' => 10,
|
||
'yearly' => 20,
|
||
],
|
||
|
||
'setup_fee_rules' => [
|
||
// VPS 10 only — monthly and semiannual cycles carry a setup fee equal to 1× the monthly price
|
||
[
|
||
'product_ids' => ['V91'],
|
||
'billing_cycles' => ['monthly', 'semiannual'],
|
||
'monthly_price_multiplier' => 1,
|
||
'label' => 'One-time setup fee',
|
||
],
|
||
// Dedicated servers — fixed EUR fee that decreases with longer commitment; waived on yearly
|
||
[
|
||
'product_ids' => ['amd-ryzen-12-cores', 'amd-genoa-24-cores'],
|
||
'billing_cycles' => ['monthly', 'quarterly', 'semiannual'],
|
||
'fixed_eur_by_cycle' => [
|
||
'monthly' => 39.99,
|
||
'quarterly' => 29.99,
|
||
'semiannual' => 19.99,
|
||
],
|
||
'label' => 'One-time setup fee',
|
||
],
|
||
],
|
||
|
||
// Fallback Contabo base prices in USD. Live API/feed prices are preferred.
|
||
// Keep these values as a fail-safe for API downtime.
|
||
'contabo_base_prices' => [
|
||
'V91' => ['monthly' => 4.99, 'name' => 'Cloud VPS 10 NVMe', 'cpu' => 3, 'ram_gb' => 8, 'disk_gb' => 75],
|
||
'V94' => ['monthly' => 7.00, 'name' => 'Cloud VPS 20 NVMe', 'cpu' => 6, 'ram_gb' => 12, 'disk_gb' => 100],
|
||
'V97' => ['monthly' => 14.00, 'name' => 'Cloud VPS 30 NVMe', 'cpu' => 8, 'ram_gb' => 24, 'disk_gb' => 200],
|
||
'V100' => ['monthly' => 25.00, 'name' => 'Cloud VPS 40 NVMe', 'cpu' => 12, 'ram_gb' => 48, 'disk_gb' => 250],
|
||
'amd-ryzen-12-cores' => ['monthly' => 104.64, 'name' => 'AMD Ryzen 12 Cores', 'cpu' => 12, 'ram_gb' => 64, 'disk_gb' => 1000],
|
||
'amd-genoa-24-cores' => ['monthly' => 184.21, 'name' => 'AMD Genoa 24 Cores', 'cpu' => 24, 'ram_gb' => 128, 'disk_gb' => 2000],
|
||
],
|
||
],
|
||
|
||
/*
|
||
|--------------------------------------------------------------------------
|
||
| Server Order Options
|
||
|--------------------------------------------------------------------------
|
||
|
|
||
| Surcharges shown here are Contabo-side monthly USD add-on costs before
|
||
| the Ladill exchange-rate conversion and product margin are applied.
|
||
| Update these values whenever Contabo changes its commercial pricing.
|
||
|
|
||
*/
|
||
'server_order' => [
|
||
'regions' => [
|
||
'EU' => ['label' => 'Europe (Germany)', 'monthly_usd' => 0.00, 'automated' => true],
|
||
'US-central' => ['label' => 'US Central', 'monthly_usd' => 0.00, 'automated' => true],
|
||
'US-east' => ['label' => 'US East', 'monthly_usd' => 0.00, 'automated' => true],
|
||
'US-west' => ['label' => 'US West', 'monthly_usd' => 0.00, 'automated' => true],
|
||
'UK' => ['label' => 'United Kingdom', 'monthly_usd' => 0.00, 'automated' => true],
|
||
'SIN' => ['label' => 'Singapore', 'monthly_usd' => 0.00, 'automated' => true],
|
||
'AUS' => ['label' => 'Australia', 'monthly_usd' => 0.00, 'automated' => true],
|
||
'JPN' => ['label' => 'Japan', 'monthly_usd' => 0.00, 'automated' => true],
|
||
],
|
||
'image_pricing_rules' => [
|
||
[
|
||
'key' => 'windows',
|
||
'label' => 'Windows Server',
|
||
'monthly_usd' => 9.30,
|
||
'match' => ['windows'],
|
||
'os_family' => 'windows',
|
||
'default_user' => 'administrator',
|
||
'requires_custom_image_addon' => false,
|
||
'automated' => true,
|
||
],
|
||
[
|
||
'key' => 'ubuntu',
|
||
'label' => 'Ubuntu',
|
||
'monthly_usd' => 0.00,
|
||
'match' => ['ubuntu'],
|
||
'os_family' => 'linux',
|
||
'default_user' => 'root',
|
||
'requires_custom_image_addon' => false,
|
||
'automated' => true,
|
||
],
|
||
[
|
||
'key' => 'rhel',
|
||
'label' => 'RHEL Variants',
|
||
'monthly_usd' => 0.00,
|
||
'match' => ['alma', 'rocky', 'rhel', 'centos'],
|
||
'os_family' => 'linux',
|
||
'default_user' => 'root',
|
||
'requires_custom_image_addon' => false,
|
||
'automated' => true,
|
||
],
|
||
[
|
||
'key' => 'custom',
|
||
'label' => 'Custom Images',
|
||
'monthly_usd' => 0.00,
|
||
'custom_image' => true,
|
||
'os_family' => 'linux',
|
||
'default_user' => 'root',
|
||
'requires_custom_image_addon' => true,
|
||
'automated' => true,
|
||
],
|
||
[
|
||
'key' => 'linux',
|
||
'label' => 'Linux',
|
||
'monthly_usd' => 0.00,
|
||
'match' => ['debian', 'fedora', 'linux', 'bsd'],
|
||
'os_family' => 'linux',
|
||
'default_user' => 'root',
|
||
'requires_custom_image_addon' => false,
|
||
'automated' => true,
|
||
],
|
||
],
|
||
'fallback_images' => [
|
||
[
|
||
'value' => 'afecbb85-e2fc-46f0-9684-b46b1faf00bb',
|
||
'label' => 'Ubuntu 22.04',
|
||
'description' => 'Fallback Ubuntu image',
|
||
'os_family' => 'linux',
|
||
'monthly_usd' => 0.00,
|
||
'default_user' => 'root',
|
||
'requires_custom_image_addon' => false,
|
||
'automated' => true,
|
||
],
|
||
],
|
||
'managed_stack_supported_images' => [
|
||
[
|
||
'value' => 'afecbb85-e2fc-46f0-9684-b46b1faf00bb',
|
||
'label' => 'Ubuntu 22.04 LTS',
|
||
'match' => ['ubuntu 22.04'],
|
||
'os_family' => 'linux',
|
||
],
|
||
[
|
||
'label' => 'Ubuntu 24.04 LTS',
|
||
'match' => ['ubuntu 24.04'],
|
||
'os_family' => 'linux',
|
||
],
|
||
[
|
||
'label' => 'Debian 12',
|
||
'match' => ['debian 12', 'bookworm'],
|
||
'os_family' => 'linux',
|
||
],
|
||
[
|
||
'label' => 'AlmaLinux',
|
||
'match' => ['almalinux', 'alma linux', 'alma'],
|
||
'os_family' => 'linux',
|
||
],
|
||
[
|
||
'label' => 'Rocky Linux',
|
||
'match' => ['rocky linux', 'rocky'],
|
||
'os_family' => 'linux',
|
||
],
|
||
[
|
||
'label' => 'Fedora',
|
||
'match' => ['fedora'],
|
||
'os_family' => 'linux',
|
||
],
|
||
[
|
||
'label' => 'openSUSE Leap',
|
||
'match' => ['opensuse leap', 'open suse leap', 'opensuse', 'leap'],
|
||
'os_family' => 'linux',
|
||
],
|
||
[
|
||
'label' => 'CentOS',
|
||
'match' => ['centos'],
|
||
'os_family' => 'linux',
|
||
],
|
||
],
|
||
'licenses' => [
|
||
'none' => [
|
||
'label' => 'Remote Login Only',
|
||
'description' => 'No hosting panel or commercial control-panel license.',
|
||
'monthly_usd' => 0.00,
|
||
'license' => null,
|
||
'panel' => null,
|
||
'automated' => true,
|
||
],
|
||
'ladill_panel' => [
|
||
'label' => 'Ladill Server Manager',
|
||
'description' => 'Manage power, status, and server details from the Ladill server manager.',
|
||
'monthly_usd' => 0.00,
|
||
'license' => null,
|
||
'panel' => 'ladill',
|
||
'compatible_os_families' => ['linux'],
|
||
'requires_image' => true,
|
||
'requires_managed_stack_image' => true,
|
||
'automated' => true,
|
||
],
|
||
'plesk_host' => [
|
||
'label' => 'Plesk + Linux',
|
||
'description' => 'Plesk host edition on Linux.',
|
||
'monthly_usd' => 15.00,
|
||
'license' => 'PleskHost',
|
||
'compatible_os_families' => ['linux'],
|
||
'requires_image' => true,
|
||
'automated' => true,
|
||
],
|
||
'plesk_windows' => [
|
||
'label' => 'Plesk + Windows',
|
||
'description' => 'Plesk on Windows Server.',
|
||
'monthly_usd' => 22.70,
|
||
'license' => 'PleskHost',
|
||
'compatible_os_families' => ['windows'],
|
||
'requires_image' => true,
|
||
'automated' => true,
|
||
],
|
||
'cpanel_5' => [
|
||
'label' => 'cPanel 5',
|
||
'description' => 'cPanel license for up to 5 accounts.',
|
||
'monthly_usd' => 35.99,
|
||
'license' => 'cPanel5',
|
||
'compatible_os_families' => ['linux'],
|
||
'requires_image' => true,
|
||
'automated' => true,
|
||
],
|
||
'cpanel_30' => [
|
||
'label' => 'cPanel 30',
|
||
'description' => 'cPanel license for up to 30 accounts.',
|
||
'monthly_usd' => 53.99,
|
||
'license' => 'cPanel30',
|
||
'compatible_os_families' => ['linux'],
|
||
'requires_image' => true,
|
||
'automated' => true,
|
||
],
|
||
'cpanel_50' => [
|
||
'label' => 'cPanel 50',
|
||
'description' => 'cPanel license for up to 50 accounts.',
|
||
'monthly_usd' => 53.99 + (0.49 * 20),
|
||
'license' => 'cPanel50',
|
||
'compatible_os_families' => ['linux'],
|
||
'requires_image' => true,
|
||
'automated' => true,
|
||
],
|
||
'cpanel_100' => [
|
||
'label' => 'cPanel 100',
|
||
'description' => 'cPanel license for up to 100 accounts.',
|
||
'monthly_usd' => 69.99,
|
||
'license' => 'cPanel100',
|
||
'compatible_os_families' => ['linux'],
|
||
'requires_image' => true,
|
||
'automated' => true,
|
||
],
|
||
'cpanel_150' => [
|
||
'label' => 'cPanel 150',
|
||
'description' => 'cPanel license for up to 150 accounts.',
|
||
'monthly_usd' => 69.99 + (0.49 * 50),
|
||
'license' => 'cPanel150',
|
||
'compatible_os_families' => ['linux'],
|
||
'requires_image' => true,
|
||
'automated' => true,
|
||
],
|
||
'cpanel_200' => [
|
||
'label' => 'cPanel 200',
|
||
'description' => 'cPanel license for up to 200 accounts.',
|
||
'monthly_usd' => 69.99 + (0.49 * 100),
|
||
'license' => 'cPanel200',
|
||
'compatible_os_families' => ['linux'],
|
||
'requires_image' => true,
|
||
'automated' => true,
|
||
],
|
||
'cpanel_250' => [
|
||
'label' => 'cPanel 250',
|
||
'description' => 'cPanel license for up to 250 accounts.',
|
||
'monthly_usd' => 69.99 + (0.49 * 150),
|
||
'license' => 'cPanel250',
|
||
'compatible_os_families' => ['linux'],
|
||
'requires_image' => true,
|
||
'automated' => true,
|
||
],
|
||
'cpanel_300' => [
|
||
'label' => 'cPanel 300',
|
||
'description' => 'cPanel license for up to 300 accounts.',
|
||
'monthly_usd' => 69.99 + (0.49 * 200),
|
||
'license' => 'cPanel300',
|
||
'compatible_os_families' => ['linux'],
|
||
'requires_image' => true,
|
||
'automated' => true,
|
||
],
|
||
'cpanel_350' => [
|
||
'label' => 'cPanel 350',
|
||
'description' => 'cPanel license for up to 350 accounts.',
|
||
'monthly_usd' => 69.99 + (0.49 * 250),
|
||
'license' => 'cPanel350',
|
||
'compatible_os_families' => ['linux'],
|
||
'requires_image' => true,
|
||
'automated' => true,
|
||
],
|
||
'cpanel_400' => [
|
||
'label' => 'cPanel 400',
|
||
'description' => 'cPanel license for up to 400 accounts.',
|
||
'monthly_usd' => 69.99 + (0.49 * 300),
|
||
'license' => 'cPanel400',
|
||
'compatible_os_families' => ['linux'],
|
||
'requires_image' => true,
|
||
'automated' => true,
|
||
],
|
||
'cpanel_450' => [
|
||
'label' => 'cPanel 450',
|
||
'description' => 'cPanel license for up to 450 accounts.',
|
||
'monthly_usd' => 69.99 + (0.49 * 350),
|
||
'license' => 'cPanel450',
|
||
'compatible_os_families' => ['linux'],
|
||
'requires_image' => true,
|
||
'automated' => true,
|
||
],
|
||
'cpanel_500' => [
|
||
'label' => 'cPanel 500',
|
||
'description' => 'cPanel license for up to 500 accounts.',
|
||
'monthly_usd' => 69.99 + (0.49 * 400),
|
||
'license' => 'cPanel500',
|
||
'compatible_os_families' => ['linux'],
|
||
'requires_image' => true,
|
||
'automated' => true,
|
||
],
|
||
'cpanel_550' => [
|
||
'label' => 'cPanel 550',
|
||
'description' => 'cPanel license for up to 550 accounts.',
|
||
'monthly_usd' => 69.99 + (0.49 * 450),
|
||
'license' => 'cPanel550',
|
||
'compatible_os_families' => ['linux'],
|
||
'requires_image' => true,
|
||
'automated' => true,
|
||
],
|
||
'cpanel_600' => [
|
||
'label' => 'cPanel 600',
|
||
'description' => 'cPanel license for up to 600 accounts.',
|
||
'monthly_usd' => 69.99 + (0.49 * 500),
|
||
'license' => 'cPanel600',
|
||
'compatible_os_families' => ['linux'],
|
||
'requires_image' => true,
|
||
'automated' => true,
|
||
],
|
||
'cpanel_650' => [
|
||
'label' => 'cPanel 650',
|
||
'description' => 'cPanel license for up to 650 accounts.',
|
||
'monthly_usd' => 69.99 + (0.49 * 550),
|
||
'license' => 'cPanel650',
|
||
'compatible_os_families' => ['linux'],
|
||
'requires_image' => true,
|
||
'automated' => true,
|
||
],
|
||
'cpanel_700' => [
|
||
'label' => 'cPanel 700',
|
||
'description' => 'cPanel license for up to 700 accounts.',
|
||
'monthly_usd' => 69.99 + (0.49 * 600),
|
||
'license' => 'cPanel700',
|
||
'compatible_os_families' => ['linux'],
|
||
'requires_image' => true,
|
||
'automated' => true,
|
||
],
|
||
'cpanel_750' => [
|
||
'label' => 'cPanel 750',
|
||
'description' => 'cPanel license for up to 750 accounts.',
|
||
'monthly_usd' => 69.99 + (0.49 * 650),
|
||
'license' => 'cPanel750',
|
||
'compatible_os_families' => ['linux'],
|
||
'requires_image' => true,
|
||
'automated' => true,
|
||
],
|
||
'cpanel_800' => [
|
||
'label' => 'cPanel 800',
|
||
'description' => 'cPanel license for up to 800 accounts.',
|
||
'monthly_usd' => 69.99 + (0.49 * 700),
|
||
'license' => 'cPanel800',
|
||
'compatible_os_families' => ['linux'],
|
||
'requires_image' => true,
|
||
'automated' => true,
|
||
],
|
||
'cpanel_850' => [
|
||
'label' => 'cPanel 850',
|
||
'description' => 'cPanel license for up to 850 accounts.',
|
||
'monthly_usd' => 69.99 + (0.49 * 750),
|
||
'license' => 'cPanel850',
|
||
'compatible_os_families' => ['linux'],
|
||
'requires_image' => true,
|
||
'automated' => true,
|
||
],
|
||
'cpanel_900' => [
|
||
'label' => 'cPanel 900',
|
||
'description' => 'cPanel license for up to 900 accounts.',
|
||
'monthly_usd' => 69.99 + (0.49 * 800),
|
||
'license' => 'cPanel900',
|
||
'compatible_os_families' => ['linux'],
|
||
'requires_image' => true,
|
||
'automated' => true,
|
||
],
|
||
'cpanel_950' => [
|
||
'label' => 'cPanel 950',
|
||
'description' => 'cPanel license for up to 950 accounts.',
|
||
'monthly_usd' => 69.99 + (0.49 * 850),
|
||
'license' => 'cPanel950',
|
||
'compatible_os_families' => ['linux'],
|
||
'requires_image' => true,
|
||
'automated' => true,
|
||
],
|
||
'cpanel_1000' => [
|
||
'label' => 'cPanel 1000',
|
||
'description' => 'cPanel license for up to 1000 accounts.',
|
||
'monthly_usd' => 69.99 + (0.49 * 900),
|
||
'license' => 'cPanel1000',
|
||
'compatible_os_families' => ['linux'],
|
||
'requires_image' => true,
|
||
'automated' => true,
|
||
],
|
||
],
|
||
'applications' => [
|
||
'none' => [
|
||
'label' => 'No Preinstalled App',
|
||
'description' => 'Provision the server without an extra preinstalled application.',
|
||
'monthly_usd' => 0.00,
|
||
'automated' => true,
|
||
],
|
||
'webmin' => [
|
||
'label' => 'Webmin',
|
||
'description' => 'Free Webmin server panel installed automatically on Linux.',
|
||
'monthly_usd' => 0.00,
|
||
'cloud_init_preset' => 'webmin',
|
||
'compatible_os_families' => ['linux'],
|
||
'requires_image' => true,
|
||
'automated' => true,
|
||
],
|
||
'webmin_lamp' => [
|
||
'label' => 'Webmin + LAMP',
|
||
'description' => 'Free Webmin plus Apache, MariaDB, and PHP on Linux.',
|
||
'monthly_usd' => 0.00,
|
||
'cloud_init_preset' => 'webmin_lamp',
|
||
'compatible_os_families' => ['linux'],
|
||
'requires_image' => true,
|
||
'automated' => true,
|
||
],
|
||
'ipfs_node' => [
|
||
'label' => 'IPFS Node',
|
||
'description' => 'Contabo application profile for IPFS nodes.',
|
||
'monthly_usd' => 0.00,
|
||
'application_id' => env('CONTABO_APP_ID_IPFS_NODE'),
|
||
'compatible_os_families' => ['linux'],
|
||
'requires_image' => true,
|
||
'automated' => true,
|
||
],
|
||
'flux_node' => [
|
||
'label' => 'Flux Node',
|
||
'description' => 'Contabo application profile for Flux nodes.',
|
||
'monthly_usd' => 0.00,
|
||
'application_id' => env('CONTABO_APP_ID_FLUX_NODE'),
|
||
'compatible_os_families' => ['linux'],
|
||
'requires_image' => true,
|
||
'automated' => true,
|
||
],
|
||
'horizon_node' => [
|
||
'label' => 'Horizen Node',
|
||
'description' => 'Contabo application profile for Horizen nodes.',
|
||
'monthly_usd' => 0.00,
|
||
'application_id' => env('CONTABO_APP_ID_HORIZON_NODE'),
|
||
'compatible_os_families' => ['linux'],
|
||
'requires_image' => true,
|
||
'automated' => true,
|
||
],
|
||
'ethereum_node' => [
|
||
'label' => 'Ethereum Node',
|
||
'description' => 'Contabo application profile for Ethereum 2.0 nodes.',
|
||
'monthly_usd' => 0.00,
|
||
'application_id' => null,
|
||
'compatible_os_families' => ['linux'],
|
||
'requires_image' => true,
|
||
'automated' => true,
|
||
],
|
||
'bitcoin_node' => [
|
||
'label' => 'Bitcoin Full Node',
|
||
'description' => 'Contabo application profile for Bitcoin full nodes.',
|
||
'monthly_usd' => 0.00,
|
||
'application_id' => null,
|
||
'compatible_os_families' => ['linux'],
|
||
'requires_image' => true,
|
||
'automated' => true,
|
||
],
|
||
],
|
||
'additional_ip' => [
|
||
'none' => [
|
||
'label' => '1 IP Address',
|
||
'description' => 'Default primary IP only.',
|
||
'monthly_usd' => 0.00,
|
||
'add_on' => null,
|
||
'automated' => true,
|
||
],
|
||
'one_extra' => [
|
||
'label' => '1 Additional IP',
|
||
'description' => 'Adds one extra IPv4 address.',
|
||
'monthly_usd' => 4.50,
|
||
'add_on' => 'additionalIps',
|
||
'automated' => true,
|
||
],
|
||
],
|
||
'private_networking' => [
|
||
'disabled' => [
|
||
'label' => 'No Private Networking',
|
||
'description' => 'Do not enable the private networking add-on.',
|
||
'monthly_usd' => 0.00,
|
||
'add_on' => null,
|
||
'automated' => true,
|
||
],
|
||
'enabled' => [
|
||
'label' => 'Private Networking Enabled',
|
||
'description' => 'Purchases the private networking add-on.',
|
||
'monthly_usd' => 2.99,
|
||
'add_on' => 'privateNetworking',
|
||
'automated' => true,
|
||
],
|
||
],
|
||
'storage_types' => [
|
||
'included' => [
|
||
'label' => 'Included Storage',
|
||
'description' => 'Use the plan default storage.',
|
||
'monthly_usd' => 0.00,
|
||
'add_on' => null,
|
||
'automated' => true,
|
||
],
|
||
'ssd_300' => [
|
||
'label' => '300 GB SSD',
|
||
'description' => 'Higher SSD storage tier.',
|
||
'monthly_usd' => 1.95,
|
||
'add_on' => 'extraStorage',
|
||
'automated' => false,
|
||
],
|
||
'nvme_150' => [
|
||
'label' => '150 GB NVMe',
|
||
'description' => 'Higher NVMe storage tier.',
|
||
'monthly_usd' => 2.30,
|
||
'add_on' => 'extraStorage',
|
||
'automated' => false,
|
||
],
|
||
],
|
||
'object_storage' => [
|
||
'none' => [
|
||
'label' => 'No Object Storage',
|
||
'description' => 'Do not order object storage with this server.',
|
||
'monthly_usd' => 0.00,
|
||
'automated' => false,
|
||
],
|
||
'eu_250' => [
|
||
'label' => '250 GB Object Storage (EU)',
|
||
'description' => 'S3-compatible object storage in the European Union.',
|
||
'monthly_usd' => 2.99,
|
||
'automated' => false,
|
||
],
|
||
'eu_500' => [
|
||
'label' => '500 GB Object Storage (EU)',
|
||
'description' => 'S3-compatible object storage in the European Union.',
|
||
'monthly_usd' => 5.98,
|
||
'automated' => false,
|
||
],
|
||
'eu_750' => [
|
||
'label' => '750 GB Object Storage (EU)',
|
||
'description' => 'S3-compatible object storage in the European Union.',
|
||
'monthly_usd' => 8.97,
|
||
'automated' => false,
|
||
],
|
||
'eu_1024' => [
|
||
'label' => '1 TB Object Storage (EU)',
|
||
'description' => 'S3-compatible object storage in the European Union.',
|
||
'monthly_usd' => 11.96,
|
||
'automated' => false,
|
||
],
|
||
],
|
||
'linux_default_users' => [
|
||
'root' => ['label' => 'root'],
|
||
'admin' => ['label' => 'admin'],
|
||
],
|
||
'windows_default_users' => [
|
||
'admin' => ['label' => 'admin'],
|
||
'administrator' => ['label' => 'administrator'],
|
||
],
|
||
],
|
||
|
||
'server_agent' => [
|
||
'release_version' => env('SERVER_AGENT_RELEASE_VERSION', '0.2.0'),
|
||
'signed_release_ttl_minutes' => (int) env('SERVER_AGENT_SIGNED_RELEASE_TTL_MINUTES', 10080),
|
||
'heartbeat_interval_seconds' => 15,
|
||
],
|
||
|
||
/*
|
||
|--------------------------------------------------------------------------
|
||
| Shared Hosting Configuration
|
||
|--------------------------------------------------------------------------
|
||
|
|
||
| Settings for the shared hosting nodes.
|
||
|
|
||
*/
|
||
'shared' => [
|
||
'default_php_version' => '8.2',
|
||
'available_php_versions' => ['8.0', '8.1', '8.2', '8.3'],
|
||
'default_document_root' => 'public_html',
|
||
'max_upload_size_mb' => 64,
|
||
'max_execution_time' => 300,
|
||
'memory_limit_mb' => 256,
|
||
'phpmyadmin_url' => env('HOSTING_PHPMYADMIN_URL', ''),
|
||
'phpmyadmin_sso_secret' => env('HOSTING_PHPMYADMIN_SSO_SECRET', ''),
|
||
],
|
||
|
||
/*
|
||
|--------------------------------------------------------------------------
|
||
| VPS Configuration
|
||
|--------------------------------------------------------------------------
|
||
|
|
||
| Default settings for VPS instances.
|
||
|
|
||
*/
|
||
'vps' => [
|
||
'default_region' => 'EU',
|
||
'default_image' => 'afecbb85-e2fc-46f0-9684-b46b1faf00bb', // Ubuntu 22.04
|
||
'available_regions' => ['EU', 'US-central', 'US-east', 'US-west', 'SIN', 'UK', 'AUS', 'JPN'],
|
||
],
|
||
|
||
/*
|
||
|--------------------------------------------------------------------------
|
||
| App Installer Configuration
|
||
|--------------------------------------------------------------------------
|
||
|
|
||
| Settings for the one-click app installer.
|
||
|
|
||
*/
|
||
'apps' => [
|
||
'enabled' => ['wordpress', 'joomla', 'drupal', 'opencart'],
|
||
'magento_enabled' => false, // Requires higher resource plans
|
||
'wordpress' => [
|
||
'default_version' => '6.4',
|
||
'wp_cli_path' => '/usr/local/bin/wp',
|
||
],
|
||
],
|
||
|
||
/*
|
||
|--------------------------------------------------------------------------
|
||
| Provisioning Settings
|
||
|--------------------------------------------------------------------------
|
||
|
|
||
| General provisioning configuration.
|
||
|
|
||
*/
|
||
'provisioning' => [
|
||
'max_retries' => 3,
|
||
'retry_delay_minutes' => 5,
|
||
'timeout_minutes' => 30,
|
||
],
|
||
|
||
/*
|
||
|--------------------------------------------------------------------------
|
||
| Legacy ResellerClub Integration
|
||
|--------------------------------------------------------------------------
|
||
|
|
||
| Keep RC integration active for existing customers.
|
||
|
|
||
*/
|
||
'legacy' => [
|
||
// Keep RC data/API available for customers with existing ResellerClub services.
|
||
'rc_enabled' => (bool) env('LADILL_RC_LEGACY_ENABLED', true),
|
||
// New sales and automated fulfillment use Ladill (Dynadot domains, native hosting).
|
||
'rc_new_orders_enabled' => (bool) env('LADILL_RC_NEW_ORDERS_ENABLED', false),
|
||
// Renew existing ResellerClub services (hosting, domains, VPS, etc.).
|
||
'rc_renewals_enabled' => (bool) env('LADILL_RC_RENEWALS_ENABLED', true),
|
||
],
|
||
];
|