mirror of
https://github.com/vitodeploy/vito.git
synced 2025-04-20 18:31:36 +00:00
fix enums
This commit is contained in:
parent
37a4b6af51
commit
f743611b22
@ -2,6 +2,7 @@
|
|||||||
|
|
||||||
namespace App\Actions\PHP;
|
namespace App\Actions\PHP;
|
||||||
|
|
||||||
|
use App\Enums\PHP;
|
||||||
use App\Enums\ServiceStatus;
|
use App\Enums\ServiceStatus;
|
||||||
use App\Models\Server;
|
use App\Models\Server;
|
||||||
use App\Models\Service;
|
use App\Models\Service;
|
||||||
@ -40,7 +41,7 @@ public static function rules(Server $server): array
|
|||||||
'version' => [
|
'version' => [
|
||||||
'required',
|
'required',
|
||||||
Rule::in(config('core.php_versions')),
|
Rule::in(config('core.php_versions')),
|
||||||
Rule::notIn($server->installedPHPVersions()),
|
Rule::notIn(array_merge($server->installedPHPVersions(), [PHP::NONE])),
|
||||||
],
|
],
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
@ -18,6 +18,12 @@ final class Database
|
|||||||
|
|
||||||
const MARIADB104 = 'mariadb104';
|
const MARIADB104 = 'mariadb104';
|
||||||
|
|
||||||
|
const MARIADB106 = 'mariadb1006';
|
||||||
|
|
||||||
|
const MARIADB1011 = 'mariadb1011';
|
||||||
|
|
||||||
|
const MARIADB114 = 'mariadb114';
|
||||||
|
|
||||||
const POSTGRESQL12 = 'postgresql12';
|
const POSTGRESQL12 = 'postgresql12';
|
||||||
|
|
||||||
const POSTGRESQL13 = 'postgresql13';
|
const POSTGRESQL13 = 'postgresql13';
|
||||||
|
@ -19,6 +19,7 @@ public function creationRules(array $input): array
|
|||||||
'version' => [
|
'version' => [
|
||||||
'required',
|
'required',
|
||||||
Rule::in(config('core.php_versions')),
|
Rule::in(config('core.php_versions')),
|
||||||
|
Rule::notIn([\App\Enums\PHP::NONE]),
|
||||||
Rule::unique('services', 'version')
|
Rule::unique('services', 'version')
|
||||||
->where('type', 'php')
|
->where('type', 'php')
|
||||||
->where('server_id', $this->service->server_id),
|
->where('server_id', $this->service->server_id),
|
||||||
|
@ -2,6 +2,8 @@
|
|||||||
|
|
||||||
namespace App\ServerTypes;
|
namespace App\ServerTypes;
|
||||||
|
|
||||||
|
use Illuminate\Validation\Rule;
|
||||||
|
|
||||||
class Regular extends AbstractType
|
class Regular extends AbstractType
|
||||||
{
|
{
|
||||||
public function createRules(array $input): array
|
public function createRules(array $input): array
|
||||||
@ -13,7 +15,7 @@ public function createRules(array $input): array
|
|||||||
],
|
],
|
||||||
'php' => [
|
'php' => [
|
||||||
'required',
|
'required',
|
||||||
'in:none,'.implode(',', config('core.php_versions')),
|
Rule::in(config('core.php_versions')),
|
||||||
],
|
],
|
||||||
'database' => [
|
'database' => [
|
||||||
'required',
|
'required',
|
||||||
|
@ -3,6 +3,7 @@
|
|||||||
namespace App\Web\Pages\Servers\PHP;
|
namespace App\Web\Pages\Servers\PHP;
|
||||||
|
|
||||||
use App\Actions\PHP\InstallNewPHP;
|
use App\Actions\PHP\InstallNewPHP;
|
||||||
|
use App\Enums\PHP;
|
||||||
use App\Models\Service;
|
use App\Models\Service;
|
||||||
use App\Web\Pages\Servers\Page;
|
use App\Web\Pages\Servers\Page;
|
||||||
use App\Web\Pages\Servers\PHP\Widgets\PHPList;
|
use App\Web\Pages\Servers\PHP\Widgets\PHPList;
|
||||||
@ -43,7 +44,7 @@ protected function getHeaderActions(): array
|
|||||||
Select::make('version')
|
Select::make('version')
|
||||||
->options(
|
->options(
|
||||||
collect(config('core.php_versions'))
|
collect(config('core.php_versions'))
|
||||||
->filter(fn ($version) => ! in_array($version, $installedPHPs))
|
->filter(fn ($version) => ! in_array($version, array_merge($installedPHPs, [PHP::NONE])))
|
||||||
->mapWithKeys(fn ($version) => [$version => $version])
|
->mapWithKeys(fn ($version) => [$version => $version])
|
||||||
->toArray()
|
->toArray()
|
||||||
)
|
)
|
||||||
|
105
config/core.php
105
config/core.php
@ -18,65 +18,66 @@
|
|||||||
\App\Enums\OperatingSystem::UBUNTU22,
|
\App\Enums\OperatingSystem::UBUNTU22,
|
||||||
\App\Enums\OperatingSystem::UBUNTU24,
|
\App\Enums\OperatingSystem::UBUNTU24,
|
||||||
],
|
],
|
||||||
'webservers' => ['none', 'nginx'],
|
'webservers' => [
|
||||||
|
\App\Enums\Webserver::NONE,
|
||||||
|
\App\Enums\Webserver::NGINX,
|
||||||
|
],
|
||||||
'php_versions' => [
|
'php_versions' => [
|
||||||
// 'none',
|
\App\Enums\PHP::NONE,
|
||||||
// '5.6',
|
\App\Enums\PHP::V70,
|
||||||
'7.0',
|
\App\Enums\PHP::V71,
|
||||||
'7.1',
|
\App\Enums\PHP::V72,
|
||||||
'7.2',
|
\App\Enums\PHP::V73,
|
||||||
'7.3',
|
\App\Enums\PHP::V74,
|
||||||
'7.4',
|
\App\Enums\PHP::V80,
|
||||||
'8.0',
|
\App\Enums\PHP::V81,
|
||||||
'8.1',
|
\App\Enums\PHP::V82,
|
||||||
'8.2',
|
\App\Enums\PHP::V83,
|
||||||
'8.3',
|
|
||||||
],
|
],
|
||||||
'databases' => [
|
'databases' => [
|
||||||
'none',
|
\App\Enums\Database::NONE,
|
||||||
'mysql57',
|
\App\Enums\Database::MYSQL57,
|
||||||
'mysql80',
|
\App\Enums\Database::MYSQL80,
|
||||||
'mariadb103',
|
\App\Enums\Database::MARIADB103,
|
||||||
'mariadb104',
|
\App\Enums\Database::MARIADB104,
|
||||||
'mariadb106',
|
\App\Enums\Database::MARIADB106,
|
||||||
'mariadb1011',
|
\App\Enums\Database::MARIADB1011,
|
||||||
'mariadb114',
|
\App\Enums\Database::MARIADB114,
|
||||||
'postgresql12',
|
\App\Enums\Database::POSTGRESQL12,
|
||||||
'postgresql13',
|
\App\Enums\Database::POSTGRESQL13,
|
||||||
'postgresql14',
|
\App\Enums\Database::POSTGRESQL14,
|
||||||
'postgresql15',
|
\App\Enums\Database::POSTGRESQL15,
|
||||||
'postgresql16',
|
\App\Enums\Database::POSTGRESQL16,
|
||||||
],
|
],
|
||||||
'databases_name' => [
|
'databases_name' => [
|
||||||
'none' => 'none',
|
\App\Enums\Database::NONE => 'none',
|
||||||
'mysql57' => 'mysql',
|
\App\Enums\Database::MYSQL57 => 'mysql',
|
||||||
'mysql80' => 'mysql',
|
\App\Enums\Database::MYSQL80 => 'mysql',
|
||||||
'mariadb103' => 'mariadb',
|
\App\Enums\Database::MARIADB103 => 'mariadb',
|
||||||
'mariadb104' => 'mariadb',
|
\App\Enums\Database::MARIADB104 => 'mariadb',
|
||||||
'mariadb106' => 'mariadb',
|
\App\Enums\Database::MARIADB106 => 'mariadb',
|
||||||
'mariadb1011' => 'mariadb',
|
\App\Enums\Database::MARIADB1011 => 'mariadb',
|
||||||
'mariadb114' => 'mariadb',
|
\App\Enums\Database::MARIADB114 => 'mariadb',
|
||||||
'postgresql12' => 'postgresql',
|
\App\Enums\Database::POSTGRESQL12 => 'postgresql',
|
||||||
'postgresql13' => 'postgresql',
|
\App\Enums\Database::POSTGRESQL13 => 'postgresql',
|
||||||
'postgresql14' => 'postgresql',
|
\App\Enums\Database::POSTGRESQL14 => 'postgresql',
|
||||||
'postgresql15' => 'postgresql',
|
\App\Enums\Database::POSTGRESQL15 => 'postgresql',
|
||||||
'postgresql16' => 'postgresql',
|
\App\Enums\Database::POSTGRESQL16 => 'postgresql',
|
||||||
],
|
],
|
||||||
'databases_version' => [
|
'databases_version' => [
|
||||||
'none' => '',
|
\App\Enums\Database::NONE => '',
|
||||||
'mysql57' => '5.7',
|
\App\Enums\Database::MYSQL57 => '5.7',
|
||||||
'mysql80' => '8.0',
|
\App\Enums\Database::MYSQL80 => '8.0',
|
||||||
'mariadb' => '10.3',
|
\App\Enums\Database::MARIADB103 => '10.3',
|
||||||
'mariadb103' => '10.3',
|
\App\Enums\Database::MARIADB104 => '10.4',
|
||||||
'mariadb104' => '10.4',
|
\App\Enums\Database::MARIADB106 => '10.6',
|
||||||
'mariadb106' => '10.6',
|
\App\Enums\Database::MARIADB1011 => '10.11',
|
||||||
'mariadb1011' => '10.11',
|
\App\Enums\Database::MARIADB114 => '11.4',
|
||||||
'mariadb114' => '11.4',
|
\App\Enums\Database::POSTGRESQL12 => '12',
|
||||||
'postgresql12' => '12',
|
\App\Enums\Database::POSTGRESQL13 => '13',
|
||||||
'postgresql13' => '13',
|
\App\Enums\Database::POSTGRESQL14 => '14',
|
||||||
'postgresql14' => '14',
|
\App\Enums\Database::POSTGRESQL15 => '15',
|
||||||
'postgresql15' => '15',
|
\App\Enums\Database::POSTGRESQL16 => '16',
|
||||||
'postgresql16' => '16',
|
|
||||||
],
|
],
|
||||||
'database_features' => [
|
'database_features' => [
|
||||||
'remote' => [
|
'remote' => [
|
||||||
|
Loading…
x
Reference in New Issue
Block a user