From ea584902ec6a491ec3b706f46859476577f15e19 Mon Sep 17 00:00:00 2001 From: elmariss <53705290+YaRissi@users.noreply.github.com> Date: Mon, 13 Oct 2025 22:21:35 +0200 Subject: [PATCH 01/47] feat: add CPU vendor information to server types in Hetzner integration --- app/Livewire/Server/New/ByHetzner.php | 23 +++++++++++++++++++ .../livewire/server/new/by-hetzner.blade.php | 9 +++++--- 2 files changed, 29 insertions(+), 3 deletions(-) diff --git a/app/Livewire/Server/New/ByHetzner.php b/app/Livewire/Server/New/ByHetzner.php index f3368b4eb..9033df6a8 100644 --- a/app/Livewire/Server/New/ByHetzner.php +++ b/app/Livewire/Server/New/ByHetzner.php @@ -290,6 +290,23 @@ private function loadHetznerData(string $token) } } + private function getCpuVendorInfo(array $serverType): array + { + $name = strtolower($serverType['name'] ?? ''); + + if (str_starts_with($name, 'ccx')) { + return ['vendor_info' => 'AMD Milan EPYC™']; + } elseif (str_starts_with($name, 'cpx')) { + return ['vendor_info' => 'AMD EPYC™']; + } elseif (str_starts_with($name, 'cx')) { + return ['vendor_info' => 'Intel® Xeon®']; + } elseif (str_starts_with($name, 'cax')) { + return ['vendor_info' => 'Ampere® Altra®']; + } + + return ['vendor_info' => null]; + } + public function getAvailableServerTypesProperty() { ray('Getting available server types', [ @@ -311,6 +328,12 @@ public function getAvailableServerTypesProperty() return in_array($this->selected_location, $locationNames); }) + ->map(function ($serverType) { + $cpuInfo = $this->getCpuVendorInfo($serverType); + $serverType['cpu_vendor_info'] = $cpuInfo['vendor_info']; + + return $serverType; + }) ->values() ->toArray(); diff --git a/resources/views/livewire/server/new/by-hetzner.blade.php b/resources/views/livewire/server/new/by-hetzner.blade.php index 4e9bcedc2..f33136e0e 100644 --- a/resources/views/livewire/server/new/by-hetzner.blade.php +++ b/resources/views/livewire/server/new/by-hetzner.blade.php @@ -68,11 +68,14 @@ @foreach ($this->availableServerTypes as $serverType)