Add support for Alibaba cloud on aarch64
[virt-what.git] / virt-what.in
index c6e4a1e..01e9aca 100644 (file)
@@ -192,6 +192,12 @@ if [ -f "${root}/.dockerenv" ] || [ -f "${root}/.dockerinit" ] || \
     echo docker
 fi
 
+# Check for OCI.
+if [ -e "${root}/proc/1/environ" ] &&
+    cat "${root}/proc/1/environ" | tr '\000' '\n' | grep -Eiq '^container=oci'; then
+    echo oci
+fi
+
 # Check for Podman.
 if [ -e "${root}/proc/1/environ" ] &&
     cat "${root}/proc/1/environ" | tr '\000' '\n' | grep -Eiq '^container=podman'; then
@@ -348,6 +354,11 @@ if ! "$skip_qemu_kvm"; then
         # This is for AWS Graviton (Arm) systems which don't have CPUID.
         echo kvm
         skip_lkvm=true
+    elif echo "$dmi" | grep -q 'Manufacturer: Alibaba Cloud' &&
+        echo "$dmi" | grep -q 'System is a virtual machine'; then
+        # This is for Alibaba Arm systems which don't have CPUID.
+        echo kvm
+        skip_lkvm=true
     elif echo "$dmi" | grep -q 'Manufacturer: QEMU'; then
         # The test for KVM above failed, so now we know we're
         # not using KVM acceleration.
@@ -451,3 +462,8 @@ if echo "$dmi" | grep -Eq 'Version: [0-9]+\.[0-9]+\.amazon'; then
 elif echo "$dmi" | grep -q 'Vendor: Amazon EC2'; then
     echo aws
 fi
+
+# UpCloud
+if echo "$dmi" | grep -q 'Manufacturer: UpCloud'; then
+    echo upcloud
+fi