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)