]> xenbits.xensource.com Git - libvirt.git/commitdiff
docs: add page describing goals for host platform version support
authorDaniel P. Berrangé <berrange@redhat.com>
Tue, 3 Apr 2018 14:53:17 +0000 (15:53 +0100)
committerDaniel P. Berrangé <berrange@redhat.com>
Mon, 9 Apr 2018 14:15:03 +0000 (15:15 +0100)
Described how we decide which host platforms to support for libvirt,
which in turn makes it easier to decide when a platform / software
version can be dropped.

Reviewed-by: Andrea Bolognani <abologna@redhat.com>
Reviewed-by: John Ferlan <jferlan@redhat.com>
Reviewed-by: Pavel Hrdina <phrdina@redhat.com>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
docs/index.html.in
docs/platforms.html.in [new file with mode: 0644]

index 1b3a7a3db657e7c40a4f98110b71f053225e78e2..4783c39e3c70dbbea80ec265e648a343c179da69 100644 (file)
@@ -28,7 +28,7 @@
         The libvirt project:
       </p>
       <ul>
-        <li>is a toolkit to manage virtualization hosts</li>
+        <li>is a toolkit to manage <a href="platforms.html.in">virtualization platforms</a></li>
         <li>is accessible from C, Python, Perl, Java and more</li>
         <li>is licensed under open source licenses</li>
         <li>supports <a href="drvqemu.html">KVM</a>,
diff --git a/docs/platforms.html.in b/docs/platforms.html.in
new file mode 100644 (file)
index 0000000..0489c60
--- /dev/null
@@ -0,0 +1,106 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html>
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <body>
+    <h1>Supported host platforms</h1>
+
+    <ul id="toc"></ul>
+
+    <h2>Build targets</h2>
+
+    <p>
+      Libvirt drivers aim to support building and executing on multiple
+      host OS platforms. This document outlines which platforms are the
+      major build targets. These platforms are used as the basis for deciding
+      upon the minimum required versions of 3rd party software libvirt depends
+      on. If a platform is not listed here, it does not imply that libvirt
+      won't work. If an unlisted platform has comparable software versions
+      to a listed platform, there is every expectation that it will work.
+      Bug reports are welcome for problems encountered on unlisted platforms
+      unless they are clearly older vintage than what is described here.
+    </p>
+
+    <p>
+      Note that when considering software versions shipped in distros as
+      support targets, libvirt considers only the version number, and assumes
+      the features in that distro match the upstream release with the same
+      version. In other words, if a distro backports extra features to the
+      software in their distro, libvirt upstream code will not add explicit
+      support for those backports, unless the feature is auto-detectable in
+      a manner that works for the upstream releases too.
+    </p>
+
+    <p>
+      The Repology site is a useful resource to identify currently shipped
+      versions of software in various operating systems, though it does not
+      cover all distros listed below.
+    </p>
+
+    <ul>
+      <li><a href="https://repology.org/metapackage/libvirt/versions">libvirt</a></li>
+      <li><a href="https://repology.org/metapackage/qemu/versions">qemu</a></li>
+      <li><a href="https://repology.org/metapackage/qemu/versions">qemu-kvm</a></li>
+    </ul>
+
+
+    <h3>Linux OS</h3>
+
+    <p>
+      For distributions with frequent, short-lifetime releases, the project
+      will aim to support all versions that are not end of life by their
+      respective vendors. For the purposes of identifying supported software
+      versions, the project will look at Fedora, Ubuntu, and openSUSE distros.
+      Other short-lifetime distros will be assumed to ship similar software
+      versions.
+    </p>
+
+    <p>
+      For distributions with long-lifetime releases, the project will aim to
+      support the most recent major version at all times. Support for the
+      previous major version will be dropped 2 years after the new major
+      version is released. For the purposes of identifying supported software
+      versions, the project will look at RHEL, Debian, Ubuntu LTS, and SLES
+      distros. Other long-lifetime distros will be assumed to ship similar
+      software versions.
+    </p>
+
+    <h3>Windows</h3>
+
+    <p>
+      The project supports building with current versions of the MinGW
+      toolchain, hosted on Linux.
+    </p>
+
+    <h3>macOS</h3>
+
+    <p>
+      The project supports building with the current version of macOS,
+      with the current homebrew package set available.
+    </p>
+
+    <h3>FreeBSD</h3>
+
+    <p>
+      The project aims to support the most recent major version
+      at all times. Support for the previous major version will
+      be dropped 2 years after the new major version is released.
+    </p>
+
+    <h2>Virtualization platforms</h2>
+
+    <p>
+      For <a href="drivers.html">hypervisor drivers</a> which execute
+      locally (QEMU, LXC, VZ, libxl, etc), the set of supported operating
+      system platforms listed above will inform choices as to the minimum
+      required versions of 3rd party libraries and hypervisor management
+      APIs.
+    </p>
+    <p>
+      If a hypervisor is not commonly shipped directly by any distro
+      listed above, (VMware ESX, HyperV, VZ), the project aims to
+      support versions up to 5 years, or until the vendor discontinues
+      support, whichever comes first.
+    </p>
+
+  </body>
+</html>