From 839e7f496c2fcdfc37521daf9c5046667968681f Mon Sep 17 00:00:00 2001 From: Saeed Vaziry <61919774+saeedvaziry@users.noreply.github.com> Date: Sun, 17 Mar 2024 12:26:48 +0100 Subject: [PATCH] drop dependency to bensampo/laravel-enum (#120) --- README.md | 1 - app/Actions/SSL/CreateSSL.php | 2 +- .../SourceControl/ConnectSourceControl.php | 2 +- app/Enums/BackupFileStatus.php | 4 +- app/Enums/BackupStatus.php | 4 +- app/Enums/CronjobStatus.php | 4 +- app/Enums/Database.php | 4 +- app/Enums/DatabaseStatus.php | 4 +- app/Enums/DatabaseUserStatus.php | 4 +- app/Enums/DeploymentStatus.php | 4 +- app/Enums/FirewallRuleStatus.php | 4 +- app/Enums/LogType.php | 4 +- app/Enums/NotificationChannel.php | 4 +- app/Enums/OperatingSystem.php | 4 +- app/Enums/QueueStatus.php | 4 +- app/Enums/ServerProvider.php | 4 +- app/Enums/ServerStatus.php | 4 +- app/Enums/ServerType.php | 4 +- app/Enums/ServiceStatus.php | 4 +- app/Enums/SiteFeature.php | 4 +- app/Enums/SiteStatus.php | 4 +- app/Enums/SiteType.php | 4 +- app/Enums/SourceControl.php | 4 +- app/Enums/SshKeyStatus.php | 4 +- app/Enums/SslStatus.php | 4 +- app/Enums/SslType.php | 4 +- app/Enums/StorageProvider.php | 4 +- app/Enums/Webserver.php | 4 +- app/ServerProviders/AWS.php | 7 +- composer.json | 1 - composer.lock | 301 +----------------- config/core.php | 31 +- database/factories/ServerProviderFactory.php | 2 +- database/factories/StorageProviderFactory.php | 2 +- .../views/ssls/partials/create-ssl.blade.php | 2 +- 35 files changed, 59 insertions(+), 392 deletions(-) diff --git a/README.md b/README.md index abbabf4..a1a6102 100644 --- a/README.md +++ b/README.md @@ -41,7 +41,6 @@ ## Credits - Tailwindcss - Alpinejs - Vite -- Laravel Enum by BenSampo - Log Viewer by Arunas Skirius - PHPSecLib - Laravel Blade Icons diff --git a/app/Actions/SSL/CreateSSL.php b/app/Actions/SSL/CreateSSL.php index a39acce..15f771b 100644 --- a/app/Actions/SSL/CreateSSL.php +++ b/app/Actions/SSL/CreateSSL.php @@ -47,7 +47,7 @@ protected function validate(array $input): void $rules = [ 'type' => [ 'required', - Rule::in(SslType::getValues()), + Rule::in(config('core.ssl_types')), ], ]; if (isset($input['type']) && $input['type'] == SslType::CUSTOM) { diff --git a/app/Actions/SourceControl/ConnectSourceControl.php b/app/Actions/SourceControl/ConnectSourceControl.php index 690a136..da902db 100644 --- a/app/Actions/SourceControl/ConnectSourceControl.php +++ b/app/Actions/SourceControl/ConnectSourceControl.php @@ -42,7 +42,7 @@ private function validate(array $input): void $rules = [ 'provider' => [ 'required', - Rule::in(\App\Enums\SourceControl::getValues()), + Rule::in(config('core.source_control_providers')), ], 'name' => [ 'required', diff --git a/app/Enums/BackupFileStatus.php b/app/Enums/BackupFileStatus.php index 9b2e59c..59ac3b5 100644 --- a/app/Enums/BackupFileStatus.php +++ b/app/Enums/BackupFileStatus.php @@ -2,9 +2,7 @@ namespace App\Enums; -use BenSampo\Enum\Enum; - -final class BackupFileStatus extends Enum +final class BackupFileStatus { const CREATED = 'created'; diff --git a/app/Enums/BackupStatus.php b/app/Enums/BackupStatus.php index 1397654..3444660 100644 --- a/app/Enums/BackupStatus.php +++ b/app/Enums/BackupStatus.php @@ -2,9 +2,7 @@ namespace App\Enums; -use BenSampo\Enum\Enum; - -final class BackupStatus extends Enum +final class BackupStatus { const READY = 'ready'; diff --git a/app/Enums/CronjobStatus.php b/app/Enums/CronjobStatus.php index 58a344b..23746f6 100644 --- a/app/Enums/CronjobStatus.php +++ b/app/Enums/CronjobStatus.php @@ -2,9 +2,7 @@ namespace App\Enums; -use BenSampo\Enum\Enum; - -final class CronjobStatus extends Enum +final class CronjobStatus { const CREATING = 'creating'; diff --git a/app/Enums/Database.php b/app/Enums/Database.php index e9010a4..bdf2f4d 100644 --- a/app/Enums/Database.php +++ b/app/Enums/Database.php @@ -2,9 +2,7 @@ namespace App\Enums; -use BenSampo\Enum\Enum; - -final class Database extends Enum +final class Database { const NONE = 'none'; diff --git a/app/Enums/DatabaseStatus.php b/app/Enums/DatabaseStatus.php index 71cca58..418e6c4 100644 --- a/app/Enums/DatabaseStatus.php +++ b/app/Enums/DatabaseStatus.php @@ -2,9 +2,7 @@ namespace App\Enums; -use BenSampo\Enum\Enum; - -final class DatabaseStatus extends Enum +final class DatabaseStatus { const READY = 'ready'; diff --git a/app/Enums/DatabaseUserStatus.php b/app/Enums/DatabaseUserStatus.php index a02fe4f..2658614 100644 --- a/app/Enums/DatabaseUserStatus.php +++ b/app/Enums/DatabaseUserStatus.php @@ -2,9 +2,7 @@ namespace App\Enums; -use BenSampo\Enum\Enum; - -final class DatabaseUserStatus extends Enum +final class DatabaseUserStatus { const READY = 'ready'; diff --git a/app/Enums/DeploymentStatus.php b/app/Enums/DeploymentStatus.php index d5ad699..8a7d07c 100644 --- a/app/Enums/DeploymentStatus.php +++ b/app/Enums/DeploymentStatus.php @@ -2,9 +2,7 @@ namespace App\Enums; -use BenSampo\Enum\Enum; - -final class DeploymentStatus extends Enum +final class DeploymentStatus { const DEPLOYING = 'deploying'; diff --git a/app/Enums/FirewallRuleStatus.php b/app/Enums/FirewallRuleStatus.php index 8fecb61..c8e6e77 100644 --- a/app/Enums/FirewallRuleStatus.php +++ b/app/Enums/FirewallRuleStatus.php @@ -2,9 +2,7 @@ namespace App\Enums; -use BenSampo\Enum\Enum; - -final class FirewallRuleStatus extends Enum +final class FirewallRuleStatus { const CREATING = 'creating'; diff --git a/app/Enums/LogType.php b/app/Enums/LogType.php index 0fc27f3..c173971 100644 --- a/app/Enums/LogType.php +++ b/app/Enums/LogType.php @@ -2,9 +2,7 @@ namespace App\Enums; -use BenSampo\Enum\Enum; - -final class LogType extends Enum +final class LogType { const SERVER = 'server'; diff --git a/app/Enums/NotificationChannel.php b/app/Enums/NotificationChannel.php index 6e08871..940bb1b 100644 --- a/app/Enums/NotificationChannel.php +++ b/app/Enums/NotificationChannel.php @@ -2,9 +2,7 @@ namespace App\Enums; -use BenSampo\Enum\Enum; - -final class NotificationChannel extends Enum +final class NotificationChannel { const EMAIL = 'email'; diff --git a/app/Enums/OperatingSystem.php b/app/Enums/OperatingSystem.php index 4a2703d..b159893 100644 --- a/app/Enums/OperatingSystem.php +++ b/app/Enums/OperatingSystem.php @@ -2,9 +2,7 @@ namespace App\Enums; -use BenSampo\Enum\Enum; - -final class OperatingSystem extends Enum +final class OperatingSystem { const UBUNTU18 = 'ubuntu_18'; diff --git a/app/Enums/QueueStatus.php b/app/Enums/QueueStatus.php index a9de28f..0ca6bee 100644 --- a/app/Enums/QueueStatus.php +++ b/app/Enums/QueueStatus.php @@ -2,9 +2,7 @@ namespace App\Enums; -use BenSampo\Enum\Enum; - -final class QueueStatus extends Enum +final class QueueStatus { const RUNNING = 'running'; diff --git a/app/Enums/ServerProvider.php b/app/Enums/ServerProvider.php index a01fe23..d9d5b26 100644 --- a/app/Enums/ServerProvider.php +++ b/app/Enums/ServerProvider.php @@ -2,9 +2,7 @@ namespace App\Enums; -use BenSampo\Enum\Enum; - -final class ServerProvider extends Enum +final class ServerProvider { const CUSTOM = 'custom'; diff --git a/app/Enums/ServerStatus.php b/app/Enums/ServerStatus.php index d2a84d1..9698995 100644 --- a/app/Enums/ServerStatus.php +++ b/app/Enums/ServerStatus.php @@ -2,9 +2,7 @@ namespace App\Enums; -use BenSampo\Enum\Enum; - -final class ServerStatus extends Enum +final class ServerStatus { const READY = 'ready'; diff --git a/app/Enums/ServerType.php b/app/Enums/ServerType.php index 201bac4..4389c67 100644 --- a/app/Enums/ServerType.php +++ b/app/Enums/ServerType.php @@ -2,9 +2,7 @@ namespace App\Enums; -use BenSampo\Enum\Enum; - -final class ServerType extends Enum +final class ServerType { const REGULAR = 'regular'; diff --git a/app/Enums/ServiceStatus.php b/app/Enums/ServiceStatus.php index f6cc446..eb25b2a 100644 --- a/app/Enums/ServiceStatus.php +++ b/app/Enums/ServiceStatus.php @@ -2,9 +2,7 @@ namespace App\Enums; -use BenSampo\Enum\Enum; - -final class ServiceStatus extends Enum +final class ServiceStatus { const READY = 'ready'; diff --git a/app/Enums/SiteFeature.php b/app/Enums/SiteFeature.php index 75260ea..8da544c 100644 --- a/app/Enums/SiteFeature.php +++ b/app/Enums/SiteFeature.php @@ -2,9 +2,7 @@ namespace App\Enums; -use BenSampo\Enum\Enum; - -final class SiteFeature extends Enum +final class SiteFeature { const DEPLOYMENT = 'deployment'; diff --git a/app/Enums/SiteStatus.php b/app/Enums/SiteStatus.php index 7626bb5..741e4df 100644 --- a/app/Enums/SiteStatus.php +++ b/app/Enums/SiteStatus.php @@ -2,9 +2,7 @@ namespace App\Enums; -use BenSampo\Enum\Enum; - -final class SiteStatus extends Enum +final class SiteStatus { const READY = 'ready'; diff --git a/app/Enums/SiteType.php b/app/Enums/SiteType.php index 89cb73d..128d3f6 100644 --- a/app/Enums/SiteType.php +++ b/app/Enums/SiteType.php @@ -2,9 +2,7 @@ namespace App\Enums; -use BenSampo\Enum\Enum; - -final class SiteType extends Enum +final class SiteType { const PHP = 'php'; diff --git a/app/Enums/SourceControl.php b/app/Enums/SourceControl.php index 15c772c..b1486c4 100644 --- a/app/Enums/SourceControl.php +++ b/app/Enums/SourceControl.php @@ -2,9 +2,7 @@ namespace App\Enums; -use BenSampo\Enum\Enum; - -final class SourceControl extends Enum +final class SourceControl { const GITHUB = 'github'; diff --git a/app/Enums/SshKeyStatus.php b/app/Enums/SshKeyStatus.php index 4014477..23f1eb2 100644 --- a/app/Enums/SshKeyStatus.php +++ b/app/Enums/SshKeyStatus.php @@ -2,9 +2,7 @@ namespace App\Enums; -use BenSampo\Enum\Enum; - -final class SshKeyStatus extends Enum +final class SshKeyStatus { const ADDING = 'adding'; diff --git a/app/Enums/SslStatus.php b/app/Enums/SslStatus.php index e59e93a..7b8eb11 100644 --- a/app/Enums/SslStatus.php +++ b/app/Enums/SslStatus.php @@ -2,9 +2,7 @@ namespace App\Enums; -use BenSampo\Enum\Enum; - -final class SslStatus extends Enum +final class SslStatus { const CREATED = 'created'; diff --git a/app/Enums/SslType.php b/app/Enums/SslType.php index e5cbc60..092fc83 100644 --- a/app/Enums/SslType.php +++ b/app/Enums/SslType.php @@ -2,9 +2,7 @@ namespace App\Enums; -use BenSampo\Enum\Enum; - -final class SslType extends Enum +final class SslType { const LETSENCRYPT = 'letsencrypt'; diff --git a/app/Enums/StorageProvider.php b/app/Enums/StorageProvider.php index 943839f..4fb8c89 100644 --- a/app/Enums/StorageProvider.php +++ b/app/Enums/StorageProvider.php @@ -2,9 +2,7 @@ namespace App\Enums; -use BenSampo\Enum\Enum; - -final class StorageProvider extends Enum +final class StorageProvider { const DROPBOX = 'dropbox'; diff --git a/app/Enums/Webserver.php b/app/Enums/Webserver.php index a156f74..886f85f 100644 --- a/app/Enums/Webserver.php +++ b/app/Enums/Webserver.php @@ -2,9 +2,7 @@ namespace App\Enums; -use BenSampo\Enum\Enum; - -final class Webserver extends Enum +final class Webserver { const NONE = 'none'; diff --git a/app/ServerProviders/AWS.php b/app/ServerProviders/AWS.php index 9d6f933..8dd026b 100755 --- a/app/ServerProviders/AWS.php +++ b/app/ServerProviders/AWS.php @@ -2,7 +2,6 @@ namespace App\ServerProviders; -use App\Enums\OperatingSystem; use App\Exceptions\CouldNotConnectToProvider; use App\Facades\Notifier; use App\Notifications\FailedToDeleteServerFromProvider; @@ -11,6 +10,7 @@ use Exception; use Illuminate\Filesystem\FilesystemAdapter; use Illuminate\Support\Facades\Storage; +use Illuminate\Validation\Rule; use Throwable; class AWS extends AbstractProvider @@ -22,7 +22,10 @@ class AWS extends AbstractProvider public function createRules(array $input): array { $rules = [ - 'os' => 'required|in:'.implode(',', OperatingSystem::getValues()), + 'os' => [ + 'required', + Rule::in(config('core.operating_systems')), + ], ]; // plans $plans = []; diff --git a/composer.json b/composer.json index 0d9ae80..babeb09 100644 --- a/composer.json +++ b/composer.json @@ -11,7 +11,6 @@ "php": "^8.2", "ext-ftp": "*", "aws/aws-sdk-php": "^3.158", - "bensampo/laravel-enum": "^6.3", "blade-ui-kit/blade-heroicons": "^2.2", "guzzlehttp/guzzle": "^7.2", "laravel/fortify": "^1.17", diff --git a/composer.lock b/composer.lock index 22920d5..0ab746c 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "3e51f672a4139d2a840cdcd2e48ccaaf", + "content-hash": "0b2677968e2517591773c88a9b77a5fe", "packages": [ { "name": "aws/aws-crt-php", @@ -209,98 +209,6 @@ }, "time": "2022-12-07T17:46:57+00:00" }, - { - "name": "bensampo/laravel-enum", - "version": "v6.10.0", - "source": { - "type": "git", - "url": "https://github.com/BenSampo/laravel-enum.git", - "reference": "00217d6ff1d70428193ca8e2fba51aad13b7efe9" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/BenSampo/laravel-enum/zipball/00217d6ff1d70428193ca8e2fba51aad13b7efe9", - "reference": "00217d6ff1d70428193ca8e2fba51aad13b7efe9", - "shasum": "" - }, - "require": { - "composer/class-map-generator": "^1", - "illuminate/contracts": "^9 || ^10", - "illuminate/support": "^9 || ^10", - "laminas/laminas-code": "^3.4 || ^4", - "nikic/php-parser": "^4.13 || ^5", - "php": "^8" - }, - "require-dev": { - "doctrine/dbal": "^3.4", - "ergebnis/composer-normalize": "^2.28.3", - "larastan/larastan": "^2.6.3", - "mll-lab/php-cs-fixer-config": "^5.4", - "mockery/mockery": "^1.5", - "orchestra/testbench": "^7.6.1 || ^8", - "phpstan/extension-installer": "^1", - "phpstan/phpstan": "^1.8.2", - "phpstan/phpstan-mockery": "^1.1", - "phpstan/phpstan-phpunit": "^1.1.1", - "phpunit/phpunit": "^9.5.21 || ^10 || ^11", - "rector/rector": "^0.19", - "symplify/rule-doc-generator": "^11 || ^12" - }, - "type": "library", - "extra": { - "laravel": { - "providers": [ - "BenSampo\\Enum\\EnumServiceProvider" - ] - }, - "phpstan": { - "includes": [ - "extension.neon" - ] - } - }, - "autoload": { - "psr-4": { - "BenSampo\\Enum\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Ben Sampson", - "homepage": "https://sampo.co.uk", - "role": "Developer" - }, - { - "name": "Benedikt Franke", - "homepage": "https://franke.tech", - "role": "Developer" - } - ], - "description": "Simple, extensible and powerful enumeration implementation for Laravel.", - "homepage": "https://github.com/bensampo/laravel-enum", - "keywords": [ - "bensampo", - "enum", - "laravel", - "package", - "validation" - ], - "support": { - "issues": "https://github.com/BenSampo/laravel-enum/issues", - "source": "https://github.com/BenSampo/laravel-enum/tree/v6.10.0" - }, - "funding": [ - { - "url": "https://github.com/bensampo", - "type": "github" - } - ], - "time": "2024-02-14T14:12:51+00:00" - }, { "name": "blade-ui-kit/blade-heroicons", "version": "2.3.0", @@ -575,150 +483,6 @@ ], "time": "2023-12-11T17:09:12+00:00" }, - { - "name": "composer/class-map-generator", - "version": "1.1.0", - "source": { - "type": "git", - "url": "https://github.com/composer/class-map-generator.git", - "reference": "953cc4ea32e0c31f2185549c7d216d7921f03da9" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/composer/class-map-generator/zipball/953cc4ea32e0c31f2185549c7d216d7921f03da9", - "reference": "953cc4ea32e0c31f2185549c7d216d7921f03da9", - "shasum": "" - }, - "require": { - "composer/pcre": "^2.1 || ^3.1", - "php": "^7.2 || ^8.0", - "symfony/finder": "^4.4 || ^5.3 || ^6 || ^7" - }, - "require-dev": { - "phpstan/phpstan": "^1.6", - "phpstan/phpstan-deprecation-rules": "^1", - "phpstan/phpstan-phpunit": "^1", - "phpstan/phpstan-strict-rules": "^1.1", - "symfony/filesystem": "^5.4 || ^6", - "symfony/phpunit-bridge": "^5" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.x-dev" - } - }, - "autoload": { - "psr-4": { - "Composer\\ClassMapGenerator\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Jordi Boggiano", - "email": "j.boggiano@seld.be", - "homepage": "https://seld.be" - } - ], - "description": "Utilities to scan PHP code and generate class maps.", - "keywords": [ - "classmap" - ], - "support": { - "issues": "https://github.com/composer/class-map-generator/issues", - "source": "https://github.com/composer/class-map-generator/tree/1.1.0" - }, - "funding": [ - { - "url": "https://packagist.com", - "type": "custom" - }, - { - "url": "https://github.com/composer", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/composer/composer", - "type": "tidelift" - } - ], - "time": "2023-06-30T13:58:57+00:00" - }, - { - "name": "composer/pcre", - "version": "3.1.2", - "source": { - "type": "git", - "url": "https://github.com/composer/pcre.git", - "reference": "4775f35b2d70865807c89d32c8e7385b86eb0ace" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/composer/pcre/zipball/4775f35b2d70865807c89d32c8e7385b86eb0ace", - "reference": "4775f35b2d70865807c89d32c8e7385b86eb0ace", - "shasum": "" - }, - "require": { - "php": "^7.4 || ^8.0" - }, - "require-dev": { - "phpstan/phpstan": "^1.3", - "phpstan/phpstan-strict-rules": "^1.1", - "symfony/phpunit-bridge": "^5" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "3.x-dev" - } - }, - "autoload": { - "psr-4": { - "Composer\\Pcre\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Jordi Boggiano", - "email": "j.boggiano@seld.be", - "homepage": "http://seld.be" - } - ], - "description": "PCRE wrapping library that offers type-safe preg_* replacements.", - "keywords": [ - "PCRE", - "preg", - "regex", - "regular expression" - ], - "support": { - "issues": "https://github.com/composer/pcre/issues", - "source": "https://github.com/composer/pcre/tree/3.1.2" - }, - "funding": [ - { - "url": "https://packagist.com", - "type": "custom" - }, - { - "url": "https://github.com/composer", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/composer/composer", - "type": "tidelift" - } - ], - "time": "2024-03-07T15:38:35+00:00" - }, { "name": "dasprid/enum", "version": "1.0.5", @@ -1684,69 +1448,6 @@ ], "time": "2023-12-03T19:50:20+00:00" }, - { - "name": "laminas/laminas-code", - "version": "4.13.0", - "source": { - "type": "git", - "url": "https://github.com/laminas/laminas-code.git", - "reference": "7353d4099ad5388e84737dd16994316a04f48dbf" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-code/zipball/7353d4099ad5388e84737dd16994316a04f48dbf", - "reference": "7353d4099ad5388e84737dd16994316a04f48dbf", - "shasum": "" - }, - "require": { - "php": "~8.1.0 || ~8.2.0 || ~8.3.0" - }, - "require-dev": { - "doctrine/annotations": "^2.0.1", - "ext-phar": "*", - "laminas/laminas-coding-standard": "^2.5.0", - "laminas/laminas-stdlib": "^3.17.0", - "phpunit/phpunit": "^10.3.3", - "psalm/plugin-phpunit": "^0.18.4", - "vimeo/psalm": "^5.15.0" - }, - "suggest": { - "doctrine/annotations": "Doctrine\\Common\\Annotations >=1.0 for annotation features", - "laminas/laminas-stdlib": "Laminas\\Stdlib component" - }, - "type": "library", - "autoload": { - "psr-4": { - "Laminas\\Code\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "description": "Extensions to the PHP Reflection API, static code scanning, and code generation", - "homepage": "https://laminas.dev", - "keywords": [ - "code", - "laminas", - "laminasframework" - ], - "support": { - "chat": "https://laminas.dev/chat", - "docs": "https://docs.laminas.dev/laminas-code/", - "forum": "https://discourse.laminas.dev", - "issues": "https://github.com/laminas/laminas-code/issues", - "rss": "https://github.com/laminas/laminas-code/releases.atom", - "source": "https://github.com/laminas/laminas-code" - }, - "funding": [ - { - "url": "https://funding.communitybridge.org/projects/laminas-project", - "type": "community_bridge" - } - ], - "time": "2023-10-18T10:00:55+00:00" - }, { "name": "laravel/fortify", "version": "v1.20.1", diff --git a/config/core.php b/config/core.php index 5611e8e..4068070 100755 --- a/config/core.php +++ b/config/core.php @@ -1,5 +1,7 @@ [ - // 'ubuntu_18', - 'ubuntu_20', - 'ubuntu_22', + OperatingSystem::UBUNTU20, + OperatingSystem::UBUNTU22, ], 'webservers' => ['none', 'nginx'], 'php_versions' => [ @@ -106,12 +107,22 @@ /* * Server */ - 'server_types' => \App\Enums\ServerType::getValues(), + 'server_types' => [ + \App\Enums\ServerType::REGULAR, + \App\Enums\ServerType::DATABASE, + ], 'server_types_class' => [ \App\Enums\ServerType::REGULAR => \App\ServerTypes\Regular::class, \App\Enums\ServerType::DATABASE => \App\ServerTypes\Database::class, ], - 'server_providers' => \App\Enums\ServerProvider::getValues(), + 'server_providers' => [ + \App\Enums\ServerProvider::CUSTOM, + \App\Enums\ServerProvider::AWS, + \App\Enums\ServerProvider::LINODE, + \App\Enums\ServerProvider::DIGITALOCEAN, + \App\Enums\ServerProvider::VULTR, + \App\Enums\ServerProvider::HETZNER, + ], 'server_providers_class' => [ \App\Enums\ServerProvider::CUSTOM => \App\ServerProviders\Custom::class, \App\Enums\ServerProvider::AWS => AWS::class, @@ -324,7 +335,6 @@ 'github', 'gitlab', 'bitbucket', - 'custom', ], 'source_control_providers_class' => [ 'github' => Github::class, @@ -397,11 +407,16 @@ * storage providers */ 'storage_providers' => [ - 'dropbox', - 'ftp', + StorageProvider::DROPBOX, + StorageProvider::FTP, ], 'storage_providers_class' => [ 'dropbox' => Dropbox::class, 'ftp' => FTP::class, ], + + 'ssl_types' => [ + \App\Enums\SslType::LETSENCRYPT, + \App\Enums\SslType::CUSTOM, + ], ]; diff --git a/database/factories/ServerProviderFactory.php b/database/factories/ServerProviderFactory.php index 9eb3c21..10398fe 100644 --- a/database/factories/ServerProviderFactory.php +++ b/database/factories/ServerProviderFactory.php @@ -14,7 +14,7 @@ public function definition(): array { return [ 'profile' => $this->faker->word(), - 'provider' => $this->faker->randomElement(\App\Enums\ServerProvider::getValues()), + 'provider' => $this->faker->randomElement(config('core.server_providers')), 'credentials' => [], 'connected' => 1, 'user_id' => User::factory(), diff --git a/database/factories/StorageProviderFactory.php b/database/factories/StorageProviderFactory.php index 447cc71..1d21cdd 100644 --- a/database/factories/StorageProviderFactory.php +++ b/database/factories/StorageProviderFactory.php @@ -11,7 +11,7 @@ public function definition(): array { return [ 'profile' => $this->faker->word(), - 'provider' => $this->faker->randomElement(\App\Enums\StorageProvider::getValues()), + 'provider' => $this->faker->randomElement(config('core.storage_providers')), 'credentials' => [ 'token' => 'test-token', ], diff --git a/resources/views/ssls/partials/create-ssl.blade.php b/resources/views/ssls/partials/create-ssl.blade.php index ba67ca2..4c57f87 100644 --- a/resources/views/ssls/partials/create-ssl.blade.php +++ b/resources/views/ssls/partials/create-ssl.blade.php @@ -21,7 +21,7 @@ class="p-6" - @foreach (\App\Enums\SslType::getValues() as $t) + @foreach (config("core.ssl_types") as $t)