Deploy Ladill Hosting / deploy (push) Failing after 17s
Shared web hosting extracted from the platform monolith, with CI deploy to /var/www/ladill-hosting matching Bird/Domains/Email. Co-authored-by: Cursor <cursoragent@cursor.com>
281 lines
12 KiB
PHP
281 lines
12 KiB
PHP
<?php
|
||
|
||
namespace Database\Seeders;
|
||
|
||
use App\Models\HostingProduct;
|
||
use Illuminate\Database\Seeder;
|
||
|
||
class HostingProductSeeder extends Seeder
|
||
{
|
||
public function run(): void
|
||
{
|
||
$products = [
|
||
// ============================================
|
||
// SINGLE DOMAIN HOSTING
|
||
// Perfect for individuals & small business websites
|
||
// ============================================
|
||
[
|
||
'name' => 'Starter Plan',
|
||
'slug' => 'starter-plan',
|
||
'description' => 'Entry-level single-domain hosting with 8 GB SSD storage, unmetered bandwidth, 2 free email accounts, free SSL + CDN, LiteSpeed servers, AI Website Builder, Softaculous installer, weekly backups, 3 FTP users, and 3 MySQL databases.',
|
||
'category' => 'shared',
|
||
'type' => 'single_domain',
|
||
'price_monthly' => 1.00,
|
||
'price_yearly' => 12.00, // 1 × 12
|
||
'currency' => 'GHS',
|
||
'disk_gb' => 8,
|
||
'bandwidth_gb' => null, // Unmetered
|
||
'max_domains' => 1,
|
||
'max_databases' => 3,
|
||
'max_email_accounts' => 2,
|
||
'max_ftp_accounts' => 3,
|
||
'ssl_included' => true,
|
||
'backups_included' => true,
|
||
'backup_retention_days' => 7, // Weekly backups
|
||
'features' => [
|
||
'LiteSpeed servers',
|
||
'AI Website Builder',
|
||
'Softaculous installer',
|
||
'Free SSL',
|
||
'Free CDN',
|
||
'Weekly backups',
|
||
],
|
||
'is_active' => true,
|
||
'is_featured' => false,
|
||
'sort_order' => 1,
|
||
],
|
||
[
|
||
'name' => 'Basic Plan',
|
||
'slug' => 'basic-plan',
|
||
'description' => 'Perfect for individuals & small business websites. Includes 15 GB SSD storage, unmetered bandwidth, 8 free email accounts, free SSL + CDN, LiteSpeed servers, AI Website Builder, Softaculous installer, weekly backups, 15 FTP users, and 15 MySQL databases.',
|
||
'category' => 'shared',
|
||
'type' => 'single_domain',
|
||
'price_monthly' => 25.00,
|
||
'price_yearly' => 300.00, // 25 × 12
|
||
'currency' => 'GHS',
|
||
'disk_gb' => 15,
|
||
'bandwidth_gb' => null, // Unmetered
|
||
'max_domains' => 1,
|
||
'max_databases' => 15,
|
||
'max_email_accounts' => 8,
|
||
'max_ftp_accounts' => 15,
|
||
'ssl_included' => true,
|
||
'backups_included' => true,
|
||
'backup_retention_days' => 7, // Weekly backups
|
||
'features' => [
|
||
'LiteSpeed servers',
|
||
'AI Website Builder',
|
||
'Softaculous installer',
|
||
'Free SSL',
|
||
'Free CDN',
|
||
'Weekly backups',
|
||
],
|
||
'is_active' => true,
|
||
'is_featured' => false,
|
||
'sort_order' => 2,
|
||
],
|
||
[
|
||
'name' => 'Plus Plan',
|
||
'slug' => 'plus-plan',
|
||
'description' => 'Enhanced single-domain hosting with 30 GB SSD storage, unmetered bandwidth, 15 free email accounts, free SSL + CDN, LiteSpeed servers, AI Website Builder + WordPress AI, Softaculous installer, twice-weekly backups, SSH access, 30 FTP users, and 30 MySQL databases.',
|
||
'category' => 'shared',
|
||
'type' => 'single_domain',
|
||
'price_monthly' => 35.00,
|
||
'price_yearly' => 420.00, // 35 × 12
|
||
'currency' => 'GHS',
|
||
'disk_gb' => 30,
|
||
'bandwidth_gb' => null, // Unmetered
|
||
'max_domains' => 1,
|
||
'max_databases' => 30,
|
||
'max_email_accounts' => 15,
|
||
'max_ftp_accounts' => 30,
|
||
'ssl_included' => true,
|
||
'backups_included' => true,
|
||
'backup_retention_days' => 4, // Twice-weekly backups
|
||
'features' => [
|
||
'LiteSpeed servers',
|
||
'AI Website Builder',
|
||
'WordPress AI',
|
||
'Softaculous installer',
|
||
'Free SSL',
|
||
'Free CDN',
|
||
'Twice-weekly backups',
|
||
'SSH access',
|
||
],
|
||
'is_active' => true,
|
||
'is_featured' => true,
|
||
'sort_order' => 3,
|
||
],
|
||
|
||
// ============================================
|
||
// MULTI-DOMAIN HOSTING
|
||
// For businesses managing multiple websites
|
||
// ============================================
|
||
[
|
||
'name' => 'Growth Plan',
|
||
'slug' => 'growth-plan',
|
||
'description' => 'For businesses managing multiple websites. Host up to 8 websites with 45 GB SSD storage, unmetered bandwidth, 23 free email accounts, free SSL + CDN, LiteSpeed servers, AI tools + Site builders, Softaculous installer, daily backups, SSH access, 75 FTP users, and 75 MySQL databases.',
|
||
'category' => 'shared',
|
||
'type' => 'multi_domain',
|
||
'price_monthly' => 55.00,
|
||
'price_yearly' => 660.00, // 55 × 12
|
||
'currency' => 'GHS',
|
||
'disk_gb' => 45,
|
||
'bandwidth_gb' => null, // Unmetered
|
||
'max_domains' => 8,
|
||
'max_databases' => 75,
|
||
'max_email_accounts' => 23,
|
||
'max_ftp_accounts' => 75,
|
||
'ssl_included' => true,
|
||
'backups_included' => true,
|
||
'backup_retention_days' => 7, // Daily backups
|
||
'features' => [
|
||
'LiteSpeed servers',
|
||
'AI tools',
|
||
'Site builders',
|
||
'Softaculous installer',
|
||
'Free SSL',
|
||
'Free CDN',
|
||
'Daily backups',
|
||
'SSH access',
|
||
],
|
||
'is_active' => true,
|
||
'is_featured' => true,
|
||
'sort_order' => 4,
|
||
],
|
||
[
|
||
'name' => 'Pro Plan',
|
||
'slug' => 'pro-plan',
|
||
'description' => 'Unlimited websites with 225 GB SSD storage and unmetered bandwidth, 38 free email accounts, free SSL + CDN, LiteSpeed servers, AI tools + Site builders, Softaculous installer, daily backups, SSH access, unlimited FTP users, and unlimited MySQL databases.',
|
||
'category' => 'shared',
|
||
'type' => 'multi_domain',
|
||
'price_monthly' => 175.00,
|
||
'price_yearly' => 2100.00, // 175 × 12
|
||
'currency' => 'GHS',
|
||
'disk_gb' => 225,
|
||
'bandwidth_gb' => null, // Unmetered
|
||
'max_domains' => -1, // Unlimited
|
||
'max_databases' => -1, // Unlimited
|
||
'max_email_accounts' => 38,
|
||
'max_ftp_accounts' => -1, // Unlimited
|
||
'ssl_included' => true,
|
||
'backups_included' => true,
|
||
'backup_retention_days' => 7, // Daily backups
|
||
'features' => [
|
||
'LiteSpeed servers',
|
||
'AI tools',
|
||
'Site builders',
|
||
'Softaculous installer',
|
||
'Free SSL',
|
||
'Free CDN',
|
||
'Daily backups',
|
||
'SSH access',
|
||
'Unlimited websites',
|
||
'Unlimited FTP users',
|
||
'Unlimited MySQL databases',
|
||
],
|
||
'is_active' => true,
|
||
'is_featured' => false,
|
||
'sort_order' => 5,
|
||
],
|
||
|
||
// ============================================
|
||
// WORDPRESS HOSTING
|
||
// Optimized for WordPress performance & automation
|
||
// ============================================
|
||
[
|
||
'name' => 'WP Starter',
|
||
'slug' => 'wp-starter',
|
||
'description' => 'Optimized WordPress hosting with 23 GB SSD storage, unmetered bandwidth, 8 free email accounts, free SSL + CDN, LiteSpeed + WordPress optimization, AI for WordPress, 1-click WordPress install, automatic updates, daily backups, and SSH access.',
|
||
'category' => 'shared',
|
||
'type' => 'wordpress',
|
||
'price_monthly' => 40.00,
|
||
'price_yearly' => 480.00, // 40 × 12
|
||
'currency' => 'GHS',
|
||
'disk_gb' => 23,
|
||
'bandwidth_gb' => null, // Unmetered
|
||
'max_domains' => 1,
|
||
'max_databases' => 2,
|
||
'max_email_accounts' => 8,
|
||
'ssl_included' => true,
|
||
'backups_included' => true,
|
||
'backup_retention_days' => 7, // Daily backups
|
||
'features' => [
|
||
'LiteSpeed servers',
|
||
'WordPress optimization',
|
||
'AI for WordPress',
|
||
'1-click WordPress install',
|
||
'Automatic updates',
|
||
'Free SSL',
|
||
'Free CDN',
|
||
'Daily backups',
|
||
'SSH access',
|
||
],
|
||
'is_active' => true,
|
||
'is_featured' => true,
|
||
'sort_order' => 5,
|
||
],
|
||
[
|
||
'name' => 'WP Business',
|
||
'slug' => 'wp-business',
|
||
'description' => 'Premium WordPress hosting with unlimited WordPress sites, 75 GB SSD storage, unmetered bandwidth, 38 free email accounts, advanced security (Imunify360-level), free SSL + CDN, LiteSpeed + advanced caching, AI for WordPress, staging environment, daily backups + restore points, SSH access, and priority performance.',
|
||
'category' => 'shared',
|
||
'type' => 'wordpress',
|
||
'price_monthly' => 85.00,
|
||
'price_yearly' => 1020.00, // 85 × 12
|
||
'currency' => 'GHS',
|
||
'disk_gb' => 75,
|
||
'bandwidth_gb' => null, // Unmetered
|
||
'max_domains' => -1, // Unlimited WordPress sites
|
||
'max_databases' => -1, // Unlimited
|
||
'max_email_accounts' => 38,
|
||
'ssl_included' => true,
|
||
'backups_included' => true,
|
||
'backup_retention_days' => 30, // Daily backups + restore points
|
||
'features' => [
|
||
'LiteSpeed servers',
|
||
'Advanced caching',
|
||
'WordPress optimization',
|
||
'AI for WordPress',
|
||
'Staging environment',
|
||
'Advanced security (Imunify360-level)',
|
||
'Free SSL',
|
||
'Free CDN',
|
||
'Daily backups',
|
||
'Restore points',
|
||
'SSH access',
|
||
'Priority performance',
|
||
'Unlimited WordPress sites',
|
||
],
|
||
'is_active' => true,
|
||
'is_featured' => false,
|
||
'sort_order' => 6,
|
||
],
|
||
|
||
// VPS & dedicated → Ladill Servers (servers.ladill.com). See ServerProductSeeder there.
|
||
];
|
||
|
||
foreach ($products as $product) {
|
||
HostingProduct::updateOrCreate(
|
||
['slug' => $product['slug']],
|
||
$product
|
||
);
|
||
}
|
||
|
||
// Clean up old hosting products that are no longer in the new pricing structure
|
||
$newSlugs = array_column($products, 'slug');
|
||
$oldSlugsToRemove = [
|
||
'starter-hosting',
|
||
'basic-hosting',
|
||
'business-hosting',
|
||
'pro-hosting',
|
||
'wordpress-starter',
|
||
'wordpress-business',
|
||
];
|
||
|
||
HostingProduct::whereIn('slug', $oldSlugsToRemove)
|
||
->whereNotIn('slug', $newSlugs)
|
||
->delete();
|
||
}
|
||
}
|