. * * @package LibreNMS * @link http://librenms.org * @copyright 2023 Tony Murray * @author Tony Murray */ namespace LibreNMS\OS; use Illuminate\Support\Collection; use LibreNMS\Interfaces\Discovery\VminfoDiscovery; use LibreNMS\OS\Traits\VminfoLibvirt; use LibreNMS\OS\Traits\VminfoVmware; class Linux extends Shared\Unix implements VminfoDiscovery { // NOTE: Only Linux specific stuff should go here, most things should be in Unix use VminfoLibvirt, VminfoVmware { VminfoLibvirt::discoverVminfo as discoverLibvirtVminfo; VminfoVmware::discoverVmInfo as discoverVmwareVminfo; } public function discoverVmInfo(): Collection { $vms = $this->discoverLibvirtVminfo(); if ($vms->isNotEmpty()) { return $vms; } echo PHP_EOL; return $this->discoverVmwareVminfo(); } }