deleteApplication(); } elseif ($resource === 'Database') { $this->deleteDatabase(); } elseif ($resource === 'Service') { $this->deleteService(); } elseif ($resource === 'Server') { $this->deleteServer(); } } private function deleteServer() { $servers = Server::all(); if ($servers->count() === 0) { $this->error('There are no applications to delete.'); return; } $serversToDelete = multiselect( label: 'What server do you want to delete?', options: $servers->pluck('name', 'id')->sortKeys(), ); foreach ($serversToDelete as $server) { $toDelete = $servers->where('id', $server)->first(); if ($toDelete) { $this->info($toDelete); $confirmed = confirm("Are you sure you want to delete all selected resources?"); if (!$confirmed) { break; } $toDelete->delete(); } } } private function deleteApplication() { $applications = Application::all(); if ($applications->count() === 0) { $this->error('There are no applications to delete.'); return; } $applicationsToDelete = multiselect( 'What application do you want to delete?', $applications->pluck('name', 'id')->sortKeys(), ); foreach ($applicationsToDelete as $application) { $toDelete = $applications->where('id', $application)->first(); if ($toDelete) { $this->info($toDelete); $confirmed = confirm("Are you sure you want to delete all selected resources? "); if (!$confirmed) { break; } $toDelete->delete(); } } } private function deleteDatabase() { $databases = StandalonePostgresql::all(); if ($databases->count() === 0) { $this->error('There are no databases to delete.'); return; } $databasesToDelete = multiselect( 'What database do you want to delete?', $databases->pluck('name', 'id')->sortKeys(), ); foreach ($databasesToDelete as $database) { $toDelete = $databases->where('id', $database)->first(); if ($toDelete) { $this->info($toDelete); $confirmed = confirm("Are you sure you want to delete all selected resources?"); if (!$confirmed) { return; } $toDelete->delete(); } } } private function deleteService() { $services = Service::all(); if ($services->count() === 0) { $this->error('There are no services to delete.'); return; } $servicesToDelete = multiselect( 'What service do you want to delete?', $services->pluck('name', 'id')->sortKeys(), ); foreach ($servicesToDelete as $service) { $toDelete = $services->where('id', $service)->first(); if ($toDelete) { $this->info($toDelete); $confirmed = confirm("Are you sure you want to delete all selected resources?"); if (!$confirmed) { return; } $toDelete->delete(); } } } }