diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml
index e80122bd007..f8dcee80945 100644
--- a/.github/workflows/main.yml
+++ b/.github/workflows/main.yml
@@ -7,9 +7,6 @@ on:
- 'doc/**'
- '.github/workflows/hugo.yml'
pull_request:
- paths-ignore:
- - 'doc/**'
- - '.github/workflows/hugo.yml'
schedule:
# run daily, this refreshes the cache
- cron: "13 2 * * *"
diff --git a/.github/workflows/other.yml b/.github/workflows/other.yml
index 90d6f57a2d0..7cac6522c2c 100644
--- a/.github/workflows/other.yml
+++ b/.github/workflows/other.yml
@@ -7,9 +7,6 @@ on:
- 'doc/**'
- '.github/workflows/hugo.yml'
pull_request:
- paths-ignore:
- - 'doc/**'
- - '.github/workflows/hugo.yml'
schedule:
# run daily, this refreshes the cache
- cron: "13 2 * * *"
diff --git a/doc/README.md b/doc/README.md
index a2d2c7f531d..3ee8a74c6d6 100644
--- a/doc/README.md
+++ b/doc/README.md
@@ -1,41 +1,32 @@
-# Quick start guide:
+# Quick start guide
-- Visit https://xapi-project.github.io/new-docs/ to view the current documentation.
+- Visit to view the current documentation.
## Required software
The docs use Hugo and the [Hugo Relearn theme](https://mcshelby.github.io/hugo-theme-relearn),
an enhanced fork of the popular Hugo Learn theme.
-### Compatible versions
+### Supported versions of Hugo and the Hugo Relearn theme
-Due to a number of gradual changes in Hugo and Relearn,
-the docs are currently only compatible with specific older versions of Hugo and Relearn.
+Hugo Relearn 7.3.2 is currently used (defined by a git tag in `doc/go.mod`).
-Hugo v0.121.0 to ~v0.127.0 (the current version of the Ubuntu `snap` is too recent)
-- Fixes to support newer versions are forthcoming.
-
-Hugo Relearn 5.24.0 (defined by a git tag in doc/go.mod)
-- Note: Hugo Relearn >= 5.25 currently trigger additional warnings due to deprecations.
-- Further updates fix this situation are forthcoming step by step.
-
-Hugo Relearn >= 5.24.0 and < 6.x are expected to work:
-- https://mcshelby.github.io/hugo-theme-relearn/introduction/releasenotes/5/index.html#5-24-0
-- Breaking changes in Relearn 6.0.0:
- https://mcshelby.github.io/hugo-theme-relearn/introduction/releasenotes/6/#6-0-0
+- The minimum Hugo version required by the Relearn theme is 0.126.0.
+- The current Ubuntu `snap` (which provides 0.142.0) also works.
## Installation
-- Install Hugo; follow the guidance on https://gohugo.io/getting-started/installing.
- You'll need to install Go as well: see https://go.dev/
- - Hugo installation is described at https://gohugo.io/installation
- - On Ubuntu 24.04, the version installed by `apt` works.
- - On Ubuntu 22.04 and older:
- - `apt-get install hugo` would install a version that is too old.
- - `sudo snap install hugo` installs a too recent version
+- Install Hugo 0.126 or newer (required by the Hugo Relearn theme)
+ follow the guidance on .
+ You'll need to install Go as well: see
+ - On Ubuntu, use the `snap` package:
+ - `sudo snap install hugo` installs the current version
+ `apt-get install hugo` would install a version that is too old,
+ (this applies up to Ubuntu 24.04)
- To install Hugo from source, you need a recent `golang-1.2x` compiler:
- On Ubuntu 22.04, this can be done with:
+
```bash
sudo apt install golang-1.23-go
# Add it to your path, assuming your .local/bin/ is early in your PATH:
@@ -47,13 +38,67 @@ Hugo Relearn >= 5.24.0 and < 6.x are expected to work:
## Development
- Run a local server: `hugo server`
-- Open a browser at http://127.0.0.1:1313/new-docs/
+- Open a browser at
- Add content to `doc/content/`:
- Documents are written in Markdown.
- - Please wrap lines in paragraphs to make review and diffs easier to read.
- - The menu hierarchy comes mostly from the directory structure in `content/`.
+ - Please wrap lines in paragraphs to make reviews more manageable.
+ - The menu hierarchy comes mainly from the directory structure in `content/`.
- A file called `_index.md` is needed in a directory to define a new level in the menu.
- - To set the page title which is also used for the main menu,
+ - To set the page title,
[use the front matter](https://gohugo.io/content-management/front-matter/).
- - For a page that has images or other stuff included, it is best to create a new directory. Put the contents in a `index.md` file (no `_`) and the related files next to it. See https://gohugo.io/content-management/organization/ for more information.
- - Look at https://mcshelby.github.io/hugo-theme-relearn/ for more information about what the Relearn theme offers, including some handy "shortcodes".
+ - For a page that has images or other stuff included, it is best to create a new directory:
+ Put the contents in an `index.md` file (no `_`) and the related files next to it.
+ See for more information.
+
+ See for more information about
+ the features of the Relearn theme, including handy "shortcodes".
+
+Note: When switching versions, before re-generating the documentation using
+`hugo server`, delete the previously generated static site using `rm -r docs/public`.
+
+### Notes for supporting current versions of Hugo and the Relearn theme
+
+Backported fixes to support newer Hugo versions:
+
+- `layouts/partials/header.html`, it fixes:
+ ```js
+ ERROR deprecated: .Sites.First was deprecated in Hugo v0.127.0 and will be removed in Hugo 0.143.0. Use .Sites.Default instead.
+ ```
+- `layouts/partials/menu.html`, it fixes:
+ ```js
+ ERROR deprecated: .Site.IsMultiLingual was deprecated in Hugo v0.124.0 and will be removed in Hugo 0.143.0. Use hugo.IsMultilingual instead.
+ ```
+
+The fixes for those issues were backported from the Hugo Relearn v7.x.x theme.
+When updating to Hugo Relearn 7.x.x, please remove them (if possible).
+
+#### Tips when upgradubg to newer Hugo Relearn versions
+
+Check the release notes of the Hugo Relearn theme for breaking changes:
+https://mcshelby.github.io/hugo-theme-relearn/introduction/releasenotes
+
+These pages might need review when making changes as their content is
+generated by layouts/partials/content.html:
+
+- XenAPI Reference:
+- XenAPI Releases:
+
+For a summary of the partials supported by the Hugo Relearn theme, see:
+https://mcshelby.github.io/hugo-theme-relearn/configuration/customization/partials
+
+Hint: For upgrading the Hugo Relearn theme, you can use:
+
+```bash
+cd doc; hugo mod get -u github.com/McShelby/hugo-theme-relearn@7.4.0
+```
+
+#### Summary
+
+Hugo >= 0.126 and the Hugo Relearn >= 7.3.2 are supported to render the docs.
+
+#### References
+
+- Changes with Relearn 6.x:
+
+- Breaking changes with Relearn 7.x:
+
diff --git a/doc/content/design/_index.md b/doc/content/design/_index.md
index e90cfc7b21f..f1400bd0150 100644
--- a/doc/content/design/_index.md
+++ b/doc/content/design/_index.md
@@ -1,6 +1,6 @@
+++
title = "Design Documents"
-menuTitle = "Designs"
+linkTitle = "Designs"
+++
{{< design_docs_list >}}
diff --git a/doc/content/toolstack/_index.md b/doc/content/toolstack/_index.md
index 22d0109b24f..170eccb135b 100644
--- a/doc/content/toolstack/_index.md
+++ b/doc/content/toolstack/_index.md
@@ -1,6 +1,6 @@
---
title: The XAPI Toolstack
-menuTitle: The Toolstack
+linkTitle: The Toolstack
weight: 10
---
diff --git a/doc/content/toolstack/features/events/index.md b/doc/content/toolstack/features/events/index.md
index 3da4b6a35f7..3d76d4db927 100644
--- a/doc/content/toolstack/features/events/index.md
+++ b/doc/content/toolstack/features/events/index.md
@@ -1,6 +1,6 @@
+++
title = "Event handling in the Control Plane - Xapi, Xenopsd and Xenstore"
-menuTitle = "Event handling"
+linkTitle = "Event handling"
+++
Introduction
diff --git a/doc/content/xapi/cli/_index.md b/doc/content/xapi/cli/_index.md
index d2aba33e30d..6715e7288c0 100644
--- a/doc/content/xapi/cli/_index.md
+++ b/doc/content/xapi/cli/_index.md
@@ -1,6 +1,6 @@
+++
title = "XE CLI architecture"
-menuTitle = "CLI"
+linkTitle = "CLI"
+++
{{% notice info %}}
diff --git a/doc/content/xapi/memory/index.md b/doc/content/xapi/memory/index.md
index c36f8b953ba..ac38836621c 100644
--- a/doc/content/xapi/memory/index.md
+++ b/doc/content/xapi/memory/index.md
@@ -1,6 +1,6 @@
+++
title = "Host memory accounting"
-menuTitle = "Memory"
+linkTitle = "Memory"
+++
Memory is used for many things:
diff --git a/doc/content/xapi/storage/_index.md b/doc/content/xapi/storage/_index.md
index 009ceabd4bd..ded2fd95c00 100644
--- a/doc/content/xapi/storage/_index.md
+++ b/doc/content/xapi/storage/_index.md
@@ -1,6 +1,6 @@
+++
title = "XAPI's Storage Layers"
-menuTitle = "Storage"
+linkTitle = "Storage"
+++
{{% notice info %}}
diff --git a/doc/content/xapi/walkthroughs/_index.md b/doc/content/xapi/walkthroughs/_index.md
index ad9d2377875..bd6db5eba99 100644
--- a/doc/content/xapi/walkthroughs/_index.md
+++ b/doc/content/xapi/walkthroughs/_index.md
@@ -1,6 +1,6 @@
+++
title = "XAPI requests walk-throughs"
-menuTitle = "Walk-throughs"
+linkTitle = "Walk-throughs"
+++
Let's detail the handling process of an XML request within XAPI.
diff --git a/doc/content/xapi/walkthroughs/migration_overview.md b/doc/content/xapi/walkthroughs/migration_overview.md
index 7af061574f7..7ac65c2b2c0 100644
--- a/doc/content/xapi/walkthroughs/migration_overview.md
+++ b/doc/content/xapi/walkthroughs/migration_overview.md
@@ -1,6 +1,6 @@
+++
title = "From RPC migration request to xapi internals"
-menuTitle = "How XAPI handles migration request"
+linkTitle = "How XAPI handles migration request"
+++
## Overview
diff --git a/doc/content/xen-api/classes/_index.html b/doc/content/xen-api/classes/_index.html
index 01a5748de6f..052130a4d7d 100644
--- a/doc/content/xen-api/classes/_index.html
+++ b/doc/content/xen-api/classes/_index.html
@@ -1,7 +1,5 @@
+++
title = "XenAPI Reference"
-layout = "class"
-type = "xenapi"
weight = 100
+++
diff --git a/doc/content/xen-api/classes/auth.md b/doc/content/xen-api/classes/auth.md
index a060dd1d283..30ac1e1b7b1 100644
--- a/doc/content/xen-api/classes/auth.md
+++ b/doc/content/xen-api/classes/auth.md
@@ -1,6 +1,4 @@
+++
title = "auth"
-layout = "class"
-type = "xenapi"
class = "auth"
+++
diff --git a/doc/content/xen-api/classes/blob.md b/doc/content/xen-api/classes/blob.md
index ce2b8e49ddb..39e7f77d056 100644
--- a/doc/content/xen-api/classes/blob.md
+++ b/doc/content/xen-api/classes/blob.md
@@ -1,6 +1,4 @@
+++
title = "blob"
-layout = "class"
-type = "xenapi"
class = "blob"
+++
diff --git a/doc/content/xen-api/classes/bond.md b/doc/content/xen-api/classes/bond.md
index f3dd3616299..674922ecbe9 100644
--- a/doc/content/xen-api/classes/bond.md
+++ b/doc/content/xen-api/classes/bond.md
@@ -1,6 +1,4 @@
+++
title = "Bond"
-layout = "class"
-type = "xenapi"
class = "Bond"
+++
diff --git a/doc/content/xen-api/classes/certificate.md b/doc/content/xen-api/classes/certificate.md
index 48a1cd7cb95..171c95b3362 100644
--- a/doc/content/xen-api/classes/certificate.md
+++ b/doc/content/xen-api/classes/certificate.md
@@ -1,6 +1,4 @@
+++
title = "Certificate"
-layout = "class"
-type = "xenapi"
class = "Certificate"
+++
diff --git a/doc/content/xen-api/classes/cluster.md b/doc/content/xen-api/classes/cluster.md
index 6e32b167835..ef265c7a238 100644
--- a/doc/content/xen-api/classes/cluster.md
+++ b/doc/content/xen-api/classes/cluster.md
@@ -1,6 +1,4 @@
+++
title = "Cluster"
-layout = "class"
-type = "xenapi"
class = "Cluster"
+++
diff --git a/doc/content/xen-api/classes/cluster_host.md b/doc/content/xen-api/classes/cluster_host.md
index 6adb361945f..8113c388cc0 100644
--- a/doc/content/xen-api/classes/cluster_host.md
+++ b/doc/content/xen-api/classes/cluster_host.md
@@ -1,6 +1,4 @@
+++
title = "Cluster_host"
-layout = "class"
-type = "xenapi"
class = "Cluster_host"
+++
diff --git a/doc/content/xen-api/classes/console.md b/doc/content/xen-api/classes/console.md
index 6e8128740f4..dd768572abd 100644
--- a/doc/content/xen-api/classes/console.md
+++ b/doc/content/xen-api/classes/console.md
@@ -1,6 +1,4 @@
+++
title = "console"
-layout = "class"
-type = "xenapi"
class = "console"
+++
diff --git a/doc/content/xen-api/classes/crashdump.md b/doc/content/xen-api/classes/crashdump.md
index 254004162c2..413924b0be4 100644
--- a/doc/content/xen-api/classes/crashdump.md
+++ b/doc/content/xen-api/classes/crashdump.md
@@ -1,6 +1,4 @@
+++
title = "crashdump"
-layout = "class"
-type = "xenapi"
class = "crashdump"
+++
diff --git a/doc/content/xen-api/classes/data_source.md b/doc/content/xen-api/classes/data_source.md
index 34385021861..6dd7c1d6042 100644
--- a/doc/content/xen-api/classes/data_source.md
+++ b/doc/content/xen-api/classes/data_source.md
@@ -1,6 +1,4 @@
+++
title = "data_source"
-layout = "class"
-type = "xenapi"
class = "data_source"
+++
diff --git a/doc/content/xen-api/classes/dr_task.md b/doc/content/xen-api/classes/dr_task.md
index f7f9d440396..645389d50d0 100644
--- a/doc/content/xen-api/classes/dr_task.md
+++ b/doc/content/xen-api/classes/dr_task.md
@@ -1,6 +1,4 @@
+++
title = "DR_task"
-layout = "class"
-type = "xenapi"
class = "DR_task"
+++
diff --git a/doc/content/xen-api/classes/event.md b/doc/content/xen-api/classes/event.md
index 6db19e81829..ce830e722e3 100644
--- a/doc/content/xen-api/classes/event.md
+++ b/doc/content/xen-api/classes/event.md
@@ -1,6 +1,4 @@
+++
title = "event"
-layout = "class"
-type = "xenapi"
class = "event"
+++
diff --git a/doc/content/xen-api/classes/feature.md b/doc/content/xen-api/classes/feature.md
index 806a2bc79e6..6a42a22df0d 100644
--- a/doc/content/xen-api/classes/feature.md
+++ b/doc/content/xen-api/classes/feature.md
@@ -1,6 +1,4 @@
+++
title = "Feature"
-layout = "class"
-type = "xenapi"
class = "Feature"
+++
diff --git a/doc/content/xen-api/classes/gpu_group.md b/doc/content/xen-api/classes/gpu_group.md
index 31fe2e0b4a6..c123638408c 100644
--- a/doc/content/xen-api/classes/gpu_group.md
+++ b/doc/content/xen-api/classes/gpu_group.md
@@ -1,6 +1,4 @@
+++
title = "GPU_group"
-layout = "class"
-type = "xenapi"
class = "GPU_group"
+++
diff --git a/doc/content/xen-api/classes/host.md b/doc/content/xen-api/classes/host.md
index b09bb8a4be4..b8163b8f53d 100644
--- a/doc/content/xen-api/classes/host.md
+++ b/doc/content/xen-api/classes/host.md
@@ -1,6 +1,4 @@
+++
title = "host"
-layout = "class"
-type = "xenapi"
class = "host"
+++
diff --git a/doc/content/xen-api/classes/host_cpu.md b/doc/content/xen-api/classes/host_cpu.md
index da8378ab7f2..22eee9817ca 100644
--- a/doc/content/xen-api/classes/host_cpu.md
+++ b/doc/content/xen-api/classes/host_cpu.md
@@ -1,6 +1,4 @@
+++
title = "host_cpu"
-layout = "class"
-type = "xenapi"
class = "host_cpu"
+++
diff --git a/doc/content/xen-api/classes/host_crashdump.md b/doc/content/xen-api/classes/host_crashdump.md
index a2f27859d2d..4023c0c362f 100644
--- a/doc/content/xen-api/classes/host_crashdump.md
+++ b/doc/content/xen-api/classes/host_crashdump.md
@@ -1,6 +1,4 @@
+++
title = "host_crashdump"
-layout = "class"
-type = "xenapi"
class = "host_crashdump"
+++
diff --git a/doc/content/xen-api/classes/host_metrics.md b/doc/content/xen-api/classes/host_metrics.md
index ab37f618e75..63f7feb9903 100644
--- a/doc/content/xen-api/classes/host_metrics.md
+++ b/doc/content/xen-api/classes/host_metrics.md
@@ -1,6 +1,4 @@
+++
title = "host_metrics"
-layout = "class"
-type = "xenapi"
class = "host_metrics"
+++
diff --git a/doc/content/xen-api/classes/host_patch.md b/doc/content/xen-api/classes/host_patch.md
index 20bc1227762..3a32b3efebe 100644
--- a/doc/content/xen-api/classes/host_patch.md
+++ b/doc/content/xen-api/classes/host_patch.md
@@ -1,6 +1,4 @@
+++
title = "host_patch"
-layout = "class"
-type = "xenapi"
class = "host_patch"
+++
diff --git a/doc/content/xen-api/classes/lvhd.md b/doc/content/xen-api/classes/lvhd.md
index d3958d33560..cefe1ef3ba6 100644
--- a/doc/content/xen-api/classes/lvhd.md
+++ b/doc/content/xen-api/classes/lvhd.md
@@ -1,6 +1,4 @@
+++
title = "LVHD"
-layout = "class"
-type = "xenapi"
class = "LVHD"
+++
diff --git a/doc/content/xen-api/classes/message.md b/doc/content/xen-api/classes/message.md
index 1ef5d1e8a32..74c592de356 100644
--- a/doc/content/xen-api/classes/message.md
+++ b/doc/content/xen-api/classes/message.md
@@ -1,6 +1,4 @@
+++
title = "message"
-layout = "class"
-type = "xenapi"
class = "message"
+++
diff --git a/doc/content/xen-api/classes/network.md b/doc/content/xen-api/classes/network.md
index 3e167722de5..083150563f8 100644
--- a/doc/content/xen-api/classes/network.md
+++ b/doc/content/xen-api/classes/network.md
@@ -1,6 +1,4 @@
+++
title = "network"
-layout = "class"
-type = "xenapi"
class = "network"
+++
diff --git a/doc/content/xen-api/classes/network_sriov.md b/doc/content/xen-api/classes/network_sriov.md
index 847608bdf52..6942b127237 100644
--- a/doc/content/xen-api/classes/network_sriov.md
+++ b/doc/content/xen-api/classes/network_sriov.md
@@ -1,6 +1,4 @@
+++
title = "network_sriov"
-layout = "class"
-type = "xenapi"
class = "network_sriov"
+++
diff --git a/doc/content/xen-api/classes/observer.md b/doc/content/xen-api/classes/observer.md
index 47f90c9277f..1492f025ca3 100644
--- a/doc/content/xen-api/classes/observer.md
+++ b/doc/content/xen-api/classes/observer.md
@@ -1,6 +1,4 @@
+++
title = "Observer"
-layout = "class"
-type = "xenapi"
class = "Observer"
+++
diff --git a/doc/content/xen-api/classes/pbd.md b/doc/content/xen-api/classes/pbd.md
index 288accce471..e31756fc937 100644
--- a/doc/content/xen-api/classes/pbd.md
+++ b/doc/content/xen-api/classes/pbd.md
@@ -1,6 +1,4 @@
+++
title = "PBD"
-layout = "class"
-type = "xenapi"
class = "PBD"
+++
diff --git a/doc/content/xen-api/classes/pci.md b/doc/content/xen-api/classes/pci.md
index b6acc9804d7..ac9c9d5b682 100644
--- a/doc/content/xen-api/classes/pci.md
+++ b/doc/content/xen-api/classes/pci.md
@@ -1,6 +1,4 @@
+++
title = "PCI"
-layout = "class"
-type = "xenapi"
class = "PCI"
+++
diff --git a/doc/content/xen-api/classes/pgpu.md b/doc/content/xen-api/classes/pgpu.md
index 324dce2c379..7203ef1a16f 100644
--- a/doc/content/xen-api/classes/pgpu.md
+++ b/doc/content/xen-api/classes/pgpu.md
@@ -1,6 +1,4 @@
+++
title = "PGPU"
-layout = "class"
-type = "xenapi"
class = "PGPU"
+++
diff --git a/doc/content/xen-api/classes/pif.md b/doc/content/xen-api/classes/pif.md
index 19f5750424f..833a6cd9b57 100644
--- a/doc/content/xen-api/classes/pif.md
+++ b/doc/content/xen-api/classes/pif.md
@@ -1,6 +1,4 @@
+++
title = "PIF"
-layout = "class"
-type = "xenapi"
class = "PIF"
+++
diff --git a/doc/content/xen-api/classes/pif_metrics.md b/doc/content/xen-api/classes/pif_metrics.md
index aab7773a008..53ea62e8e6d 100644
--- a/doc/content/xen-api/classes/pif_metrics.md
+++ b/doc/content/xen-api/classes/pif_metrics.md
@@ -1,6 +1,4 @@
+++
title = "PIF_metrics"
-layout = "class"
-type = "xenapi"
class = "PIF_metrics"
+++
diff --git a/doc/content/xen-api/classes/pool.md b/doc/content/xen-api/classes/pool.md
index 5f6d1576bc9..e358a0884f2 100644
--- a/doc/content/xen-api/classes/pool.md
+++ b/doc/content/xen-api/classes/pool.md
@@ -1,6 +1,4 @@
+++
title = "pool"
-layout = "class"
-type = "xenapi"
class = "pool"
+++
diff --git a/doc/content/xen-api/classes/pool_patch.md b/doc/content/xen-api/classes/pool_patch.md
index 709bbf85b18..a63e88b2b3c 100644
--- a/doc/content/xen-api/classes/pool_patch.md
+++ b/doc/content/xen-api/classes/pool_patch.md
@@ -1,6 +1,4 @@
+++
title = "pool_patch"
-layout = "class"
-type = "xenapi"
class = "pool_patch"
+++
diff --git a/doc/content/xen-api/classes/pool_update.md b/doc/content/xen-api/classes/pool_update.md
index 77bb73c3fa2..d507bda61c3 100644
--- a/doc/content/xen-api/classes/pool_update.md
+++ b/doc/content/xen-api/classes/pool_update.md
@@ -1,6 +1,4 @@
+++
title = "pool_update"
-layout = "class"
-type = "xenapi"
class = "pool_update"
+++
diff --git a/doc/content/xen-api/classes/probe_result.md b/doc/content/xen-api/classes/probe_result.md
index 3d33aac858d..af3da303c68 100644
--- a/doc/content/xen-api/classes/probe_result.md
+++ b/doc/content/xen-api/classes/probe_result.md
@@ -1,6 +1,4 @@
+++
title = "probe_result"
-layout = "class"
-type = "xenapi"
class = "probe_result"
+++
diff --git a/doc/content/xen-api/classes/pusb.md b/doc/content/xen-api/classes/pusb.md
index 773e0a9a9c0..b47c53a5f8d 100644
--- a/doc/content/xen-api/classes/pusb.md
+++ b/doc/content/xen-api/classes/pusb.md
@@ -1,6 +1,4 @@
+++
title = "PUSB"
-layout = "class"
-type = "xenapi"
class = "PUSB"
+++
diff --git a/doc/content/xen-api/classes/pvs_cache_storage.md b/doc/content/xen-api/classes/pvs_cache_storage.md
index 0042b0a34cf..0e1341946d9 100644
--- a/doc/content/xen-api/classes/pvs_cache_storage.md
+++ b/doc/content/xen-api/classes/pvs_cache_storage.md
@@ -1,6 +1,4 @@
+++
title = "PVS_cache_storage"
-layout = "class"
-type = "xenapi"
class = "PVS_cache_storage"
+++
diff --git a/doc/content/xen-api/classes/pvs_proxy.md b/doc/content/xen-api/classes/pvs_proxy.md
index 862a9c178d7..fea3ed692cd 100644
--- a/doc/content/xen-api/classes/pvs_proxy.md
+++ b/doc/content/xen-api/classes/pvs_proxy.md
@@ -1,6 +1,4 @@
+++
title = "PVS_proxy"
-layout = "class"
-type = "xenapi"
class = "PVS_proxy"
+++
diff --git a/doc/content/xen-api/classes/pvs_server.md b/doc/content/xen-api/classes/pvs_server.md
index 2c5ee2a2094..287065d67ec 100644
--- a/doc/content/xen-api/classes/pvs_server.md
+++ b/doc/content/xen-api/classes/pvs_server.md
@@ -1,6 +1,4 @@
+++
title = "PVS_server"
-layout = "class"
-type = "xenapi"
class = "PVS_server"
+++
diff --git a/doc/content/xen-api/classes/pvs_site.md b/doc/content/xen-api/classes/pvs_site.md
index bae8e112494..f6cb279845b 100644
--- a/doc/content/xen-api/classes/pvs_site.md
+++ b/doc/content/xen-api/classes/pvs_site.md
@@ -1,6 +1,4 @@
+++
title = "PVS_site"
-layout = "class"
-type = "xenapi"
class = "PVS_site"
+++
diff --git a/doc/content/xen-api/classes/repository.md b/doc/content/xen-api/classes/repository.md
index acde83ee5a2..f28deec1865 100644
--- a/doc/content/xen-api/classes/repository.md
+++ b/doc/content/xen-api/classes/repository.md
@@ -1,6 +1,4 @@
+++
title = "Repository"
-layout = "class"
-type = "xenapi"
class = "Repository"
+++
diff --git a/doc/content/xen-api/classes/role.md b/doc/content/xen-api/classes/role.md
index a56e2afae58..bd64ed4edf8 100644
--- a/doc/content/xen-api/classes/role.md
+++ b/doc/content/xen-api/classes/role.md
@@ -1,6 +1,4 @@
+++
title = "role"
-layout = "class"
-type = "xenapi"
class = "role"
+++
diff --git a/doc/content/xen-api/classes/sdn_controller.md b/doc/content/xen-api/classes/sdn_controller.md
index af9de2fe360..96493dba449 100644
--- a/doc/content/xen-api/classes/sdn_controller.md
+++ b/doc/content/xen-api/classes/sdn_controller.md
@@ -1,6 +1,4 @@
+++
title = "SDN_controller"
-layout = "class"
-type = "xenapi"
class = "SDN_controller"
+++
diff --git a/doc/content/xen-api/classes/secret.md b/doc/content/xen-api/classes/secret.md
index 3616ab5db39..cd9e6a2dd05 100644
--- a/doc/content/xen-api/classes/secret.md
+++ b/doc/content/xen-api/classes/secret.md
@@ -1,6 +1,4 @@
+++
title = "secret"
-layout = "class"
-type = "xenapi"
class = "secret"
+++
diff --git a/doc/content/xen-api/classes/session.md b/doc/content/xen-api/classes/session.md
index 80d8097a967..4e4fb963245 100644
--- a/doc/content/xen-api/classes/session.md
+++ b/doc/content/xen-api/classes/session.md
@@ -1,6 +1,4 @@
+++
title = "session"
-layout = "class"
-type = "xenapi"
class = "session"
+++
diff --git a/doc/content/xen-api/classes/sm.md b/doc/content/xen-api/classes/sm.md
index a97241e19fd..9f3542b214d 100644
--- a/doc/content/xen-api/classes/sm.md
+++ b/doc/content/xen-api/classes/sm.md
@@ -1,6 +1,4 @@
+++
title = "SM"
-layout = "class"
-type = "xenapi"
class = "SM"
+++
diff --git a/doc/content/xen-api/classes/sr.md b/doc/content/xen-api/classes/sr.md
index 8fff1ac99a8..69126587167 100644
--- a/doc/content/xen-api/classes/sr.md
+++ b/doc/content/xen-api/classes/sr.md
@@ -1,6 +1,4 @@
+++
title = "SR"
-layout = "class"
-type = "xenapi"
class = "SR"
+++
diff --git a/doc/content/xen-api/classes/sr_stat.md b/doc/content/xen-api/classes/sr_stat.md
index 53dcfc43b60..0ccebbfd47c 100644
--- a/doc/content/xen-api/classes/sr_stat.md
+++ b/doc/content/xen-api/classes/sr_stat.md
@@ -1,6 +1,4 @@
+++
title = "sr_stat"
-layout = "class"
-type = "xenapi"
class = "sr_stat"
+++
diff --git a/doc/content/xen-api/classes/subject.md b/doc/content/xen-api/classes/subject.md
index 437272b411a..2825b205de9 100644
--- a/doc/content/xen-api/classes/subject.md
+++ b/doc/content/xen-api/classes/subject.md
@@ -1,6 +1,4 @@
+++
title = "subject"
-layout = "class"
-type = "xenapi"
class = "subject"
+++
diff --git a/doc/content/xen-api/classes/task.md b/doc/content/xen-api/classes/task.md
index 298f1b36a25..4107f6d30bf 100644
--- a/doc/content/xen-api/classes/task.md
+++ b/doc/content/xen-api/classes/task.md
@@ -1,6 +1,4 @@
+++
title = "task"
-layout = "class"
-type = "xenapi"
class = "task"
+++
diff --git a/doc/content/xen-api/classes/tunnel.md b/doc/content/xen-api/classes/tunnel.md
index b82846cc41d..3b723352fc3 100644
--- a/doc/content/xen-api/classes/tunnel.md
+++ b/doc/content/xen-api/classes/tunnel.md
@@ -1,6 +1,4 @@
+++
title = "tunnel"
-layout = "class"
-type = "xenapi"
class = "tunnel"
+++
diff --git a/doc/content/xen-api/classes/usb_group.md b/doc/content/xen-api/classes/usb_group.md
index e28f2583c32..ec085fa7759 100644
--- a/doc/content/xen-api/classes/usb_group.md
+++ b/doc/content/xen-api/classes/usb_group.md
@@ -1,6 +1,4 @@
+++
title = "USB_group"
-layout = "class"
-type = "xenapi"
class = "USB_group"
+++
diff --git a/doc/content/xen-api/classes/user.md b/doc/content/xen-api/classes/user.md
index 556c4345d4c..9387d859df4 100644
--- a/doc/content/xen-api/classes/user.md
+++ b/doc/content/xen-api/classes/user.md
@@ -1,6 +1,4 @@
+++
title = "user"
-layout = "class"
-type = "xenapi"
class = "user"
+++
diff --git a/doc/content/xen-api/classes/vbd.md b/doc/content/xen-api/classes/vbd.md
index a10380558a1..b652496aaef 100644
--- a/doc/content/xen-api/classes/vbd.md
+++ b/doc/content/xen-api/classes/vbd.md
@@ -1,6 +1,4 @@
+++
title = "VBD"
-layout = "class"
-type = "xenapi"
class = "VBD"
+++
diff --git a/doc/content/xen-api/classes/vbd_metrics.md b/doc/content/xen-api/classes/vbd_metrics.md
index 20e29144e60..1d3b91f3b7d 100644
--- a/doc/content/xen-api/classes/vbd_metrics.md
+++ b/doc/content/xen-api/classes/vbd_metrics.md
@@ -1,6 +1,4 @@
+++
title = "VBD_metrics"
-layout = "class"
-type = "xenapi"
class = "VBD_metrics"
+++
diff --git a/doc/content/xen-api/classes/vdi.md b/doc/content/xen-api/classes/vdi.md
index 8cc6c820029..1b22be0f472 100644
--- a/doc/content/xen-api/classes/vdi.md
+++ b/doc/content/xen-api/classes/vdi.md
@@ -1,6 +1,4 @@
+++
title = "VDI"
-layout = "class"
-type = "xenapi"
class = "VDI"
+++
diff --git a/doc/content/xen-api/classes/vdi_nbd_server_info.md b/doc/content/xen-api/classes/vdi_nbd_server_info.md
index 8f173cc191c..0af6760263a 100644
--- a/doc/content/xen-api/classes/vdi_nbd_server_info.md
+++ b/doc/content/xen-api/classes/vdi_nbd_server_info.md
@@ -1,6 +1,4 @@
+++
title = "vdi_nbd_server_info"
-layout = "class"
-type = "xenapi"
class = "vdi_nbd_server_info"
+++
diff --git a/doc/content/xen-api/classes/vgpu.md b/doc/content/xen-api/classes/vgpu.md
index beb2dfca11d..0d0fd04a1c3 100644
--- a/doc/content/xen-api/classes/vgpu.md
+++ b/doc/content/xen-api/classes/vgpu.md
@@ -1,6 +1,4 @@
+++
title = "VGPU"
-layout = "class"
-type = "xenapi"
class = "VGPU"
+++
diff --git a/doc/content/xen-api/classes/vgpu_type.md b/doc/content/xen-api/classes/vgpu_type.md
index a1bc3b2cdbe..e8bb4fa438a 100644
--- a/doc/content/xen-api/classes/vgpu_type.md
+++ b/doc/content/xen-api/classes/vgpu_type.md
@@ -1,6 +1,4 @@
+++
title = "VGPU_type"
-layout = "class"
-type = "xenapi"
class = "VGPU_type"
+++
diff --git a/doc/content/xen-api/classes/vif.md b/doc/content/xen-api/classes/vif.md
index b8e3fce73b2..7a99a2c7495 100644
--- a/doc/content/xen-api/classes/vif.md
+++ b/doc/content/xen-api/classes/vif.md
@@ -1,6 +1,4 @@
+++
title = "VIF"
-layout = "class"
-type = "xenapi"
class = "VIF"
+++
diff --git a/doc/content/xen-api/classes/vif_metrics.md b/doc/content/xen-api/classes/vif_metrics.md
index d6819cc23f4..1272c385fdd 100644
--- a/doc/content/xen-api/classes/vif_metrics.md
+++ b/doc/content/xen-api/classes/vif_metrics.md
@@ -1,6 +1,4 @@
+++
title = "VIF_metrics"
-layout = "class"
-type = "xenapi"
class = "VIF_metrics"
+++
diff --git a/doc/content/xen-api/classes/vlan.md b/doc/content/xen-api/classes/vlan.md
index ee1107f1546..f1faa0e6cdb 100644
--- a/doc/content/xen-api/classes/vlan.md
+++ b/doc/content/xen-api/classes/vlan.md
@@ -1,6 +1,4 @@
+++
title = "VLAN"
-layout = "class"
-type = "xenapi"
class = "VLAN"
+++
diff --git a/doc/content/xen-api/classes/vm.md b/doc/content/xen-api/classes/vm.md
index 275f9d2eeb9..01dec030148 100644
--- a/doc/content/xen-api/classes/vm.md
+++ b/doc/content/xen-api/classes/vm.md
@@ -1,6 +1,4 @@
+++
title = "VM"
-layout = "class"
-type = "xenapi"
class = "VM"
+++
diff --git a/doc/content/xen-api/classes/vm_appliance.md b/doc/content/xen-api/classes/vm_appliance.md
index 437ff3d4720..8a128457dcd 100644
--- a/doc/content/xen-api/classes/vm_appliance.md
+++ b/doc/content/xen-api/classes/vm_appliance.md
@@ -1,6 +1,4 @@
+++
title = "VM_appliance"
-layout = "class"
-type = "xenapi"
class = "VM_appliance"
+++
diff --git a/doc/content/xen-api/classes/vm_guest_metrics.md b/doc/content/xen-api/classes/vm_guest_metrics.md
index 03515aee30e..d8ae97c506c 100644
--- a/doc/content/xen-api/classes/vm_guest_metrics.md
+++ b/doc/content/xen-api/classes/vm_guest_metrics.md
@@ -1,6 +1,4 @@
+++
title = "VM_guest_metrics"
-layout = "class"
-type = "xenapi"
class = "VM_guest_metrics"
+++
diff --git a/doc/content/xen-api/classes/vm_metrics.md b/doc/content/xen-api/classes/vm_metrics.md
index 2cd77d89d0e..2ccfbf9cbfa 100644
--- a/doc/content/xen-api/classes/vm_metrics.md
+++ b/doc/content/xen-api/classes/vm_metrics.md
@@ -1,6 +1,4 @@
+++
title = "VM_metrics"
-layout = "class"
-type = "xenapi"
class = "VM_metrics"
+++
diff --git a/doc/content/xen-api/classes/vmpp.md b/doc/content/xen-api/classes/vmpp.md
index 2857e423b6c..be9a544de6f 100644
--- a/doc/content/xen-api/classes/vmpp.md
+++ b/doc/content/xen-api/classes/vmpp.md
@@ -1,6 +1,4 @@
+++
title = "VMPP"
-layout = "class"
-type = "xenapi"
class = "VMPP"
+++
diff --git a/doc/content/xen-api/classes/vmss.md b/doc/content/xen-api/classes/vmss.md
index c3469401bc0..52d4f011443 100644
--- a/doc/content/xen-api/classes/vmss.md
+++ b/doc/content/xen-api/classes/vmss.md
@@ -1,6 +1,4 @@
+++
title = "VMSS"
-layout = "class"
-type = "xenapi"
class = "VMSS"
+++
diff --git a/doc/content/xen-api/classes/vtpm.md b/doc/content/xen-api/classes/vtpm.md
index d550a8b1508..4f715cd445c 100644
--- a/doc/content/xen-api/classes/vtpm.md
+++ b/doc/content/xen-api/classes/vtpm.md
@@ -1,6 +1,4 @@
+++
title = "VTPM"
-layout = "class"
-type = "xenapi"
class = "VTPM"
+++
diff --git a/doc/content/xen-api/classes/vusb.md b/doc/content/xen-api/classes/vusb.md
index 68f3d7572a9..3b341728d10 100644
--- a/doc/content/xen-api/classes/vusb.md
+++ b/doc/content/xen-api/classes/vusb.md
@@ -1,6 +1,4 @@
+++
title = "VUSB"
-layout = "class"
-type = "xenapi"
class = "VUSB"
+++
diff --git a/doc/content/xen-api/releases/1.250.0.md b/doc/content/xen-api/releases/1.250.0.md
index 82dd803d464..a00727a3115 100644
--- a/doc/content/xen-api/releases/1.250.0.md
+++ b/doc/content/xen-api/releases/1.250.0.md
@@ -1,7 +1,5 @@
+++
title = "XAPI 1.250.0"
-layout = "release"
-type = "xenapi"
release = "1.250.0"
weight = 38
+++
diff --git a/doc/content/xen-api/releases/1.257.0.md b/doc/content/xen-api/releases/1.257.0.md
index dbc387522b1..04c544610c4 100644
--- a/doc/content/xen-api/releases/1.257.0.md
+++ b/doc/content/xen-api/releases/1.257.0.md
@@ -1,7 +1,5 @@
+++
title = "XAPI 1.257.0"
-layout = "release"
-type = "xenapi"
release = "1.257.0"
weight = 37
+++
diff --git a/doc/content/xen-api/releases/1.271.0.md b/doc/content/xen-api/releases/1.271.0.md
index a315596be00..89f32474edb 100644
--- a/doc/content/xen-api/releases/1.271.0.md
+++ b/doc/content/xen-api/releases/1.271.0.md
@@ -1,7 +1,5 @@
+++
title = "XAPI 1.271.0"
-layout = "release"
-type = "xenapi"
release = "1.271.0"
weight = 36
+++
diff --git a/doc/content/xen-api/releases/1.290.0.md b/doc/content/xen-api/releases/1.290.0.md
index b013eba0625..67f3dd5e701 100644
--- a/doc/content/xen-api/releases/1.290.0.md
+++ b/doc/content/xen-api/releases/1.290.0.md
@@ -1,7 +1,5 @@
+++
title = "XAPI 1.290.0"
-layout = "release"
-type = "xenapi"
release = "1.290.0"
weight = 35
+++
diff --git a/doc/content/xen-api/releases/1.294.0.md b/doc/content/xen-api/releases/1.294.0.md
index 28b7eb16705..53c1ea05ef4 100644
--- a/doc/content/xen-api/releases/1.294.0.md
+++ b/doc/content/xen-api/releases/1.294.0.md
@@ -1,7 +1,5 @@
+++
title = "XAPI 1.294.0"
-layout = "release"
-type = "xenapi"
release = "1.294.0"
weight = 34
+++
diff --git a/doc/content/xen-api/releases/1.297.0.md b/doc/content/xen-api/releases/1.297.0.md
index 5722a2e10ef..c7cbc1f32cb 100644
--- a/doc/content/xen-api/releases/1.297.0.md
+++ b/doc/content/xen-api/releases/1.297.0.md
@@ -1,7 +1,5 @@
+++
title = "XAPI 1.297.0"
-layout = "release"
-type = "xenapi"
release = "1.297.0"
weight = 33
+++
diff --git a/doc/content/xen-api/releases/1.298.0.md b/doc/content/xen-api/releases/1.298.0.md
index 230a6832557..039b570ff98 100644
--- a/doc/content/xen-api/releases/1.298.0.md
+++ b/doc/content/xen-api/releases/1.298.0.md
@@ -1,7 +1,5 @@
+++
title = "XAPI 1.298.0"
-layout = "release"
-type = "xenapi"
release = "1.298.0"
weight = 32
+++
diff --git a/doc/content/xen-api/releases/1.301.0.md b/doc/content/xen-api/releases/1.301.0.md
index 1b6f714bc05..88c8a06c477 100644
--- a/doc/content/xen-api/releases/1.301.0.md
+++ b/doc/content/xen-api/releases/1.301.0.md
@@ -1,7 +1,5 @@
+++
title = "XAPI 1.301.0"
-layout = "release"
-type = "xenapi"
release = "1.301.0"
weight = 31
+++
diff --git a/doc/content/xen-api/releases/1.303.0.md b/doc/content/xen-api/releases/1.303.0.md
index 62d65595ddb..2b397d97b47 100644
--- a/doc/content/xen-api/releases/1.303.0.md
+++ b/doc/content/xen-api/releases/1.303.0.md
@@ -1,7 +1,5 @@
+++
title = "XAPI 1.303.0"
-layout = "release"
-type = "xenapi"
release = "1.303.0"
weight = 30
+++
diff --git a/doc/content/xen-api/releases/1.304.0.md b/doc/content/xen-api/releases/1.304.0.md
index 19bc602d1af..a8b89022e2c 100644
--- a/doc/content/xen-api/releases/1.304.0.md
+++ b/doc/content/xen-api/releases/1.304.0.md
@@ -1,7 +1,5 @@
+++
title = "XAPI 1.304.0"
-layout = "release"
-type = "xenapi"
release = "1.304.0"
weight = 29
+++
diff --git a/doc/content/xen-api/releases/1.307.0.md b/doc/content/xen-api/releases/1.307.0.md
index ae89b065da1..7c76be810c9 100644
--- a/doc/content/xen-api/releases/1.307.0.md
+++ b/doc/content/xen-api/releases/1.307.0.md
@@ -1,7 +1,5 @@
+++
title = "XAPI 1.307.0"
-layout = "release"
-type = "xenapi"
release = "1.307.0"
weight = 28
+++
diff --git a/doc/content/xen-api/releases/1.313.0.md b/doc/content/xen-api/releases/1.313.0.md
index 3a0cd73b6bc..4fdebc59468 100644
--- a/doc/content/xen-api/releases/1.313.0.md
+++ b/doc/content/xen-api/releases/1.313.0.md
@@ -1,7 +1,5 @@
+++
title = "XAPI 1.313.0"
-layout = "release"
-type = "xenapi"
release = "1.313.0"
weight = 27
+++
diff --git a/doc/content/xen-api/releases/1.318.0.md b/doc/content/xen-api/releases/1.318.0.md
index 4661e86a0f8..ea347927b74 100644
--- a/doc/content/xen-api/releases/1.318.0.md
+++ b/doc/content/xen-api/releases/1.318.0.md
@@ -1,7 +1,5 @@
+++
title = "XAPI 1.318.0"
-layout = "release"
-type = "xenapi"
release = "1.318.0"
weight = 26
+++
diff --git a/doc/content/xen-api/releases/1.329.0.md b/doc/content/xen-api/releases/1.329.0.md
index 501551c8692..04b3df321af 100644
--- a/doc/content/xen-api/releases/1.329.0.md
+++ b/doc/content/xen-api/releases/1.329.0.md
@@ -1,7 +1,5 @@
+++
title = "XAPI 1.329.0"
-layout = "release"
-type = "xenapi"
release = "1.329.0"
weight = 25
+++
diff --git a/doc/content/xen-api/releases/21.2.0.md b/doc/content/xen-api/releases/21.2.0.md
index 7346972ca00..449f231c0d3 100644
--- a/doc/content/xen-api/releases/21.2.0.md
+++ b/doc/content/xen-api/releases/21.2.0.md
@@ -1,7 +1,5 @@
+++
title = "XAPI 21.2.0"
-layout = "release"
-type = "xenapi"
release = "21.2.0"
weight = 24
+++
diff --git a/doc/content/xen-api/releases/21.3.0.md b/doc/content/xen-api/releases/21.3.0.md
index 041df4bea38..1347d74fa55 100644
--- a/doc/content/xen-api/releases/21.3.0.md
+++ b/doc/content/xen-api/releases/21.3.0.md
@@ -1,7 +1,5 @@
+++
title = "XAPI 21.3.0"
-layout = "release"
-type = "xenapi"
release = "21.3.0"
weight = 23
+++
diff --git a/doc/content/xen-api/releases/21.4.0.md b/doc/content/xen-api/releases/21.4.0.md
index f16971c9283..54b8b825e4d 100644
--- a/doc/content/xen-api/releases/21.4.0.md
+++ b/doc/content/xen-api/releases/21.4.0.md
@@ -1,7 +1,5 @@
+++
title = "XAPI 21.4.0"
-layout = "release"
-type = "xenapi"
release = "21.4.0"
weight = 22
+++
diff --git a/doc/content/xen-api/releases/22.12.0.md b/doc/content/xen-api/releases/22.12.0.md
index be20881b901..eaaee0e50df 100644
--- a/doc/content/xen-api/releases/22.12.0.md
+++ b/doc/content/xen-api/releases/22.12.0.md
@@ -1,7 +1,5 @@
+++
title = "XAPI 22.12.0"
-layout = "release"
-type = "xenapi"
release = "22.12.0"
weight = 20
+++
diff --git a/doc/content/xen-api/releases/22.16.0.md b/doc/content/xen-api/releases/22.16.0.md
index 8d0c5c0f0d5..5554443ff45 100644
--- a/doc/content/xen-api/releases/22.16.0.md
+++ b/doc/content/xen-api/releases/22.16.0.md
@@ -1,7 +1,5 @@
+++
title = "XAPI 22.16.0"
-layout = "release"
-type = "xenapi"
release = "22.16.0"
weight = 19
+++
diff --git a/doc/content/xen-api/releases/22.19.0.md b/doc/content/xen-api/releases/22.19.0.md
index 024ab29aced..991b2d020fb 100644
--- a/doc/content/xen-api/releases/22.19.0.md
+++ b/doc/content/xen-api/releases/22.19.0.md
@@ -1,7 +1,5 @@
+++
title = "XAPI 22.19.0"
-layout = "release"
-type = "xenapi"
release = "22.19.0"
weight = 18
+++
diff --git a/doc/content/xen-api/releases/22.20.0.md b/doc/content/xen-api/releases/22.20.0.md
index 3e7c63b0e0b..3231e04bc23 100644
--- a/doc/content/xen-api/releases/22.20.0.md
+++ b/doc/content/xen-api/releases/22.20.0.md
@@ -1,7 +1,5 @@
+++
title = "XAPI 22.20.0"
-layout = "release"
-type = "xenapi"
release = "22.20.0"
weight = 17
+++
diff --git a/doc/content/xen-api/releases/22.26.0.md b/doc/content/xen-api/releases/22.26.0.md
index cbc29030ef6..aaeada0de68 100644
--- a/doc/content/xen-api/releases/22.26.0.md
+++ b/doc/content/xen-api/releases/22.26.0.md
@@ -1,7 +1,5 @@
+++
title = "XAPI 22.26.0"
-layout = "release"
-type = "xenapi"
release = "22.26.0"
weight = 16
+++
diff --git a/doc/content/xen-api/releases/22.27.0.md b/doc/content/xen-api/releases/22.27.0.md
index dd9ef24ace7..e4e5b4a2412 100644
--- a/doc/content/xen-api/releases/22.27.0.md
+++ b/doc/content/xen-api/releases/22.27.0.md
@@ -1,7 +1,5 @@
+++
title = "XAPI 22.27.0"
-layout = "release"
-type = "xenapi"
release = "22.27.0"
weight = 15
+++
diff --git a/doc/content/xen-api/releases/22.33.0.md b/doc/content/xen-api/releases/22.33.0.md
index 34c8533210a..edc354b5702 100644
--- a/doc/content/xen-api/releases/22.33.0.md
+++ b/doc/content/xen-api/releases/22.33.0.md
@@ -1,7 +1,5 @@
+++
title = "XAPI 22.33.0"
-layout = "release"
-type = "xenapi"
release = "22.33.0"
weight = 14
+++
diff --git a/doc/content/xen-api/releases/22.37.0.md b/doc/content/xen-api/releases/22.37.0.md
index 9cebac8ab21..388b49aebeb 100644
--- a/doc/content/xen-api/releases/22.37.0.md
+++ b/doc/content/xen-api/releases/22.37.0.md
@@ -1,7 +1,5 @@
+++
title = "XAPI 22.37.0"
-layout = "release"
-type = "xenapi"
release = "22.37.0"
weight = 13
+++
diff --git a/doc/content/xen-api/releases/22.5.0.md b/doc/content/xen-api/releases/22.5.0.md
index 1103d45c800..3fe5b8128cd 100644
--- a/doc/content/xen-api/releases/22.5.0.md
+++ b/doc/content/xen-api/releases/22.5.0.md
@@ -1,7 +1,5 @@
+++
title = "XAPI 22.5.0"
-layout = "release"
-type = "xenapi"
release = "22.5.0"
weight = 21
+++
diff --git a/doc/content/xen-api/releases/23.1.0.md b/doc/content/xen-api/releases/23.1.0.md
index 8f100cb1cd5..956b29464bb 100644
--- a/doc/content/xen-api/releases/23.1.0.md
+++ b/doc/content/xen-api/releases/23.1.0.md
@@ -1,7 +1,5 @@
+++
title = "XAPI 23.1.0"
-layout = "release"
-type = "xenapi"
release = "23.1.0"
weight = 12
+++
diff --git a/doc/content/xen-api/releases/23.14.0.md b/doc/content/xen-api/releases/23.14.0.md
index c812f55d41f..6d3634b132e 100644
--- a/doc/content/xen-api/releases/23.14.0.md
+++ b/doc/content/xen-api/releases/23.14.0.md
@@ -1,7 +1,5 @@
+++
title = "XAPI 23.14.0"
-layout = "release"
-type = "xenapi"
release = "23.14.0"
weight = 10
+++
diff --git a/doc/content/xen-api/releases/23.18.0.md b/doc/content/xen-api/releases/23.18.0.md
index 0aa6ec85d11..b874f14883f 100644
--- a/doc/content/xen-api/releases/23.18.0.md
+++ b/doc/content/xen-api/releases/23.18.0.md
@@ -1,7 +1,5 @@
+++
title = "XAPI 23.18.0"
-layout = "release"
-type = "xenapi"
release = "23.18.0"
weight = 9
+++
diff --git a/doc/content/xen-api/releases/23.25.0.md b/doc/content/xen-api/releases/23.25.0.md
index 4b5eeb7ff5d..fca5bde0e11 100644
--- a/doc/content/xen-api/releases/23.25.0.md
+++ b/doc/content/xen-api/releases/23.25.0.md
@@ -1,7 +1,5 @@
+++
title = "XAPI 23.25.0"
-layout = "release"
-type = "xenapi"
release = "23.25.0"
weight = 8
+++
diff --git a/doc/content/xen-api/releases/23.27.0.md b/doc/content/xen-api/releases/23.27.0.md
index 196d2899e52..5a8dd491bcd 100644
--- a/doc/content/xen-api/releases/23.27.0.md
+++ b/doc/content/xen-api/releases/23.27.0.md
@@ -1,7 +1,5 @@
+++
title = "XAPI 23.27.0"
-layout = "release"
-type = "xenapi"
release = "23.27.0"
weight = 7
+++
diff --git a/doc/content/xen-api/releases/23.30.0.md b/doc/content/xen-api/releases/23.30.0.md
index 350058f958f..8e5ebafc0eb 100644
--- a/doc/content/xen-api/releases/23.30.0.md
+++ b/doc/content/xen-api/releases/23.30.0.md
@@ -1,7 +1,5 @@
+++
title = "XAPI 23.30.0"
-layout = "release"
-type = "xenapi"
release = "23.30.0"
weight = 6
+++
diff --git a/doc/content/xen-api/releases/23.9.0.md b/doc/content/xen-api/releases/23.9.0.md
index db1bb6bdd49..5e8c3c266cb 100644
--- a/doc/content/xen-api/releases/23.9.0.md
+++ b/doc/content/xen-api/releases/23.9.0.md
@@ -1,7 +1,5 @@
+++
title = "XAPI 23.9.0"
-layout = "release"
-type = "xenapi"
release = "23.9.0"
weight = 11
+++
diff --git a/doc/content/xen-api/releases/24.0.0.md b/doc/content/xen-api/releases/24.0.0.md
index 8f754b4f3ff..ce6437782bd 100644
--- a/doc/content/xen-api/releases/24.0.0.md
+++ b/doc/content/xen-api/releases/24.0.0.md
@@ -1,7 +1,5 @@
+++
title = "XAPI 24.0.0"
-layout = "release"
-type = "xenapi"
release = "24.0.0"
weight = 5
+++
diff --git a/doc/content/xen-api/releases/24.10.0.md b/doc/content/xen-api/releases/24.10.0.md
index 0f3eb490311..3f6459cbbed 100644
--- a/doc/content/xen-api/releases/24.10.0.md
+++ b/doc/content/xen-api/releases/24.10.0.md
@@ -1,7 +1,5 @@
+++
title = "XAPI 24.10.0"
-layout = "release"
-type = "xenapi"
release = "24.10.0"
weight = 3
+++
diff --git a/doc/content/xen-api/releases/24.14.0.md b/doc/content/xen-api/releases/24.14.0.md
index 858f8119365..9d178cb434d 100644
--- a/doc/content/xen-api/releases/24.14.0.md
+++ b/doc/content/xen-api/releases/24.14.0.md
@@ -1,7 +1,5 @@
+++
title = "XAPI 24.14.0"
-layout = "release"
-type = "xenapi"
release = "24.14.0"
weight = 2
+++
diff --git a/doc/content/xen-api/releases/24.16.0.md b/doc/content/xen-api/releases/24.16.0.md
index 0852870afb2..a1451e87e11 100644
--- a/doc/content/xen-api/releases/24.16.0.md
+++ b/doc/content/xen-api/releases/24.16.0.md
@@ -1,7 +1,5 @@
+++
title = "XAPI 24.16.0"
-layout = "release"
-type = "xenapi"
release = "24.16.0"
weight = 1
+++
diff --git a/doc/content/xen-api/releases/24.3.0.md b/doc/content/xen-api/releases/24.3.0.md
index 8b94dae5839..49b0542b4e1 100644
--- a/doc/content/xen-api/releases/24.3.0.md
+++ b/doc/content/xen-api/releases/24.3.0.md
@@ -1,7 +1,5 @@
+++
title = "XAPI 24.3.0"
-layout = "release"
-type = "xenapi"
release = "24.3.0"
weight = 4
+++
diff --git a/doc/content/xen-api/releases/boston.md b/doc/content/xen-api/releases/boston.md
index a9c7f3ec670..0596d3c01b4 100644
--- a/doc/content/xen-api/releases/boston.md
+++ b/doc/content/xen-api/releases/boston.md
@@ -1,7 +1,5 @@
+++
title = "XenServer 6.0"
-layout = "release"
-type = "xenapi"
release = "boston"
weight = 60
+++
diff --git a/doc/content/xen-api/releases/clearwater-felton.md b/doc/content/xen-api/releases/clearwater-felton.md
index 5b96cf5bc23..a884963d384 100644
--- a/doc/content/xen-api/releases/clearwater-felton.md
+++ b/doc/content/xen-api/releases/clearwater-felton.md
@@ -1,7 +1,5 @@
+++
title = "XenServer 6.2 SP1 Hotfix 4"
-layout = "release"
-type = "xenapi"
release = "clearwater-felton"
weight = 55
+++
diff --git a/doc/content/xen-api/releases/clearwater-whetstone.md b/doc/content/xen-api/releases/clearwater-whetstone.md
index 7c08accf364..d8c1939aef6 100644
--- a/doc/content/xen-api/releases/clearwater-whetstone.md
+++ b/doc/content/xen-api/releases/clearwater-whetstone.md
@@ -1,7 +1,5 @@
+++
title = "XenServer 6.2 SP1 Hotfix 11"
-layout = "release"
-type = "xenapi"
release = "clearwater-whetstone"
weight = 54
+++
diff --git a/doc/content/xen-api/releases/clearwater.md b/doc/content/xen-api/releases/clearwater.md
index 8c27b5c340e..a87b6fb7ef8 100644
--- a/doc/content/xen-api/releases/clearwater.md
+++ b/doc/content/xen-api/releases/clearwater.md
@@ -1,7 +1,5 @@
+++
title = "XenServer 6.2"
-layout = "release"
-type = "xenapi"
release = "clearwater"
weight = 58
+++
diff --git a/doc/content/xen-api/releases/cowley.md b/doc/content/xen-api/releases/cowley.md
index 29f45a0eddc..80eccd0952b 100644
--- a/doc/content/xen-api/releases/cowley.md
+++ b/doc/content/xen-api/releases/cowley.md
@@ -1,7 +1,5 @@
+++
title = "XenServer 5.6 FP1"
-layout = "release"
-type = "xenapi"
release = "cowley"
weight = 61
+++
diff --git a/doc/content/xen-api/releases/cream.md b/doc/content/xen-api/releases/cream.md
index 7f47c267f76..ab9ee826efb 100644
--- a/doc/content/xen-api/releases/cream.md
+++ b/doc/content/xen-api/releases/cream.md
@@ -1,7 +1,5 @@
+++
title = "XenServer 6.5 SP1"
-layout = "release"
-type = "xenapi"
release = "cream"
weight = 52
+++
diff --git a/doc/content/xen-api/releases/creedence.md b/doc/content/xen-api/releases/creedence.md
index f0402dd697d..39eded10e39 100644
--- a/doc/content/xen-api/releases/creedence.md
+++ b/doc/content/xen-api/releases/creedence.md
@@ -1,7 +1,5 @@
+++
title = "XenServer 6.5"
-layout = "release"
-type = "xenapi"
release = "creedence"
weight = 53
+++
diff --git a/doc/content/xen-api/releases/dundee.md b/doc/content/xen-api/releases/dundee.md
index ce1fd600279..d7f131d953a 100644
--- a/doc/content/xen-api/releases/dundee.md
+++ b/doc/content/xen-api/releases/dundee.md
@@ -1,7 +1,5 @@
+++
title = "XenServer 7.0"
-layout = "release"
-type = "xenapi"
release = "dundee"
weight = 50
+++
diff --git a/doc/content/xen-api/releases/ely.md b/doc/content/xen-api/releases/ely.md
index 1371431e18f..959be86e0c1 100644
--- a/doc/content/xen-api/releases/ely.md
+++ b/doc/content/xen-api/releases/ely.md
@@ -1,7 +1,5 @@
+++
title = "XenServer 7.1"
-layout = "release"
-type = "xenapi"
release = "ely"
weight = 49
+++
diff --git a/doc/content/xen-api/releases/falcon.md b/doc/content/xen-api/releases/falcon.md
index 15ecde78810..a85a5ca3b73 100644
--- a/doc/content/xen-api/releases/falcon.md
+++ b/doc/content/xen-api/releases/falcon.md
@@ -1,7 +1,5 @@
+++
title = "XenServer 7.2"
-layout = "release"
-type = "xenapi"
release = "falcon"
weight = 48
+++
diff --git a/doc/content/xen-api/releases/george.md b/doc/content/xen-api/releases/george.md
index ef79369c327..6decc66f436 100644
--- a/doc/content/xen-api/releases/george.md
+++ b/doc/content/xen-api/releases/george.md
@@ -1,7 +1,5 @@
+++
title = "XenServer 5.5"
-layout = "release"
-type = "xenapi"
release = "george"
weight = 63
+++
diff --git a/doc/content/xen-api/releases/indigo.md b/doc/content/xen-api/releases/indigo.md
index cdb8b9cecf6..ab2cfb935ee 100644
--- a/doc/content/xen-api/releases/indigo.md
+++ b/doc/content/xen-api/releases/indigo.md
@@ -1,7 +1,5 @@
+++
title = "XenServer 6.5 SP1 Hotfix 31"
-layout = "release"
-type = "xenapi"
release = "indigo"
weight = 51
+++
diff --git a/doc/content/xen-api/releases/inverness.md b/doc/content/xen-api/releases/inverness.md
index 85560d9b161..e36b1b085fa 100644
--- a/doc/content/xen-api/releases/inverness.md
+++ b/doc/content/xen-api/releases/inverness.md
@@ -1,7 +1,5 @@
+++
title = "XenServer 7.3"
-layout = "release"
-type = "xenapi"
release = "inverness"
weight = 47
+++
diff --git a/doc/content/xen-api/releases/jura.md b/doc/content/xen-api/releases/jura.md
index 751b36460de..ac9a2c86707 100644
--- a/doc/content/xen-api/releases/jura.md
+++ b/doc/content/xen-api/releases/jura.md
@@ -1,7 +1,5 @@
+++
title = "XenServer 7.4"
-layout = "release"
-type = "xenapi"
release = "jura"
weight = 46
+++
diff --git a/doc/content/xen-api/releases/kolkata.md b/doc/content/xen-api/releases/kolkata.md
index 624757ac680..bc250e3de81 100644
--- a/doc/content/xen-api/releases/kolkata.md
+++ b/doc/content/xen-api/releases/kolkata.md
@@ -1,7 +1,5 @@
+++
title = "XenServer 7.5"
-layout = "release"
-type = "xenapi"
release = "kolkata"
weight = 45
+++
diff --git a/doc/content/xen-api/releases/lima.md b/doc/content/xen-api/releases/lima.md
index f95d0af2877..56933e611b1 100644
--- a/doc/content/xen-api/releases/lima.md
+++ b/doc/content/xen-api/releases/lima.md
@@ -1,7 +1,5 @@
+++
title = "XenServer 7.6"
-layout = "release"
-type = "xenapi"
release = "lima"
weight = 44
+++
diff --git a/doc/content/xen-api/releases/miami.md b/doc/content/xen-api/releases/miami.md
index 5ca0dc1e236..174c3d6ad20 100644
--- a/doc/content/xen-api/releases/miami.md
+++ b/doc/content/xen-api/releases/miami.md
@@ -1,7 +1,5 @@
+++
title = "XenServer 4.1"
-layout = "release"
-type = "xenapi"
release = "miami"
weight = 67
+++
diff --git a/doc/content/xen-api/releases/midnight-ride.md b/doc/content/xen-api/releases/midnight-ride.md
index 9a8dca612e5..435863e8ab0 100644
--- a/doc/content/xen-api/releases/midnight-ride.md
+++ b/doc/content/xen-api/releases/midnight-ride.md
@@ -1,7 +1,5 @@
+++
title = "XenServer 5.6"
-layout = "release"
-type = "xenapi"
release = "midnight-ride"
weight = 62
+++
diff --git a/doc/content/xen-api/releases/naples.md b/doc/content/xen-api/releases/naples.md
index 6c5bdfd30d3..9f1ec803247 100644
--- a/doc/content/xen-api/releases/naples.md
+++ b/doc/content/xen-api/releases/naples.md
@@ -1,7 +1,5 @@
+++
title = "Citrix Hypervisor 8.0"
-layout = "release"
-type = "xenapi"
release = "naples"
weight = 43
+++
diff --git a/doc/content/xen-api/releases/nile-preview.md b/doc/content/xen-api/releases/nile-preview.md
index 9b7eee9e675..8b528eb6ebf 100644
--- a/doc/content/xen-api/releases/nile-preview.md
+++ b/doc/content/xen-api/releases/nile-preview.md
@@ -1,7 +1,5 @@
+++
title = "XenServer 8 Preview"
-layout = "release"
-type = "xenapi"
release = "nile-preview"
weight = 39
+++
diff --git a/doc/content/xen-api/releases/orlando-update-1.md b/doc/content/xen-api/releases/orlando-update-1.md
index 2bcd4892b6d..09ec56dc1b1 100644
--- a/doc/content/xen-api/releases/orlando-update-1.md
+++ b/doc/content/xen-api/releases/orlando-update-1.md
@@ -1,7 +1,5 @@
+++
title = "XenServer 5.0 Update 1"
-layout = "release"
-type = "xenapi"
release = "orlando-update-1"
weight = 64
+++
diff --git a/doc/content/xen-api/releases/orlando.md b/doc/content/xen-api/releases/orlando.md
index 6d348d7d1ce..612e6784e37 100644
--- a/doc/content/xen-api/releases/orlando.md
+++ b/doc/content/xen-api/releases/orlando.md
@@ -1,7 +1,5 @@
+++
title = "XenServer 5.0"
-layout = "release"
-type = "xenapi"
release = "orlando"
weight = 65
+++
diff --git a/doc/content/xen-api/releases/quebec.md b/doc/content/xen-api/releases/quebec.md
index 72e56f85156..d5132830d63 100644
--- a/doc/content/xen-api/releases/quebec.md
+++ b/doc/content/xen-api/releases/quebec.md
@@ -1,7 +1,5 @@
+++
title = "Citrix Hypervisor 8.1"
-layout = "release"
-type = "xenapi"
release = "quebec"
weight = 42
+++
diff --git a/doc/content/xen-api/releases/rio.md b/doc/content/xen-api/releases/rio.md
index 2ab3a3c295e..b7676a616ff 100644
--- a/doc/content/xen-api/releases/rio.md
+++ b/doc/content/xen-api/releases/rio.md
@@ -1,7 +1,5 @@
+++
title = "XenServer 4.0"
-layout = "release"
-type = "xenapi"
release = "rio"
weight = 68
+++
diff --git a/doc/content/xen-api/releases/stockholm.md b/doc/content/xen-api/releases/stockholm.md
index 18a52ec9c8a..f79476e52fe 100644
--- a/doc/content/xen-api/releases/stockholm.md
+++ b/doc/content/xen-api/releases/stockholm.md
@@ -1,7 +1,5 @@
+++
title = "Citrix Hypervisor 8.2"
-layout = "release"
-type = "xenapi"
release = "stockholm"
weight = 41
+++
diff --git a/doc/content/xen-api/releases/stockholm_psr.md b/doc/content/xen-api/releases/stockholm_psr.md
index 17000a4c899..309ef81a273 100644
--- a/doc/content/xen-api/releases/stockholm_psr.md
+++ b/doc/content/xen-api/releases/stockholm_psr.md
@@ -1,7 +1,5 @@
+++
title = "Citrix Hypervisor 8.2 Hotfix 2"
-layout = "release"
-type = "xenapi"
release = "stockholm_psr"
weight = 40
+++
diff --git a/doc/content/xen-api/releases/symc.md b/doc/content/xen-api/releases/symc.md
index 9d1d20e7314..aee5b9dd6c5 100644
--- a/doc/content/xen-api/releases/symc.md
+++ b/doc/content/xen-api/releases/symc.md
@@ -1,7 +1,5 @@
+++
title = "XenServer 4.1.1"
-layout = "release"
-type = "xenapi"
release = "symc"
weight = 66
+++
diff --git a/doc/content/xen-api/releases/tampa.md b/doc/content/xen-api/releases/tampa.md
index b4182ff588b..c1a945fab28 100644
--- a/doc/content/xen-api/releases/tampa.md
+++ b/doc/content/xen-api/releases/tampa.md
@@ -1,7 +1,5 @@
+++
title = "XenServer 6.1"
-layout = "release"
-type = "xenapi"
release = "tampa"
weight = 59
+++
diff --git a/doc/content/xen-api/releases/vgpu-productisation.md b/doc/content/xen-api/releases/vgpu-productisation.md
index 76153a84ded..0b71d3f536f 100644
--- a/doc/content/xen-api/releases/vgpu-productisation.md
+++ b/doc/content/xen-api/releases/vgpu-productisation.md
@@ -1,7 +1,5 @@
+++
title = "XenServer 6.2 SP1"
-layout = "release"
-type = "xenapi"
release = "vgpu-productisation"
weight = 56
+++
diff --git a/doc/content/xen-api/releases/vgpu-tech-preview.md b/doc/content/xen-api/releases/vgpu-tech-preview.md
index e3d7dd13b32..717d81b7926 100644
--- a/doc/content/xen-api/releases/vgpu-tech-preview.md
+++ b/doc/content/xen-api/releases/vgpu-tech-preview.md
@@ -1,7 +1,5 @@
+++
title = "XenServer 6.2 SP1 Tech-Preview"
-layout = "release"
-type = "xenapi"
release = "vgpu-tech-preview"
weight = 57
+++
diff --git a/doc/content/xenopsd/walkthroughs/_index.md b/doc/content/xenopsd/walkthroughs/_index.md
index 291b80c6040..d54568dcbbf 100644
--- a/doc/content/xenopsd/walkthroughs/_index.md
+++ b/doc/content/xenopsd/walkthroughs/_index.md
@@ -1,6 +1,6 @@
+++
title = "Operation Walk-Throughs"
-menuTitle = "Walk-throughs"
+linkTitle = "Walk-throughs"
+++
Let's trace through interesting operations to see how the whole system
diff --git a/doc/content/xenopsd/walkthroughs/live-migration.md b/doc/content/xenopsd/walkthroughs/live-migration.md
index f465188132e..f0af797f85e 100644
--- a/doc/content/xenopsd/walkthroughs/live-migration.md
+++ b/doc/content/xenopsd/walkthroughs/live-migration.md
@@ -1,6 +1,6 @@
+++
title = "Live Migration Sequence Diagram"
-menuTitle = "Live Migration"
+linkTitle = "Live Migration"
+++
{{}}
diff --git a/doc/go.mod b/doc/go.mod
index 2e145daa17e..97e5ef0ad3d 100644
--- a/doc/go.mod
+++ b/doc/go.mod
@@ -2,4 +2,4 @@ module xapi-project.github.io
go 1.20
-require github.com/McShelby/hugo-theme-relearn v0.0.0-20231029175538-7ae1435626d7 // indirect
+require github.com/McShelby/hugo-theme-relearn v0.0.0-20250126200037-60bb1c65c5fc // indirect
diff --git a/doc/hugo.toml b/doc/hugo.toml
index d7eb93250e4..7b2dff698b4 100644
--- a/doc/hugo.toml
+++ b/doc/hugo.toml
@@ -12,11 +12,20 @@ assetsDir = "assets"
# The latest upstream version of hugo-theme-relearn needs hugo 0.121.0:
# https://mcshelby.github.io/hugo-theme-relearn/basics/requirements/index.html
[module.hugoVersion]
- min = "0.121.0"
+ min = "0.126.0"
+
+# Newer Hugo needs to set the renderer to `unsafe = true` to support the raw HTML
+# code that a number of pages intentionally use.
+# goldmark is already the default renderer. The only change is the flag for raw HTML:
+[markup]
+ defaultMarkdownHandler = 'goldmark'
+ [markup.goldmark]
+ [markup.goldmark.renderer]
+ unsafe = true
[outputs]
# Home and section pages should also have a print icon for the print view:
-home = [ "HTML", "RSS", "SEARCH", "PRINT"]
+home = [ "HTML", "RSS", "PRINT"]
section = [ "HTML", "RSS", "PRINT"]
[params]
diff --git a/doc/layouts/xenapi/class.html b/doc/layouts/partials/content.html
similarity index 82%
rename from doc/layouts/xenapi/class.html
rename to doc/layouts/partials/content.html
index 2c8f67f4c79..c0c377e2f5d 100644
--- a/doc/layouts/xenapi/class.html
+++ b/doc/layouts/partials/content.html
@@ -1,7 +1,12 @@
-{{- partial "header.html" . }}
-
+{{- /* Partial to generate the content of XenAPI class reference and release pages, see: */}}
+{{- /* https://mcshelby.github.io/hugo-theme-relearn/configuration/customization/partials/index.html */}}
+
+{{- /* XenAPI class reference pages define a class fontmatter */}}
+{{- /* For these, provide and generate their class reference content: */}}
+
+{{ .Content }}
+{{ $c := .Page.Params.class }}
+{{ with index (where $.Site.Data.xenapi "name" $c) 0 }}