From f9465790f7e633f379565162453336f078f207fb Mon Sep 17 00:00:00 2001 From: Andras Bacsai Date: Tue, 5 Nov 2024 11:51:58 +0100 Subject: [PATCH] delete unused component --- app/Livewire/Server/Form.php | 281 ------------------ .../views/livewire/server/form.blade.php | 226 -------------- 2 files changed, 507 deletions(-) delete mode 100644 app/Livewire/Server/Form.php delete mode 100644 resources/views/livewire/server/form.blade.php diff --git a/app/Livewire/Server/Form.php b/app/Livewire/Server/Form.php deleted file mode 100644 index 740421373..000000000 --- a/app/Livewire/Server/Form.php +++ /dev/null @@ -1,281 +0,0 @@ -user()->currentTeam()->id; - - return [ - "echo-private:team.{$teamId},CloudflareTunnelConfigured" => 'cloudflareTunnelConfigured', - 'refreshServerShow' => 'serverInstalled', - 'revalidate' => '$refresh', - ]; - } - - protected $rules = [ - 'server.name' => 'required', - 'server.description' => 'nullable', - 'server.ip' => 'required', - 'server.user' => 'required', - 'server.port' => 'required', - 'wildcard_domain' => 'nullable|url', - 'server.settings.is_reachable' => 'required', - 'server.settings.is_swarm_manager' => 'required|boolean', - 'server.settings.is_swarm_worker' => 'required|boolean', - 'server.settings.is_build_server' => 'required|boolean', - 'server.settings.is_metrics_enabled' => 'required|boolean', - 'server.settings.sentinel_token' => 'required', - 'server.settings.sentinel_metrics_refresh_rate_seconds' => 'required|integer|min:1', - 'server.settings.sentinel_metrics_history_days' => 'required|integer|min:1', - 'server.settings.sentinel_push_interval_seconds' => 'required|integer|min:10', - 'server.settings.sentinel_custom_url' => 'nullable|url', - 'server.settings.is_sentinel_enabled' => 'required|boolean', - 'server.settings.is_sentinel_debug_enabled' => 'required|boolean', - 'server.settings.server_timezone' => 'required|string|timezone', - ]; - - protected $validationAttributes = [ - 'server.name' => 'Name', - 'server.description' => 'Description', - 'server.ip' => 'IP address/Domain', - 'server.user' => 'User', - 'server.port' => 'Port', - 'server.settings.is_reachable' => 'Is reachable', - 'server.settings.is_swarm_manager' => 'Swarm Manager', - 'server.settings.is_swarm_worker' => 'Swarm Worker', - 'server.settings.is_build_server' => 'Build Server', - 'server.settings.is_metrics_enabled' => 'Metrics', - 'server.settings.sentinel_token' => 'Metrics Token', - 'server.settings.sentinel_metrics_refresh_rate_seconds' => 'Metrics Interval', - 'server.settings.sentinel_metrics_history_days' => 'Metrics History', - 'server.settings.sentinel_push_interval_seconds' => 'Push Interval', - 'server.settings.is_sentinel_enabled' => 'Server API', - 'server.settings.is_sentinel_debug_enabled' => 'Debug', - 'server.settings.sentinel_custom_url' => 'Coolify URL', - 'server.settings.server_timezone' => 'Server Timezone', - ]; - - public function mount(Server $server) - { - $this->server = $server; - $this->timezones = collect(timezone_identifiers_list())->sort()->values()->toArray(); - $this->wildcard_domain = $this->server->settings->wildcard_domain; - } - - public function checkSyncStatus() - { - $this->server->refresh(); - $this->server->settings->refresh(); - } - - public function regenerateSentinelToken() - { - try { - $this->server->settings->generateSentinelToken(); - $this->server->settings->refresh(); - // $this->restartSentinel(notification: false); - $this->dispatch('success', 'Token regenerated & Sentinel restarted.'); - } catch (\Throwable $e) { - return handleError($e, $this); - } - } - - public function updated($field) - { - if ($field === 'server.settings.docker_cleanup_frequency') { - $frequency = $this->server->settings->docker_cleanup_frequency; - if (! validate_cron_expression($frequency)) { - $this->dispatch('error', 'Invalid Cron / Human expression for Docker Cleanup Frequency. Resetting to default 10 minutes.'); - $this->server->settings->docker_cleanup_frequency = '*/10 * * * *'; - } - } - } - - public function cloudflareTunnelConfigured() - { - $this->serverInstalled(); - $this->dispatch('success', 'Cloudflare Tunnels configured successfully.'); - } - - public function serverInstalled() - { - $this->server->refresh(); - $this->server->settings->refresh(); - } - - public function updatedServerSettingsIsBuildServer() - { - $this->dispatch('refreshServerShow'); - $this->dispatch('serverRefresh'); - $this->dispatch('proxyStatusUpdated'); - } - - public function updatedServerSettingsIsSentinelEnabled($value) - { - $this->validate([ - 'server.settings.sentinel_custom_url' => 'required|url', - ]); - if ($value === false) { - StopSentinel::dispatch($this->server); - $this->server->settings->is_metrics_enabled = false; - $this->server->settings->save(); - $this->server->sentinelHeartbeat(isReset: true); - } else { - try { - StartSentinel::run($this->server); - } catch (\Throwable $e) { - return handleError($e, $this); - } - } - } - - public function updatedServerSettingsIsMetricsEnabled() - { - $this->restartSentinel(); - } - - public function updatedServerSettingsIsSentinelDebugEnabled() - { - $this->restartSentinel(); - } - - public function instantSave() - { - try { - $this->validate(); - refresh_server_connection($this->server->privateKey); - $this->validateServer(false); - - $this->server->settings->save(); - $this->server->save(); - $this->dispatch('success', 'Server updated.'); - $this->dispatch('refreshServerShow'); - } catch (\Throwable $e) { - $this->server->settings->refresh(); - - return handleError($e, $this); - } finally { - } - } - - public function saveSentinel() - { - try { - $this->validate(); - $this->server->settings->save(); - $this->dispatch('success', 'Sentinel updated.'); - } catch (\Throwable $e) { - return handleError($e, $this); - } finally { - $this->checkSyncStatus(); - } - } - - public function restartSentinel($notification = true) - { - try { - $this->validate(); - $this->validate([ - 'server.settings.sentinel_custom_url' => 'required|url', - ]); - $this->server->settings->save(); - $this->server->restartSentinel(async: false); - if ($notification) { - $this->dispatch('success', 'Sentinel restarted.'); - } - } catch (\Throwable $e) { - return handleError($e, $this); - } - } - - public function revalidate() - { - $this->revalidate = true; - } - - public function checkLocalhostConnection() - { - $this->submit(); - ['uptime' => $uptime, 'error' => $error] = $this->server->validateConnection(); - if ($uptime) { - $this->dispatch('success', 'Server is reachable.'); - $this->server->settings->is_reachable = true; - $this->server->settings->is_usable = true; - $this->server->settings->save(); - $this->dispatch('proxyStatusUpdated'); - } else { - $this->dispatch('error', 'Server is not reachable.', 'Please validate your configuration and connection.

Check this documentation for further help.

Error: '.$error); - - return; - } - } - - public function validateServer($install = true) - { - $this->server->update([ - 'validation_logs' => null, - ]); - $this->dispatch('init', $install); - } - - public function submit() - { - try { - if (isCloud() && ! isDev()) { - $this->validate(); - $this->validate([ - 'server.ip' => 'required', - ]); - } else { - $this->validate(); - } - $uniqueIPs = Server::all()->reject(function (Server $server) { - return $server->id === $this->server->id; - })->pluck('ip')->toArray(); - if (in_array($this->server->ip, $uniqueIPs)) { - $this->dispatch('error', 'IP address is already in use by another team.'); - - return; - } - refresh_server_connection($this->server->privateKey); - $this->server->settings->wildcard_domain = $this->wildcard_domain; - $currentTimezone = $this->server->settings->getOriginal('server_timezone'); - $newTimezone = $this->server->settings->server_timezone; - if ($currentTimezone !== $newTimezone || $currentTimezone === '') { - $this->server->settings->server_timezone = $newTimezone; - } - $this->server->settings->save(); - $this->server->save(); - - $this->dispatch('success', 'Server updated.'); - } catch (\Throwable $e) { - return handleError($e, $this); - } - } -} diff --git a/resources/views/livewire/server/form.blade.php b/resources/views/livewire/server/form.blade.php deleted file mode 100644 index 9ee45c131..000000000 --- a/resources/views/livewire/server/form.blade.php +++ /dev/null @@ -1,226 +0,0 @@ -
-
-
-

General

- @if ($server->id === 0) - - @else - Save - @if ($server->isFunctional()) - - Validate & configure - - - - - Revalidate server - - - @endif - @endif -
- @if ($server->isFunctional()) - Server is reachable and validated. - @else - You can't use this server until it is validated. - @endif - @if ((!$server->settings->is_reachable || !$server->settings->is_usable) && $server->id !== 0) - - Validate & configure - - - - - Validate Server & Install Docker Engine - - - @if ($server->validation_logs) -

Previous Validation Logs

-
- {!! $server->validation_logs !!} -
- @endif - @endif - @if ((!$server->settings->is_reachable || !$server->settings->is_usable) && $server->id === 0) - - Validate Server - - @endif - @if ($server->isForceDisabled() && isCloud()) -
The system has disabled the server because you have exceeded the - number of servers for which you have paid.
- @endif -
-
- - - @if (!$server->settings->is_swarm_worker && !$server->settings->is_build_server) - - @endif - -
-
- -
- - -
-
-
-
- - -
-
-
- - - - -
-
- -
-
-
- -
- @if (!$server->isLocalhost()) -
- -
- - @if (!$server->isBuildServer() && !$server->settings->is_cloudflare_tunnel) -

Swarm (experimental)

-
Read the docs here. -
-
- @if ($server->settings->is_swarm_worker) - - @else - - @endif - - @if ($server->settings->is_swarm_manager) - - @else - - @endif -
- @endif - @endif -
-
-
- @if ($server->isFunctional() && !$server->isSwarm() && !$server->isBuildServer()) -
-
-

Sentinel

- @if ($server->isSentinelEnabled()) -
- @if ($server->isSentinelLive()) - - Save - Restart - @else - - Save - Sync - @endif -
- @endif -
-
-
Experimental feature
-
- - @if ($server->isSentinelEnabled()) - - - @else - - - @endif -
- @if ($server->isSentinelEnabled()) -
- - Regenerate -
- - - -
-
- - - -
-
- @endif -
-
- @endif - -