diff --git a/website/content/api-docs/ui.mdx b/website/content/api-docs/ui.mdx
index 71c5f5a02..675ffd491 100644
--- a/website/content/api-docs/ui.mdx
+++ b/website/content/api-docs/ui.mdx
@@ -498,7 +498,7 @@ This page lists all allocations for a CSI plugin. Each allocation includes the s
~> **Enterprise Only!** This feature depends on functionality only present in Nomad Autoscaler Enterprise.
-This page lists all recommendations surfaced by [dynamic application sizing](/docs/autoscaling#dynamic-application-sizing). This page will automatically redirect to the recommendation summary route for the first recommendation sorted by relevance.
+This page lists all recommendations surfaced by [dynamic application sizing](/tools/autoscaling#dynamic-application-sizing). This page will automatically redirect to the recommendation summary route for the first recommendation sorted by relevance.
Each recommendation in the list will contain information including the job and task group the recommendation is for, the time the recommendation was surfaced, the number of allocations impacted, the difference in CPU the recommendation suggests, the difference in memory the recommendation suggests, and the aggregate change in CPU and memory given the number of allocations impacted.
diff --git a/website/content/docs/ecosystem.mdx b/website/content/docs/ecosystem.mdx
index cf724e35a..eb3c05746 100644
--- a/website/content/docs/ecosystem.mdx
+++ b/website/content/docs/ecosystem.mdx
@@ -36,7 +36,7 @@ https://buildkite.com/works-with/hashicorp
#### Containerd
-https://www.nomadproject.io/docs/drivers/external/containerd
+https://www.nomadproject.io/plugins/drivers/community/containerd
#### Windows IIS
@@ -44,7 +44,7 @@ https://github.com/Roblox/nomad-driver-iis
#### Jailtask
-https://www.nomadproject.io/docs/drivers/external/jail-task-driver
+https://www.nomadproject.io/plugins/drivers/community/jail-task-driver
#### Pot
@@ -52,19 +52,19 @@ https://github.com/trivago/nomad-pot-driver
#### Singularity
-https://www.nomadproject.io/docs/drivers/external/singularity
+https://www.nomadproject.io/plugins/drivers/community/singularity
#### Firecracker
-https://www.nomadproject.io/docs/drivers/external/firecracker-task-driver
+https://www.nomadproject.io/plugins/drivers/community/firecracker-task-driver
#### Podman
-https://www.nomadproject.io/docs/drivers/podman
+https://www.nomadproject.io/plugins/drivers/podman
#### LXC
-https://www.nomadproject.io/docs/drivers/external/lxc
+https://www.nomadproject.io/plugins/drivers/community/lxc
### Application Definition & Image Build
diff --git a/website/content/docs/enterprise/index.mdx b/website/content/docs/enterprise/index.mdx
index 92fc96fb6..59175a3fd 100644
--- a/website/content/docs/enterprise/index.mdx
+++ b/website/content/docs/enterprise/index.mdx
@@ -173,6 +173,6 @@ Click [here](https://www.hashicorp.com/go/nomad-enterprise) to set up a demo or
request a trial of Nomad Enterprise.
[multiregion deployments]: /docs/job-specification/multiregion
-[autoscaling capabilities]: /docs/autoscaling
-[scaling policies]: /docs/autoscaling/policy
+[autoscaling capabilities]: /tools/autoscaling
+[scaling policies]: /tools/autoscaling/policy
[gh-9958]: https://github.com/hashicorp/nomad/issues/9958
diff --git a/website/content/docs/internals/plugins/task-drivers.mdx b/website/content/docs/internals/plugins/task-drivers.mdx
index 0c607ff68..9fc80adcd 100644
--- a/website/content/docs/internals/plugins/task-drivers.mdx
+++ b/website/content/docs/internals/plugins/task-drivers.mdx
@@ -109,7 +109,7 @@ For task driver plugin authors there are 2 important new behaviors when
allocation.
2. If the Nomad client managing a remote task is drained or if the allocation
was `lost`, the remote task is sent a special `DETACH` kill signal. This
- indicates the plugin should stop managing the remote task, but *not* stop
+ indicates the plugin should stop managing the remote task, but _not_ stop
it.
These behaviors are meant to keep remote tasks running even when the Nomad
@@ -253,4 +253,4 @@ inside the running container. `ExecTask` is called for Consul script checks.
[taskconfig]: https://godoc.org/github.com/hashicorp/nomad/plugins/drivers#TaskConfig
[taskhandle]: https://godoc.org/github.com/hashicorp/nomad/plugins/drivers#TaskHandle
[fifopackage]: https://godoc.org/github.com/hashicorp/nomad/client/lib/fifo
-[rtd]: /docs/drivers/remote
+[rtd]: /plugins/drivers/remote
diff --git a/website/content/docs/job-specification/scaling.mdx b/website/content/docs/job-specification/scaling.mdx
index ef4ff2c17..fc6373699 100644
--- a/website/content/docs/job-specification/scaling.mdx
+++ b/website/content/docs/job-specification/scaling.mdx
@@ -108,8 +108,8 @@ job "example" {
its contents are specific to the autoscaler; consult the
[Nomad Autoscaler documentation][autoscaling_policy] for more details.
-[autoscaling_policy]: /docs/autoscaling/policy
+[autoscaling_policy]: /tools/autoscaling/policy
[`count`]: /docs/job-specification/group#count 'Nomad Task Group specification'
[`resources`]: /docs/job-specification/task#resources 'Nomad Task specification'
-[das]: /docs/autoscaling#dynamic-application-sizing
-[horizontal_app_scaling]: /docs/autoscaling#horizontal-application-autoscaling
+[das]: /tools/autoscaling#dynamic-application-sizing
+[horizontal_app_scaling]: /tools/autoscaling#horizontal-application-autoscaling
diff --git a/website/content/docs/partnerships.mdx b/website/content/docs/partnerships.mdx
index 12617f531..80412b9a7 100644
--- a/website/content/docs/partnerships.mdx
+++ b/website/content/docs/partnerships.mdx
@@ -73,7 +73,7 @@ Container Runtime
- [Task driver documentation](/docs/drivers)
- [Guide to build, install, and maintaining a task driver plugin](/docs/internals/plugins/task-drivers)
-- [Community examples of task drivers](/docs/drivers/external)
+- [Community examples of task drivers](/plugins/drivers/community)
GPUs & Specialized Hardware Devices
@@ -84,7 +84,7 @@ GPUs & Specialized Hardware Devices
Autoscaling
-- [Autoscaling plugin documentation](/docs/autoscaling)
+- [Autoscaling plugin documentation](/tools/autoscaling)
Storage
diff --git a/website/content/docs/upgrade/upgrade-specific.mdx b/website/content/docs/upgrade/upgrade-specific.mdx
index 407de14bf..1035bd56d 100644
--- a/website/content/docs/upgrade/upgrade-specific.mdx
+++ b/website/content/docs/upgrade/upgrade-specific.mdx
@@ -63,7 +63,7 @@ you must ensure the `Config.Namespace` field is unset.
Starting in Nomad 1.1.2, task groups with `network.mode = "bridge"` generated a
hosts file in Docker containers. This generated hosts file was bind-mounted
-from the task directory to `/etc/hosts` within the task. In Nomad 1.1.3 the
+from the task directory to `/etc/hosts` within the task. In Nomad 1.1.3 the
source for the bind mount was moved to the allocation directory so that it is
shared between all tasks in an allocation.
@@ -144,7 +144,6 @@ Tasks using the `exec` or `java` task drivers can add or remove desired linux
capabilities using the [`cap_add`][cap_add_exec] and [`cap_drop`][cap_drop_exec]
task configuration options.
-
#### iptables
Nomad now appends its iptables rules to the `NOMAD-ADMIN` chain instead of
@@ -1182,11 +1181,11 @@ deleted and then Nomad 0.3.0 can be launched.
[go-client]: https://pkg.go.dev/github.com/hashicorp/nomad/api#Client
[hcl2]: https://github.com/hashicorp/hcl2
[limits]: /docs/configuration#limits
-[lxc]: /docs/drivers/external/lxc
+[lxc]: /plugins/drivers/community/lxc
[migrate]: /docs/job-specification/migrate
-[nvidia]: /docs/devices/external/nvidia
+[nvidia]: /plugins/devices/nvidia
[plugin-stanza]: /docs/configuration/plugin
-[plugins]: /docs/drivers/external
+[plugins]: /plugins/drivers/community
[preemption-api]: /api-docs/operator#update-scheduler-configuration
[preemption]: /docs/internals/scheduling/preemption
[proxy_concurrency]: /docs/job-specification/sidecar_task#proxy_concurrency
@@ -1204,8 +1203,8 @@ deleted and then Nomad 0.3.0 can be launched.
[`volume create`]: /docs/commands/volume/create
[`volume register`]: /docs/commands/volume/register
[`volume`]: /docs/job-specification/volume
-[Enterprise licensing]: /docs/enterprise/license
-[`CAP_NET_RAW`]: https://security.stackexchange.com/a/128988
+[enterprise licensing]: /docs/enterprise/license
+[`cap_net_raw`]: https://security.stackexchange.com/a/128988
[`linux capabilities`]: https://docs.docker.com/engine/reference/run/#runtime-privilege-and-linux-capabilities
[`allow_caps`]: /docs/drivers/docker#allow_caps
[`extra_hosts`]: /docs/drivers/docker#extra_hosts
diff --git a/website/content/docs/devices/external/index.mdx b/website/content/plugins/devices/community/index.mdx
similarity index 50%
rename from website/content/docs/devices/external/index.mdx
rename to website/content/plugins/devices/community/index.mdx
index 76ae4d726..89cbb0be5 100644
--- a/website/content/docs/devices/external/index.mdx
+++ b/website/content/plugins/devices/community/index.mdx
@@ -1,19 +1,10 @@
---
layout: docs
-page_title: 'Device Plugins: External'
-description: 'A list of external Device Plugins.'
+page_title: 'Device Plugins: Community Supported'
+description: 'A list of community supported Device Plugins.'
---
-# External Device Plugins
-
-Nomad has a plugin system for defining task drivers. External device driver
-plugins will have the same user experience as built in devices.
-
-Below is a list of official external task drivers you can use with Nomad:
-
-- [Nvidia][nvidia]
-
-## Community Supported
+# Community Supported
If you have authored a device plugin that you believe will be useful to the
broader Nomad community and you are committed to maintaining the plugin,
@@ -25,5 +16,4 @@ Below is a list of community-support task drivers you can use with Nomad:
- [USB][usb]
[plugin_guide]: /docs/internals/plugins
-[nvidia]: /docs/devices/external/nvidia
-[usb]: /docs/devices/external/usb
+[usb]: /plugins/devices/community/usb
diff --git a/website/content/docs/devices/external/usb.mdx b/website/content/plugins/devices/community/usb.mdx
similarity index 100%
rename from website/content/docs/devices/external/usb.mdx
rename to website/content/plugins/devices/community/usb.mdx
diff --git a/website/content/plugins/devices/index.mdx b/website/content/plugins/devices/index.mdx
new file mode 100644
index 000000000..49dbcbaa7
--- /dev/null
+++ b/website/content/plugins/devices/index.mdx
@@ -0,0 +1,17 @@
+---
+layout: docs
+page_title: 'Device Plugins: External'
+description: 'A list of external Device Plugins.'
+---
+
+# External Device Plugins
+
+Nomad has a plugin system for defining task drivers. External device driver
+plugins will have the same user experience as built in devices.
+
+Below is a list of official external task drivers you can use with Nomad:
+
+- [Nvidia][nvidia]
+
+[plugin_guide]: /docs/internals/plugins
+[nvidia]: /plugins/devices/nvidia
diff --git a/website/content/docs/devices/external/nvidia.mdx b/website/content/plugins/devices/nvidia.mdx
similarity index 96%
rename from website/content/docs/devices/external/nvidia.mdx
rename to website/content/plugins/devices/nvidia.mdx
index 3106e616a..7c5887956 100644
--- a/website/content/docs/devices/external/nvidia.mdx
+++ b/website/content/plugins/devices/nvidia.mdx
@@ -11,10 +11,10 @@ Name: `nvidia-gpu`
The Nvidia device plugin is used to expose Nvidia GPUs to Nomad.
~> **Note**: The Nvidia device plugin setup has changed in Nomad 1.2. You must
- add a [`plugin`] block to your clients configuration and install the
- [external Nvidia device plugin][nvidia_plugin_download] into their
- [`plugin_dir`] prior to upgrading. See plugin options below for an example.
- Note the job specification remains the same.
+add a [`plugin`] block to your clients configuration and install the
+[external Nvidia device plugin][nvidia_plugin_download] into their
+[`plugin_dir`] prior to upgrading. See plugin options below for an example.
+Note the job specification remains the same.
## Fingerprinted Attributes
@@ -337,7 +337,7 @@ Wed Jan 23 18:25:32 2019
[docker-driver]: /docs/drivers/docker 'Nomad docker Driver'
[exec-driver]: /docs/drivers/exec 'Nomad exec Driver'
[java-driver]: /docs/drivers/java 'Nomad java Driver'
-[lxc-driver]: /docs/drivers/external/lxc 'Nomad lxc Driver'
+[lxc-driver]: /plugins/drivers/community/lxc 'Nomad lxc Driver'
[`plugin`]: /docs/configuration/plugin
[`plugin_dir`]: /docs/configuration#plugin_dir
[nvidia_plugin_download]: https://releases.hashicorp.com/nomad-device-nvidia/
diff --git a/website/content/docs/drivers/external/containerd.mdx b/website/content/plugins/drivers/community/containerd.mdx
similarity index 100%
rename from website/content/docs/drivers/external/containerd.mdx
rename to website/content/plugins/drivers/community/containerd.mdx
diff --git a/website/content/docs/drivers/external/firecracker-task-driver.mdx b/website/content/plugins/drivers/community/firecracker-task-driver.mdx
similarity index 100%
rename from website/content/docs/drivers/external/firecracker-task-driver.mdx
rename to website/content/plugins/drivers/community/firecracker-task-driver.mdx
diff --git a/website/content/docs/drivers/external/iis.mdx b/website/content/plugins/drivers/community/iis.mdx
similarity index 100%
rename from website/content/docs/drivers/external/iis.mdx
rename to website/content/plugins/drivers/community/iis.mdx
diff --git a/website/content/docs/drivers/external/index.mdx b/website/content/plugins/drivers/community/index.mdx
similarity index 64%
rename from website/content/docs/drivers/external/index.mdx
rename to website/content/plugins/drivers/community/index.mdx
index f3ed7821e..8bce2075f 100644
--- a/website/content/docs/drivers/external/index.mdx
+++ b/website/content/plugins/drivers/community/index.mdx
@@ -25,7 +25,6 @@ Below is a list of community-supported task drivers you can use with Nomad:
- [Jail task driver][jail-task-driver]
- [Lightrun][lightrun]
- [LXC][lxc]
-- [Podman][podman]
- [Pot][pot]
- [Rkt][rkt]
- [Rookout][rookout]
@@ -33,16 +32,15 @@ Below is a list of community-supported task drivers you can use with Nomad:
- [systemd-nspawn][nspawn-driver]
- [Windows IIS][nomad-driver-iis]
-[rookout]: /docs/drivers/external/rookout
-[lxc]: /docs/drivers/external/lxc
-[rkt]: /docs/drivers/external/rkt
+[rookout]: /plugins/drivers/community/rookout
+[lxc]: /plugins/drivers/community/lxc
+[rkt]: /plugins/drivers/community/rkt
[plugin_guide]: /docs/internals/plugins
-[singularity]: /docs/drivers/external/singularity
-[jail-task-driver]: /docs/drivers/external/jail-task-driver
-[podman]: /docs/drivers/external/podman
-[pot]: /docs/drivers/external/pot
-[firecracker-task-driver]: /docs/drivers/external/firecracker-task-driver
-[nspawn-driver]: /docs/drivers/external/nspawn
-[nomad-driver-iis]: /docs/drivers/external/iis
-[nomad-driver-containerd]: /docs/drivers/external/containerd
-[lightrun]: /docs/drivers/external/lightrun
+[singularity]: /plugins/drivers/community/singularity
+[jail-task-driver]: /plugins/drivers/community/jail-task-driver
+[pot]: /plugins/drivers/community/pot
+[firecracker-task-driver]: /plugins/drivers/community/firecracker-task-driver
+[nspawn-driver]: /plugins/drivers/community/nspawn
+[nomad-driver-iis]: /plugins/drivers/community/iis
+[nomad-driver-containerd]: /plugins/drivers/community/containerd
+[lightrun]: /plugins/drivers/community/lightrun
diff --git a/website/content/docs/drivers/external/jail-task-driver.mdx b/website/content/plugins/drivers/community/jail-task-driver.mdx
similarity index 100%
rename from website/content/docs/drivers/external/jail-task-driver.mdx
rename to website/content/plugins/drivers/community/jail-task-driver.mdx
diff --git a/website/content/docs/drivers/external/lightrun.mdx b/website/content/plugins/drivers/community/lightrun.mdx
similarity index 100%
rename from website/content/docs/drivers/external/lightrun.mdx
rename to website/content/plugins/drivers/community/lightrun.mdx
diff --git a/website/content/docs/drivers/external/lxc.mdx b/website/content/plugins/drivers/community/lxc.mdx
similarity index 100%
rename from website/content/docs/drivers/external/lxc.mdx
rename to website/content/plugins/drivers/community/lxc.mdx
diff --git a/website/content/docs/drivers/external/nspawn.mdx b/website/content/plugins/drivers/community/nspawn.mdx
similarity index 100%
rename from website/content/docs/drivers/external/nspawn.mdx
rename to website/content/plugins/drivers/community/nspawn.mdx
diff --git a/website/content/docs/drivers/external/pot.mdx b/website/content/plugins/drivers/community/pot.mdx
similarity index 100%
rename from website/content/docs/drivers/external/pot.mdx
rename to website/content/plugins/drivers/community/pot.mdx
diff --git a/website/content/docs/drivers/external/rkt.mdx b/website/content/plugins/drivers/community/rkt.mdx
similarity index 100%
rename from website/content/docs/drivers/external/rkt.mdx
rename to website/content/plugins/drivers/community/rkt.mdx
diff --git a/website/content/docs/drivers/external/rookout.mdx b/website/content/plugins/drivers/community/rookout.mdx
similarity index 100%
rename from website/content/docs/drivers/external/rookout.mdx
rename to website/content/plugins/drivers/community/rookout.mdx
diff --git a/website/content/docs/drivers/external/singularity.mdx b/website/content/plugins/drivers/community/singularity.mdx
similarity index 100%
rename from website/content/docs/drivers/external/singularity.mdx
rename to website/content/plugins/drivers/community/singularity.mdx
diff --git a/website/content/plugins/drivers/index.mdx b/website/content/plugins/drivers/index.mdx
new file mode 100644
index 000000000..ec7152644
--- /dev/null
+++ b/website/content/plugins/drivers/index.mdx
@@ -0,0 +1,41 @@
+---
+layout: docs
+page_title: Task Drivers
+description: Task Drivers are used to integrate with the host OS to run tasks in Nomad.
+---
+
+# Task Drivers
+
+Task drivers are used by Nomad clients to execute a task and provide resource
+isolation. By having extensible task drivers, Nomad has the flexibility to
+support a broad set of workloads across all major operating systems.
+
+Starting with Nomad 0.9, task drivers are now pluggable. This gives users the
+flexibility to introduce their own drivers without having to recompile Nomad.
+You can view the [plugin stanza][plugin] documentation for examples on how to
+use the `plugin` stanza in Nomad's client configuration. Note that we have
+introduced new syntax when specifying driver options in the client configuration
+(see [docker][docker_plugin] for an example). Keep in mind that even though all
+built-in drivers are now plugins, Nomad remains a single binary and maintains
+backwards compatibility except with the `lxc` driver.
+
+The list of supported task drivers is provided on the left of this page. Each
+task driver documents the configuration available in a [job
+specification](/docs/job-specification), the environments it can be
+used in, and the resource isolation mechanisms available.
+
+For details on authoring a task driver plugin, please refer to the [plugin
+authoring guide][plugin_guide].
+
+Task driver resource isolation is intended to provide a degree of separation of
+Nomad client CPU / memory / storage between tasks. Resource isolation
+effectiveness is dependent upon individual task driver implementations and
+underlying client operating systems. Task drivers do include various
+security-related controls, but the Nomad client to task interface should not be
+considered a security boundary. See the [access control guide][acl_guide] for
+more information on how to protect Nomad cluster operations.
+
+[plugin]: /docs/configuration/plugin
+[docker_plugin]: /docs/drivers/docker#client-requirements
+[plugin_guide]: /docs/internals/plugins
+[acl_guide]: https://learn.hashicorp.com/collections/nomad/access-control
diff --git a/website/content/docs/drivers/podman.mdx b/website/content/plugins/drivers/podman.mdx
similarity index 100%
rename from website/content/docs/drivers/podman.mdx
rename to website/content/plugins/drivers/podman.mdx
diff --git a/website/content/docs/drivers/remote/ecs.mdx b/website/content/plugins/drivers/remote/ecs.mdx
similarity index 100%
rename from website/content/docs/drivers/remote/ecs.mdx
rename to website/content/plugins/drivers/remote/ecs.mdx
diff --git a/website/content/docs/drivers/remote/index.mdx b/website/content/plugins/drivers/remote/index.mdx
similarity index 100%
rename from website/content/docs/drivers/remote/index.mdx
rename to website/content/plugins/drivers/remote/index.mdx
diff --git a/website/content/plugins/index.mdx b/website/content/plugins/index.mdx
new file mode 100644
index 000000000..ca69e8e58
--- /dev/null
+++ b/website/content/plugins/index.mdx
@@ -0,0 +1,17 @@
+---
+layout: docs
+page_title: Plugins
+description: Learn about task driver and device plugins for Nomad.
+---
+
+# Plugins
+
+Nomad 0.9 introduced a plugin framework which allows users to extend the
+functionality of some components within Nomad. The design of the plugin system
+is inspired by the lessons learned from plugin systems implemented in other
+HashiCorp products such as Terraform and Vault.
+
+The following components are currently pluggable within Nomad:
+
+- [Task Drivers](/plugins/drivers)
+- [Devices](/plugins/devices)
diff --git a/website/content/docs/autoscaling/agent.mdx b/website/content/tools/autoscaling/agent.mdx
similarity index 95%
rename from website/content/docs/autoscaling/agent.mdx
rename to website/content/tools/autoscaling/agent.mdx
index 879acb259..e6b899ff8 100644
--- a/website/content/docs/autoscaling/agent.mdx
+++ b/website/content/tools/autoscaling/agent.mdx
@@ -90,6 +90,6 @@ following actions.
[hcl_v2]: https://github.com/hashicorp/hcl/tree/hcl2
[nomad_namespaces]: https://learn.hashicorp.com/tutorials/nomad/namespaces
[nomad_acls]: https://learn.hashicorp.com/collections/nomad/access-control
-[autoscaler_agent_nomad]: /docs/autoscaling/agent/nomad
-[autoscaler_cli_config]: /docs/autoscaling/cli#config
-[autoscaler_cli_policy_dir]: /docs/autoscaling/cli#policy-dir
+[autoscaler_agent_nomad]: /tools/autoscaling/agent/nomad
+[autoscaler_cli_config]: /tools/autoscaling/cli#config
+[autoscaler_cli_policy_dir]: /tools/autoscaling/cli#policy-dir
diff --git a/website/content/docs/autoscaling/agent/apm.mdx b/website/content/tools/autoscaling/agent/apm.mdx
similarity index 95%
rename from website/content/docs/autoscaling/agent/apm.mdx
rename to website/content/tools/autoscaling/agent/apm.mdx
index 8998f26f9..91f3d0cfd 100644
--- a/website/content/docs/autoscaling/agent/apm.mdx
+++ b/website/content/tools/autoscaling/agent/apm.mdx
@@ -35,4 +35,4 @@ apm "example-apm-plugin" {
the plugin either as HCL or JSON. The accepted values are plugin specific.
Please refer to the individual plugin's documentation.
-[plugin_dir]: /docs/autoscaling/agent#plugin_dir
+[plugin_dir]: /tools/autoscaling/agent#plugin_dir
diff --git a/website/content/docs/autoscaling/agent/dynamic_application_sizing.mdx b/website/content/tools/autoscaling/agent/dynamic_application_sizing.mdx
similarity index 100%
rename from website/content/docs/autoscaling/agent/dynamic_application_sizing.mdx
rename to website/content/tools/autoscaling/agent/dynamic_application_sizing.mdx
diff --git a/website/content/docs/autoscaling/agent/http.mdx b/website/content/tools/autoscaling/agent/http.mdx
similarity index 100%
rename from website/content/docs/autoscaling/agent/http.mdx
rename to website/content/tools/autoscaling/agent/http.mdx
diff --git a/website/content/docs/autoscaling/agent/nomad.mdx b/website/content/tools/autoscaling/agent/nomad.mdx
similarity index 100%
rename from website/content/docs/autoscaling/agent/nomad.mdx
rename to website/content/tools/autoscaling/agent/nomad.mdx
diff --git a/website/content/docs/autoscaling/agent/policy.mdx b/website/content/tools/autoscaling/agent/policy.mdx
similarity index 100%
rename from website/content/docs/autoscaling/agent/policy.mdx
rename to website/content/tools/autoscaling/agent/policy.mdx
diff --git a/website/content/docs/autoscaling/agent/policy_eval.mdx b/website/content/tools/autoscaling/agent/policy_eval.mdx
similarity index 100%
rename from website/content/docs/autoscaling/agent/policy_eval.mdx
rename to website/content/tools/autoscaling/agent/policy_eval.mdx
diff --git a/website/content/docs/autoscaling/agent/strategy.mdx b/website/content/tools/autoscaling/agent/strategy.mdx
similarity index 95%
rename from website/content/docs/autoscaling/agent/strategy.mdx
rename to website/content/tools/autoscaling/agent/strategy.mdx
index ecacbe612..54b8072e0 100644
--- a/website/content/docs/autoscaling/agent/strategy.mdx
+++ b/website/content/tools/autoscaling/agent/strategy.mdx
@@ -34,4 +34,4 @@ strategy "example-strategy-plugin" {
the plugin either as HCL or JSON. The accepted values are plugin specific.
Please refer to the individual plugin's documentation.
-[plugin_dir]: /docs/autoscaling/agent#plugin_dir
+[plugin_dir]: /tools/autoscaling/agent#plugin_dir
diff --git a/website/content/docs/autoscaling/agent/target.mdx b/website/content/tools/autoscaling/agent/target.mdx
similarity index 95%
rename from website/content/docs/autoscaling/agent/target.mdx
rename to website/content/tools/autoscaling/agent/target.mdx
index 41150e97f..ba9cd487f 100644
--- a/website/content/docs/autoscaling/agent/target.mdx
+++ b/website/content/tools/autoscaling/agent/target.mdx
@@ -35,4 +35,4 @@ target "example-target-plugin" {
the plugin either as HCL or JSON. The accepted values are plugin specific.
Please refer to the individual plugin's documentation.
-[plugin_dir]: /docs/autoscaling/agent#plugin_dir
+[plugin_dir]: /tools/autoscaling/agent#plugin_dir
diff --git a/website/content/docs/autoscaling/agent/telemetry.mdx b/website/content/tools/autoscaling/agent/telemetry.mdx
similarity index 100%
rename from website/content/docs/autoscaling/agent/telemetry.mdx
rename to website/content/tools/autoscaling/agent/telemetry.mdx
diff --git a/website/content/docs/autoscaling/api.mdx b/website/content/tools/autoscaling/api.mdx
similarity index 100%
rename from website/content/docs/autoscaling/api.mdx
rename to website/content/tools/autoscaling/api.mdx
diff --git a/website/content/docs/autoscaling/cli.mdx b/website/content/tools/autoscaling/cli.mdx
similarity index 99%
rename from website/content/docs/autoscaling/cli.mdx
rename to website/content/tools/autoscaling/cli.mdx
index b32b10f41..71e167689 100644
--- a/website/content/docs/autoscaling/cli.mdx
+++ b/website/content/tools/autoscaling/cli.mdx
@@ -188,4 +188,4 @@ $ nomad-autoscaler version
Nomad Autoscaler v0.0.3-dev (da91fa9)
```
-[nomad_autoscaler_agent_guide]: /docs/autoscaling/agent
+[nomad_autoscaler_agent_guide]: /tools/autoscaling/agent
diff --git a/website/content/docs/autoscaling/index.mdx b/website/content/tools/autoscaling/index.mdx
similarity index 95%
rename from website/content/docs/autoscaling/index.mdx
rename to website/content/tools/autoscaling/index.mdx
index a6887a557..e94632fd8 100644
--- a/website/content/docs/autoscaling/index.mdx
+++ b/website/content/tools/autoscaling/index.mdx
@@ -34,7 +34,7 @@ from a cluster to ensure there is an appropriate amount of cluster resource for
the scheduled applications. This is achieved by interacting with remote providers
to start or terminate new Nomad clients based on metrics such as the remaining
free schedulable CPU or memory. Cluster scaling is enabled by configuring the
-[autoscaler agent](/docs/autoscaling/agent#dir) with policies targeting the Nomad
+[autoscaler agent](/tools/autoscaling/agent#dir) with policies targeting the Nomad
cluster.
## Dynamic Application Sizing
@@ -56,7 +56,7 @@ Dynamic Application Sizing can be enabled on an individual task by configuring
specification [`scaling` block][scaling_block].
[scaling_block]: /docs/job-specification/scaling#scaling-stanza
-[autoscaling_policy]: /docs/autoscaling/policy
+[autoscaling_policy]: /tools/autoscaling/policy
[autoscaler_github]: https://github.com/hashicorp/nomad-autoscaler
[autoscaler_releases]: https://releases.hashicorp.com/nomad-autoscaler/
[autoscaler_dockerhub]: https://hub.docker.com/r/hashicorp/nomad-autoscaler
diff --git a/website/content/docs/autoscaling/internals/checks.mdx b/website/content/tools/autoscaling/internals/checks.mdx
similarity index 100%
rename from website/content/docs/autoscaling/internals/checks.mdx
rename to website/content/tools/autoscaling/internals/checks.mdx
diff --git a/website/content/docs/autoscaling/internals/index.mdx b/website/content/tools/autoscaling/internals/index.mdx
similarity index 74%
rename from website/content/docs/autoscaling/internals/index.mdx
rename to website/content/tools/autoscaling/internals/index.mdx
index eb14454eb..efd07ce95 100644
--- a/website/content/docs/autoscaling/internals/index.mdx
+++ b/website/content/tools/autoscaling/internals/index.mdx
@@ -11,5 +11,5 @@ description: >
This section covers the internals of the Nomad Autoscaler and explains the
technical details of how it functions, its architecture, and sub-systems.
-- [Autoscaler plugins](/docs/autoscaling/internals/plugins)
-- [Check calculations](/docs/autoscaling/interals/checks)
+- [Autoscaler plugins](/tools/autoscaling/internals/plugins)
+- [Check calculations](/tools/autoscaling/interals/checks)
diff --git a/website/content/docs/autoscaling/internals/node-selector-strategy.mdx b/website/content/tools/autoscaling/internals/node-selector-strategy.mdx
similarity index 100%
rename from website/content/docs/autoscaling/internals/node-selector-strategy.mdx
rename to website/content/tools/autoscaling/internals/node-selector-strategy.mdx
diff --git a/website/content/docs/autoscaling/internals/plugins/apm.mdx b/website/content/tools/autoscaling/internals/plugins/apm.mdx
similarity index 94%
rename from website/content/docs/autoscaling/internals/plugins/apm.mdx
rename to website/content/tools/autoscaling/internals/plugins/apm.mdx
index dec6b34b6..b3ce15513 100644
--- a/website/content/docs/autoscaling/internals/plugins/apm.mdx
+++ b/website/content/tools/autoscaling/internals/plugins/apm.mdx
@@ -43,6 +43,6 @@ An example would be to return the CPU utilization for all allocations during
the time range.
[apm_plugin]: https://github.com/hashicorp/nomad-autoscaler/blob/v0.3.0/plugins/apm/apm.go#L11
-[base_plugin]: /docs/autoscaling/internals/plugins/base
+[base_plugin]: /tools/autoscaling/internals/plugins/base
[noop_plugin]: https://github.com/hashicorp/nomad-autoscaler/tree/v0.3.0/plugins/test/noop-apm
-[das]: /docs/autoscaling#dynamic-application-sizing
+[das]: /tools/autoscaling#dynamic-application-sizing
diff --git a/website/content/docs/autoscaling/internals/plugins/base.mdx b/website/content/tools/autoscaling/internals/plugins/base.mdx
similarity index 95%
rename from website/content/docs/autoscaling/internals/plugins/base.mdx
rename to website/content/tools/autoscaling/internals/plugins/base.mdx
index 3139970d3..750c61253 100644
--- a/website/content/docs/autoscaling/internals/plugins/base.mdx
+++ b/website/content/tools/autoscaling/internals/plugins/base.mdx
@@ -30,4 +30,4 @@ PluginInfo{
The `SetConfig` function is called when starting an instance of the plugin. It contains the
configuration for a named instance of the plugin as provided in the autoscaler [agent config][plugin_config].
-[plugin_config]: /docs/autoscaling/agent
+[plugin_config]: /tools/autoscaling/agent
diff --git a/website/content/docs/autoscaling/internals/plugins/index.mdx b/website/content/tools/autoscaling/internals/plugins/index.mdx
similarity index 84%
rename from website/content/docs/autoscaling/internals/plugins/index.mdx
rename to website/content/tools/autoscaling/internals/plugins/index.mdx
index e1187d904..1c6a44b82 100644
--- a/website/content/docs/autoscaling/internals/plugins/index.mdx
+++ b/website/content/tools/autoscaling/internals/plugins/index.mdx
@@ -13,11 +13,11 @@ devices.
The following components are currently pluggable within the Nomad Autoscaler:
-- [APMs](/docs/autoscaling/internals/plugins/apm)
-- [Strategies](/docs/autoscaling/internals/plugins/strategy)
-- [Targets](/docs/autoscaling/internals/plugins/target)
+- [APMs](/tools/autoscaling/internals/plugins/apm)
+- [Strategies](/tools/autoscaling/internals/plugins/strategy)
+- [Targets](/tools/autoscaling/internals/plugins/target)
-In addition, each plugin implements a [base](/docs/autoscaling/internals/plugins/base)
+In addition, each plugin implements a [base](/tools/autoscaling/internals/plugins/base)
plugin functionality.
# Architecture
diff --git a/website/content/docs/autoscaling/internals/plugins/strategy.mdx b/website/content/tools/autoscaling/internals/plugins/strategy.mdx
similarity index 96%
rename from website/content/docs/autoscaling/internals/plugins/strategy.mdx
rename to website/content/tools/autoscaling/internals/plugins/strategy.mdx
index cc01cb5d3..102b4969b 100644
--- a/website/content/docs/autoscaling/internals/plugins/strategy.mdx
+++ b/website/content/tools/autoscaling/internals/plugins/strategy.mdx
@@ -35,6 +35,6 @@ argument includes the current value of the scaling target. The returned struct s
from applying the strategy.
[strategy_plugin]: https://github.com/hashicorp/nomad-autoscaler/blob/v0.3.0/plugins/strategy/strategy.go#L11
-[base_plugin]: /docs/autoscaling/internals/plugins/base
+[base_plugin]: /tools/autoscaling/internals/plugins/base
[noop_plugin]: https://github.com/hashicorp/nomad-autoscaler/tree/v0.3.0/plugins/test/noop-strategy
[target_value]: https://github.com/hashicorp/nomad-autoscaler/tree/v0.3.0/plugins/builtin/strategy/target-value
diff --git a/website/content/docs/autoscaling/internals/plugins/target.mdx b/website/content/tools/autoscaling/internals/plugins/target.mdx
similarity index 95%
rename from website/content/docs/autoscaling/internals/plugins/target.mdx
rename to website/content/tools/autoscaling/internals/plugins/target.mdx
index ca001c901..25b46ec48 100644
--- a/website/content/docs/autoscaling/internals/plugins/target.mdx
+++ b/website/content/tools/autoscaling/internals/plugins/target.mdx
@@ -43,8 +43,8 @@ current scaling level, readiness, and arbitrary metadata.
[nomad_group_count_plugin]: https://github.com/hashicorp/nomad-autoscaler/tree/v0.3.0/plugins/builtin/target/nomad
[target_plugin]: https://github.com/hashicorp/nomad-autoscaler/blob/v0.3.0/plugins/target/target.go#L12
-[base_plugin]: /docs/autoscaling/internals/plugins/base
+[base_plugin]: /tools/autoscaling/internals/plugins/base
[noop_plugin]: https://github.com/hashicorp/nomad-autoscaler/tree/v0.3.0/plugins/test/noop-target
[scaling_action_sdk]: https://github.com/hashicorp/nomad-autoscaler/blob/v0.3.0/sdk/strategy.go#L25
-[policy_target]: /docs/autoscaling/policy#target
+[policy_target]: /tools/autoscaling/policy#target
[target_status_sdk]: https://github.com/hashicorp/nomad-autoscaler/blob/v0.3.0/sdk/target.go#L6
diff --git a/website/content/docs/autoscaling/plugins/apm/datadog.mdx b/website/content/tools/autoscaling/plugins/apm/datadog.mdx
similarity index 100%
rename from website/content/docs/autoscaling/plugins/apm/datadog.mdx
rename to website/content/tools/autoscaling/plugins/apm/datadog.mdx
diff --git a/website/content/docs/autoscaling/plugins/apm/index.mdx b/website/content/tools/autoscaling/plugins/apm/index.mdx
similarity index 100%
rename from website/content/docs/autoscaling/plugins/apm/index.mdx
rename to website/content/tools/autoscaling/plugins/apm/index.mdx
diff --git a/website/content/docs/autoscaling/plugins/apm/nomad.mdx b/website/content/tools/autoscaling/plugins/apm/nomad.mdx
similarity index 100%
rename from website/content/docs/autoscaling/plugins/apm/nomad.mdx
rename to website/content/tools/autoscaling/plugins/apm/nomad.mdx
diff --git a/website/content/docs/autoscaling/plugins/apm/prometheus.mdx b/website/content/tools/autoscaling/plugins/apm/prometheus.mdx
similarity index 100%
rename from website/content/docs/autoscaling/plugins/apm/prometheus.mdx
rename to website/content/tools/autoscaling/plugins/apm/prometheus.mdx
diff --git a/website/content/docs/autoscaling/plugins/external/index.mdx b/website/content/tools/autoscaling/plugins/external/index.mdx
similarity index 94%
rename from website/content/docs/autoscaling/plugins/external/index.mdx
rename to website/content/tools/autoscaling/plugins/external/index.mdx
index f90fed188..9b31b08be 100644
--- a/website/content/docs/autoscaling/plugins/external/index.mdx
+++ b/website/content/tools/autoscaling/plugins/external/index.mdx
@@ -21,7 +21,7 @@ Below is a list of community-support plugins available for the Nomad autoscaler.
- [OpenStack Nova][os-nova]
- [OpenStack Senlin][senlin]
-[plugin_guide]: /docs/autoscaling/internals/plugins
+[plugin_guide]: /tools/autoscaling/internals/plugins
[senlin]: https://github.com/dkt26111/nomad-senlin-autoscaler
[do-droplets]: https://github.com/jsiebens/nomad-droplets-autoscaler
[os-nova]: https://github.com/jorgemarey/nomad-nova-autoscaler
diff --git a/website/content/docs/autoscaling/plugins/index.mdx b/website/content/tools/autoscaling/plugins/index.mdx
similarity index 91%
rename from website/content/docs/autoscaling/plugins/index.mdx
rename to website/content/tools/autoscaling/plugins/index.mdx
index 411409381..f532ea418 100644
--- a/website/content/docs/autoscaling/plugins/index.mdx
+++ b/website/content/tools/autoscaling/plugins/index.mdx
@@ -72,8 +72,8 @@ with an appropriate [APM][apm], [Strategy][strategy] or [Target][target] block
entry.
[go_plugin_github]: https://github.com/hashicorp/go-plugin
-[community_plugins]: /docs/autoscaling/plugins/external
-[plugin_dir_config]: /docs/autoscaling/agent#plugin_dir
-[apm]: /docs/autoscaling/agent/apm#apm-block
-[strategy]: /docs/autoscaling/agent/strategy#strategy-block
-[target]: /docs/autoscaling/agent/target#target-block
+[community_plugins]: /tools/autoscaling/plugins/external
+[plugin_dir_config]: /tools/autoscaling/agent#plugin_dir
+[apm]: /tools/autoscaling/agent/apm#apm-block
+[strategy]: /tools/autoscaling/agent/strategy#strategy-block
+[target]: /tools/autoscaling/agent/target#target-block
diff --git a/website/content/docs/autoscaling/plugins/strategy/app-sizing-avg.mdx b/website/content/tools/autoscaling/plugins/strategy/app-sizing-avg.mdx
similarity index 100%
rename from website/content/docs/autoscaling/plugins/strategy/app-sizing-avg.mdx
rename to website/content/tools/autoscaling/plugins/strategy/app-sizing-avg.mdx
diff --git a/website/content/docs/autoscaling/plugins/strategy/app-sizing-max.mdx b/website/content/tools/autoscaling/plugins/strategy/app-sizing-max.mdx
similarity index 100%
rename from website/content/docs/autoscaling/plugins/strategy/app-sizing-max.mdx
rename to website/content/tools/autoscaling/plugins/strategy/app-sizing-max.mdx
diff --git a/website/content/docs/autoscaling/plugins/strategy/app-sizing-percentile.mdx b/website/content/tools/autoscaling/plugins/strategy/app-sizing-percentile.mdx
similarity index 100%
rename from website/content/docs/autoscaling/plugins/strategy/app-sizing-percentile.mdx
rename to website/content/tools/autoscaling/plugins/strategy/app-sizing-percentile.mdx
diff --git a/website/content/docs/autoscaling/plugins/strategy/fixed-value.mdx b/website/content/tools/autoscaling/plugins/strategy/fixed-value.mdx
similarity index 100%
rename from website/content/docs/autoscaling/plugins/strategy/fixed-value.mdx
rename to website/content/tools/autoscaling/plugins/strategy/fixed-value.mdx
diff --git a/website/content/docs/autoscaling/plugins/strategy/index.mdx b/website/content/tools/autoscaling/plugins/strategy/index.mdx
similarity index 100%
rename from website/content/docs/autoscaling/plugins/strategy/index.mdx
rename to website/content/tools/autoscaling/plugins/strategy/index.mdx
diff --git a/website/content/docs/autoscaling/plugins/strategy/pass-through.mdx b/website/content/tools/autoscaling/plugins/strategy/pass-through.mdx
similarity index 100%
rename from website/content/docs/autoscaling/plugins/strategy/pass-through.mdx
rename to website/content/tools/autoscaling/plugins/strategy/pass-through.mdx
diff --git a/website/content/docs/autoscaling/plugins/strategy/target-value.mdx b/website/content/tools/autoscaling/plugins/strategy/target-value.mdx
similarity index 100%
rename from website/content/docs/autoscaling/plugins/strategy/target-value.mdx
rename to website/content/tools/autoscaling/plugins/strategy/target-value.mdx
diff --git a/website/content/docs/autoscaling/plugins/strategy/threshold.mdx b/website/content/tools/autoscaling/plugins/strategy/threshold.mdx
similarity index 97%
rename from website/content/docs/autoscaling/plugins/strategy/threshold.mdx
rename to website/content/tools/autoscaling/plugins/strategy/threshold.mdx
index bbfc4d8ad..e5692ead0 100644
--- a/website/content/docs/autoscaling/plugins/strategy/threshold.mdx
+++ b/website/content/tools/autoscaling/plugins/strategy/threshold.mdx
@@ -75,4 +75,4 @@ within bounds. Similarly, if `upper_bound` is not defined, any value above
One, and only one, of `delta`, `percentage`, or `value` must be defined.
-[internals_check]: /docs/autoscaling/internals/checks
+[internals_check]: /tools/autoscaling/internals/checks
diff --git a/website/content/docs/autoscaling/plugins/target/app-sizing-nomad.mdx b/website/content/tools/autoscaling/plugins/target/app-sizing-nomad.mdx
similarity index 98%
rename from website/content/docs/autoscaling/plugins/target/app-sizing-nomad.mdx
rename to website/content/tools/autoscaling/plugins/target/app-sizing-nomad.mdx
index 73bfd4519..9fdab1211 100644
--- a/website/content/docs/autoscaling/plugins/target/app-sizing-nomad.mdx
+++ b/website/content/tools/autoscaling/plugins/target/app-sizing-nomad.mdx
@@ -67,7 +67,7 @@ check "mem" {
specification [`resource` stanza][nomad_resource_stanza]. Supports either `CPU`
or `MemoryMB`.
-[nomad_autoscaler_policy]: /docs/autoscaling/policy
+[nomad_autoscaler_policy]: /tools/autoscaling/policy
[nomad_group_stanza]: /docs/job-specification/group
[nomad_job_stanza]: /docs/job-specification/job
[nomad_namespace_parameter]: /docs/job-specification/job#namespace
diff --git a/website/content/docs/autoscaling/plugins/target/aws-asg.mdx b/website/content/tools/autoscaling/plugins/target/aws-asg.mdx
similarity index 98%
rename from website/content/docs/autoscaling/plugins/target/aws-asg.mdx
rename to website/content/tools/autoscaling/plugins/target/aws-asg.mdx
index 173d7d740..dfa3eca34 100644
--- a/website/content/docs/autoscaling/plugins/target/aws-asg.mdx
+++ b/website/content/tools/autoscaling/plugins/target/aws-asg.mdx
@@ -126,5 +126,5 @@ check "hashistack-allocated-cpu" {
[nomad_node_class]: /docs/configuration/client#node_class
[nomad_node_drain_deadline]: /api-docs/nodes#deadline
[nomad_node_purge]: /api-docs/nodes#purge-node
-[node_selector_strategy]: /docs/autoscaling/internals/node-selector-strategy
+[node_selector_strategy]: /tools/autoscaling/internals/node-selector-strategy
[vault_aws_backend]: https://www.vaultproject.io/docs/secrets/aws
diff --git a/website/content/docs/autoscaling/plugins/target/azure-vmss.mdx b/website/content/tools/autoscaling/plugins/target/azure-vmss.mdx
similarity index 98%
rename from website/content/docs/autoscaling/plugins/target/azure-vmss.mdx
rename to website/content/tools/autoscaling/plugins/target/azure-vmss.mdx
index ddb8f664a..7458d793c 100644
--- a/website/content/docs/autoscaling/plugins/target/azure-vmss.mdx
+++ b/website/content/tools/autoscaling/plugins/target/azure-vmss.mdx
@@ -136,7 +136,7 @@ service][azure_instance_metadata].
[azure_virtual_machine_scale_sets]: https://docs.microsoft.com/en-us/azure/virtual-machine-scale-sets/overview
[azure_vm_identity]: https://docs.microsoft.com/en-us/azure/active-directory/managed-identities-azure-resources/
[client_meta_tag]: #client-meta-tag
-[node_selector_strategy]: /docs/autoscaling/internals/node-selector-strategy
+[node_selector_strategy]: /tools/autoscaling/internals/node-selector-strategy
[nomad_datacenter]: /docs/configuration#datacenter
[nomad_client_meta_tag]: /docs/configuration/client#meta
[nomad_node_class]: /docs/configuration/client#node_class
diff --git a/website/content/docs/autoscaling/plugins/target/gce-mig.mdx b/website/content/tools/autoscaling/plugins/target/gce-mig.mdx
similarity index 98%
rename from website/content/docs/autoscaling/plugins/target/gce-mig.mdx
rename to website/content/tools/autoscaling/plugins/target/gce-mig.mdx
index 1110079e1..368fb2c54 100644
--- a/website/content/docs/autoscaling/plugins/target/gce-mig.mdx
+++ b/website/content/tools/autoscaling/plugins/target/gce-mig.mdx
@@ -106,5 +106,5 @@ check "hashistack-allocated-cpu" {
[nomad_node_class]: /docs/configuration/client#node_class
[nomad_node_drain_deadline]: /api-docs/nodes#deadline
[nomad_node_purge]: /api-docs/nodes#purge-node
-[node_selector_strategy]: /docs/autoscaling/internals/node-selector-strategy
+[node_selector_strategy]: /tools/autoscaling/internals/node-selector-strategy
[vault_gcp_backend]: https://www.vaultproject.io/docs/secrets/gcp
diff --git a/website/content/docs/autoscaling/plugins/target/index.mdx b/website/content/tools/autoscaling/plugins/target/index.mdx
similarity index 100%
rename from website/content/docs/autoscaling/plugins/target/index.mdx
rename to website/content/tools/autoscaling/plugins/target/index.mdx
diff --git a/website/content/docs/autoscaling/plugins/target/nomad.mdx b/website/content/tools/autoscaling/plugins/target/nomad.mdx
similarity index 100%
rename from website/content/docs/autoscaling/plugins/target/nomad.mdx
rename to website/content/tools/autoscaling/plugins/target/nomad.mdx
diff --git a/website/content/docs/autoscaling/policy.mdx b/website/content/tools/autoscaling/policy.mdx
similarity index 94%
rename from website/content/docs/autoscaling/policy.mdx
rename to website/content/tools/autoscaling/policy.mdx
index 99166fc0d..e6ab5d9de 100644
--- a/website/content/docs/autoscaling/policy.mdx
+++ b/website/content/tools/autoscaling/policy.mdx
@@ -221,10 +221,10 @@ scaling "mem" {
}
```
-[das]: /docs/autoscaling#dynamic-application-sizing
-[policy_default_cooldown_agent]: /docs/autoscaling/agent#default_cooldown
-[eval_interval_agent]: /docs/autoscaling/agent#default_evaluation_interval
-[target_plugin_docs]: /docs/autoscaling/plugins/target
-[strategy_plugin_docs]: /docs/autoscaling/plugins/strategy
-[apm_plugin_docs]: /docs/autoscaling/plugins/apm
+[das]: /tools/autoscaling#dynamic-application-sizing
+[policy_default_cooldown_agent]: /tools/autoscaling/agent#default_cooldown
+[eval_interval_agent]: /tools/autoscaling/agent#default_evaluation_interval
+[target_plugin_docs]: /tools/autoscaling/plugins/target
+[strategy_plugin_docs]: /tools/autoscaling/plugins/strategy
+[apm_plugin_docs]: /tools/autoscaling/plugins/apm
[jobspec_scaling_stanza]: /docs/job-specification/scaling
diff --git a/website/content/docs/autoscaling/telemetry.mdx b/website/content/tools/autoscaling/telemetry.mdx
similarity index 99%
rename from website/content/docs/autoscaling/telemetry.mdx
rename to website/content/tools/autoscaling/telemetry.mdx
index 16706d594..ef2ff9bdc 100644
--- a/website/content/docs/autoscaling/telemetry.mdx
+++ b/website/content/tools/autoscaling/telemetry.mdx
@@ -268,4 +268,4 @@ and help identify potential bottle necks or latency issues.
-[agent_telemetry_config]: /docs/autoscaling/agent#telemetry-block
+[agent_telemetry_config]: /tools/autoscaling/agent#telemetry-block
diff --git a/website/content/tools/index.mdx b/website/content/tools/index.mdx
new file mode 100644
index 000000000..8d3d217cd
--- /dev/null
+++ b/website/content/tools/index.mdx
@@ -0,0 +1,40 @@
+---
+layout: docs
+page_title: Tools
+description: Learn about tools for Nomad.
+---
+
+# Tools
+
+External tools provide additional capabilities and use cases to Nomad. They are
+installed separately from Nomad itself and can sometimes be deployed as a Nomad
+job in your cluster.
+
+## HashiCorp-Maintained Tools
+
+The following external tools are currently available for Nomad and maintained by HashiCorp:
+
+- [Autoscaling](/tools/autoscaling) - HashiCorp's official Nomad Autoscaler. Supports scaling allocations within Nomad and scaling nodes on AWS, Azure, GCP, or arbitrary infrastructure via plugins.
+- [Damon](https://github.com/hashicorp/damon) - An terminal dashboard for Nomad.
+- [Levant](https://github.com/hashicorp/levant) - A templating and deployment tool for HashiCorp Nomad jobs that provides realtime feedback and detailed failure messages upon deployment issues.
+- [Nomad Pack](https://github.com/hashicorp/nomad-pack) - An official package manager and templating tool for Nomad, currently a Tech Preview.
+
+## Community Tools
+
+The following external tools are currently available for Nomad and maintained by members of the Nomad Community:
+
+- [Chaotic](https://github.com/ngine-io/chaotic) - A Chaos Engineering tool to stop allocations, reboot or stop/start virtual machines in your cloud environment
+- [Deadman Check](https://github.com/sepulworld/deadman-check) - A monitoring companion for Nomad periodic jobs that alerts if periodic isn't running at the expected interval
+- [Hashi Up](https://github.com/jsiebens/hashi-up) - A utility to install Nomad on remote Linux hosts
+- [Jenkins Nomad Cloud Plugin](https://github.com/jenkinsci/nomad-plugin) - A Jenkins plugin using Nomad to provision build workers
+- [Kreconciler](https://github.com/koyeb/kreconciler) - A library to build control-loops for things on Nomad (or other schedulers)
+- [Nelson](https://getnelson.io/) - A tool for automated, multi-region container deployment using Nomad
+- [Node Problem Detector](https://github.com/Roblox/nomad-node-problem-detector) - A tool used to detect problems on Nomad nodes based on user-defined health checks
+- [Nomad deploy result action](https://github.com/let-sh/nomad-deploy-result-action) - A Github action to monitor deployment results
+- [Nomad Firehose](https://github.com/seatgeek/nomad-firehose) - A tool to enable teams to quickly build logic around nomad task events without hooking into Nomad API
+- [Nomad Helper](https://github.com/seatgeek/nomad-helper) - A Nomad helper binary. Reevaluate jobs, force garbage collection, drain nodes, export/import count information
+- [Nomad Toast](https://github.com/jrasell/nomad-toast) - A tool for receiving notifications based on HashiCorp Nomad events
+- [Nomad Watcher](https://github.com/blalor/nomad-watcher) - A simple service that watches Nomad's nodes, jobs, deployments, evaluations, allocations, and task states, and writes the events to a file
+- [Nomadgen](https://github.com/smintz/nomadgen) - Craft your Hashicorp's Nomad job specs in python.
+- [Nomadctld](https://github.com/42wim/nomadctld) - An ssh server that sits between users and the nomad cluster allowing for limited access to your nomad cluster and allow them to attach, see logs, tail logs, stop, restart, exec containers they own on the cluster
+- [Nomad-spk](https://github.com/numkem/nomad-spk) - A tool to install nomad into a Synology NAS
diff --git a/website/data/docs-nav-data.json b/website/data/docs-nav-data.json
index dc56f2637..51ce0a2af 100644
--- a/website/data/docs-nav-data.json
+++ b/website/data/docs-nav-data.json
@@ -1368,7 +1368,7 @@
},
{
"title": "Podman",
- "path": "drivers/podman"
+ "href": "/plugins/drivers/podman"
},
{
"title": "QEMU",
@@ -1383,51 +1383,51 @@
"routes": [
{
"title": "Overview",
- "path": "drivers/external"
+ "href": "/plugins/drivers/community"
},
{
"title": "containerd",
- "path": "drivers/external/containerd"
+ "href": "/plugins/drivers/community/containerd"
},
{
"title": "Firecracker driver",
- "path": "drivers/external/firecracker-task-driver"
+ "href": "/plugins/drivers/community/firecracker-task-driver"
},
{
"title": "Jailtask driver",
- "path": "drivers/external/jail-task-driver"
+ "href": "/plugins/drivers/community/jail-task-driver"
},
{
"title": "Lightrun",
- "path": "drivers/external/lightrun"
+ "href": "/plugins/drivers/community/lightrun"
},
{
"title": "LXC",
- "path": "drivers/external/lxc"
+ "href": "/plugins/drivers/community/lxc"
},
{
"title": "Pot",
- "path": "drivers/external/pot"
+ "href": "/plugins/drivers/community/pot"
},
{
"title": "Rkt Deprecated ",
- "path": "drivers/external/rkt"
+ "href": "/plugins/drivers/community/rkt"
},
{
"title": "Rookout",
- "path": "drivers/external/rookout"
+ "href": "/plugins/drivers/community/rookout"
},
{
"title": "Singularity",
- "path": "drivers/external/singularity"
+ "href": "/plugins/drivers/community/singularity"
},
{
"title": "systemd-nspawn",
- "path": "drivers/external/nspawn"
+ "href": "/plugins/drivers/community/nspawn"
},
{
"title": "Windows IIS",
- "path": "drivers/external/iis"
+ "href": "/plugins/drivers/community/iis"
}
]
},
@@ -1436,11 +1436,11 @@
"routes": [
{
"title": "Overview",
- "path": "drivers/remote"
+ "href": "/plugins/drivers/remote"
},
{
"title": "ECS",
- "path": "drivers/remote/ecs"
+ "href": "/plugins/drivers/remote/ecs"
}
]
}
@@ -1458,15 +1458,15 @@
"routes": [
{
"title": "Overview",
- "path": "devices/external"
+ "href": "/plugins/devices"
},
{
"title": "Nvidia",
- "path": "devices/external/nvidia"
+ "href": "/plugins/devices/nvidia"
},
{
"title": "USB Beta",
- "path": "devices/external/usb"
+ "href": "/plugins/devices/community/usb"
}
]
}
@@ -1498,38 +1498,38 @@
"routes": [
{
"title": "Overview",
- "path": "autoscaling"
+ "href": "/tools/autoscaling"
},
{
"title": "Agent",
"routes": [
{
"title": "Overview",
- "path": "autoscaling/agent"
+ "href": "/tools/autoscaling/agent"
},
{
"title": "apm",
- "path": "autoscaling/agent/apm"
+ "href": "/tools/autoscaling/agent/apm"
},
{
"title": "dynamic_application_sizing",
- "path": "autoscaling/agent/dynamic_application_sizing"
+ "href": "/tools/autoscaling/agent/dynamic_application_sizing"
},
{
"title": "http",
- "path": "autoscaling/agent/http"
+ "href": "/tools/autoscaling/agent/http"
},
{
"title": "nomad",
- "path": "autoscaling/agent/nomad"
+ "href": "/tools/autoscaling/agent/nomad"
},
{
"title": "policy",
- "path": "autoscaling/agent/policy"
+ "href": "/tools/autoscaling/agent/policy"
},
{
"title": "policy_eval",
- "path": "autoscaling/agent/policy_eval"
+ "href": "/tools/autoscaling/agent/policy_eval"
},
{
"title": "source",
@@ -1537,59 +1537,59 @@
},
{
"title": "strategy",
- "path": "autoscaling/agent/strategy"
+ "href": "/tools/autoscaling/agent/strategy"
},
{
"title": "target",
- "path": "autoscaling/agent/target"
+ "href": "/tools/autoscaling/agent/target"
},
{
"title": "telemetry",
- "path": "autoscaling/agent/telemetry"
+ "href": "/tools/autoscaling/agent/telemetry"
}
]
},
{
"title": "API",
- "path": "autoscaling/api"
+ "href": "/tools/autoscaling/api"
},
{
"title": "CLI",
- "path": "autoscaling/cli"
+ "href": "/tools/autoscaling/cli"
},
{
"title": "Policy",
- "path": "autoscaling/policy"
+ "href": "/tools/autoscaling/policy"
},
{
"title": "Telemetry",
- "path": "autoscaling/telemetry"
+ "href": "/tools/autoscaling/telemetry"
},
{
"title": "Plugins",
"routes": [
{
"title": "Overview",
- "path": "autoscaling/plugins"
+ "href": "/tools/autoscaling/plugins"
},
{
"title": "APM",
"routes": [
{
"title": "Overview",
- "path": "autoscaling/plugins/apm"
+ "href": "/tools/autoscaling/plugins/apm"
},
{
"title": "Datadog",
- "path": "autoscaling/plugins/apm/datadog"
+ "href": "/tools/autoscaling/plugins/apm/datadog"
},
{
"title": "Nomad API",
- "path": "autoscaling/plugins/apm/nomad"
+ "href": "/tools/autoscaling/plugins/apm/nomad"
},
{
"title": "Prometheus",
- "path": "autoscaling/plugins/apm/prometheus"
+ "href": "/tools/autoscaling/plugins/apm/prometheus"
}
]
},
@@ -1598,35 +1598,35 @@
"routes": [
{
"title": "Overview",
- "path": "autoscaling/plugins/strategy"
+ "href": "/tools/autoscaling/plugins/strategy"
},
{
"title": "Dynamic Application Sizing Average",
- "path": "autoscaling/plugins/strategy/app-sizing-avg"
+ "href": "/tools/autoscaling/plugins/strategy/app-sizing-avg"
},
{
"title": "Dynamic Application Sizing Max",
- "path": "autoscaling/plugins/strategy/app-sizing-max"
+ "href": "/tools/autoscaling/plugins/strategy/app-sizing-max"
},
{
"title": "Dynamic Application Sizing Percentile",
- "path": "autoscaling/plugins/strategy/app-sizing-percentile"
+ "href": "/tools/autoscaling/plugins/strategy/app-sizing-percentile"
},
{
"title": "Fixed Value",
- "path": "autoscaling/plugins/strategy/fixed-value"
+ "href": "/tools/autoscaling/plugins/strategy/fixed-value"
},
{
"title": "Pass-Through",
- "path": "autoscaling/plugins/strategy/pass-through"
+ "href": "/tools/autoscaling/plugins/strategy/pass-through"
},
{
"title": "Target Value",
- "path": "autoscaling/plugins/strategy/target-value"
+ "href": "/tools/autoscaling/plugins/strategy/target-value"
},
{
"title": "Threshold",
- "path": "autoscaling/plugins/strategy/threshold"
+ "href": "/tools/autoscaling/plugins/strategy/threshold"
}
]
},
@@ -1635,33 +1635,33 @@
"routes": [
{
"title": "Overview",
- "path": "autoscaling/plugins/target"
+ "href": "/tools/autoscaling/plugins/target"
},
{
"title": "Amazon Web Services Autoscaling Group",
- "path": "autoscaling/plugins/target/aws-asg"
+ "href": "/tools/autoscaling/plugins/target/aws-asg"
},
{
"title": "Azure Virtual Machine Scale Set",
- "path": "autoscaling/plugins/target/azure-vmss"
+ "href": "/tools/autoscaling/plugins/target/azure-vmss"
},
{
"title": "Dynamic Application Sizing",
- "path": "autoscaling/plugins/target/app-sizing-nomad"
+ "href": "/tools/autoscaling/plugins/target/app-sizing-nomad"
},
{
"title": "Google Cloud Engine Managed Instance Group",
- "path": "autoscaling/plugins/target/gce-mig"
+ "href": "/tools/autoscaling/plugins/target/gce-mig"
},
{
"title": "Nomad Task Group",
- "path": "autoscaling/plugins/target/nomad"
+ "href": "/tools/autoscaling/plugins/target/nomad"
}
]
},
{
"title": "Community",
- "path": "autoscaling/plugins/external"
+ "href": "/tools/autoscaling/plugins/external"
}
]
},
@@ -1670,38 +1670,38 @@
"routes": [
{
"title": "Overview",
- "path": "autoscaling/internals"
+ "href": "/tools/autoscaling/internals"
},
{
"title": "Checks",
- "path": "autoscaling/internals/checks"
+ "href": "/tools/autoscaling/internals/checks"
},
{
"title": "Node Selector Strategy",
- "path": "autoscaling/internals/node-selector-strategy"
+ "href": "/tools/autoscaling/internals/node-selector-strategy"
},
{
"title": "Plugins",
"routes": [
{
"title": "Overview",
- "path": "autoscaling/internals/plugins"
+ "href": "/tools/autoscaling/internals/plugins"
},
{
"title": "Base",
- "path": "autoscaling/internals/plugins/base"
+ "href": "/tools/autoscaling/internals/plugins/base"
},
{
"title": "APM",
- "path": "autoscaling/internals/plugins/apm"
+ "href": "/tools/autoscaling/internals/plugins/apm"
},
{
"title": "Strategy",
- "path": "autoscaling/internals/plugins/strategy"
+ "href": "/tools/autoscaling/internals/plugins/strategy"
},
{
"title": "Target",
- "path": "autoscaling/internals/plugins/target"
+ "href": "/tools/autoscaling/internals/plugins/target"
}
]
}
@@ -1787,7 +1787,6 @@
{
"title": "Overview",
"path": "enterprise/license"
-
},
{
"title": "FAQ",
diff --git a/website/data/plugins-nav-data.json b/website/data/plugins-nav-data.json
new file mode 100644
index 000000000..2e1b3e9fc
--- /dev/null
+++ b/website/data/plugins-nav-data.json
@@ -0,0 +1,107 @@
+[
+ {
+ "title": "Task Drivers",
+ "routes": [
+ {
+ "title": "Overview",
+ "path": "drivers"
+ },
+ {
+ "title": "Podman",
+ "path": "drivers/podman"
+ },
+ {
+ "title": "Community",
+ "routes": [
+ {
+ "title": "Overview",
+ "path": "drivers/community"
+ },
+ {
+ "title": "containerd",
+ "path": "drivers/community/containerd"
+ },
+ {
+ "title": "Firecracker driver",
+ "path": "drivers/community/firecracker-task-driver"
+ },
+ {
+ "title": "Jail task driver",
+ "path": "drivers/community/jail-task-driver"
+ },
+ {
+ "title": "Lightrun",
+ "path": "drivers/community/lightrun"
+ },
+ {
+ "title": "LXC",
+ "path": "drivers/community/lxc"
+ },
+ {
+ "title": "Pot",
+ "path": "drivers/community/pot"
+ },
+ {
+ "title": "Rkt Deprecated ",
+ "path": "drivers/community/rkt"
+ },
+ {
+ "title": "Rookout",
+ "path": "drivers/community/rookout"
+ },
+ {
+ "title": "Singularity",
+ "path": "drivers/community/singularity"
+ },
+ {
+ "title": "systemd-nspawn",
+ "path": "drivers/community/nspawn"
+ },
+ {
+ "title": "Windows IIS",
+ "path": "drivers/community/iis"
+ }
+ ]
+ },
+ {
+ "title": "Remote",
+ "routes": [
+ {
+ "title": "Overview",
+ "path": "drivers/remote"
+ },
+ {
+ "title": "ECS",
+ "path": "drivers/remote/ecs"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "title": "Device Plugins",
+ "routes": [
+ {
+ "title": "Overview",
+ "path": "devices"
+ },
+ {
+ "title": "Nvidia",
+ "path": "devices/nvidia"
+ },
+ {
+ "title": "Community",
+ "routes": [
+ {
+ "title": "Overview",
+ "path": "devices/community"
+ },
+ {
+ "title": "USB Beta",
+ "path": "devices/community/usb"
+ }
+ ]
+ }
+ ]
+ }
+]
diff --git a/website/data/subnav.js b/website/data/subnav.js
index 56ddf5dd0..ce213fc78 100644
--- a/website/data/subnav.js
+++ b/website/data/subnav.js
@@ -1,22 +1,5 @@
-export default [
+const subnavData = [
{ text: 'Overview', url: '/', type: 'inbound' },
- {
- text: 'Use Cases',
- submenu: [
- {
- text: 'Simple Container Orchestration',
- url: '/use-cases/simple-container-orchestration',
- },
- {
- text: 'Non-Containerized Application Orchestration',
- url: '/use-cases/non-containerized-application-orchestration',
- },
- {
- text: 'Automated Service Networking with Consul',
- url: '/use-cases/automated-service-networking-with-consul',
- },
- ],
- },
{
text: 'Enterprise',
url: 'https://www.hashicorp.com/products/nomad/',
@@ -38,9 +21,21 @@ export default [
url: '/api-docs',
type: 'inbound',
},
+ {
+ text: 'Plugins',
+ url: '/plugins',
+ type: 'inbound',
+ },
+ {
+ text: 'Tools',
+ url: '/tools',
+ type: 'inbound',
+ },
{
text: 'Community',
url: '/community',
type: 'inbound',
},
]
+
+export default subnavData
diff --git a/website/data/tools-nav-data.json b/website/data/tools-nav-data.json
new file mode 100644
index 000000000..34ad0ecce
--- /dev/null
+++ b/website/data/tools-nav-data.json
@@ -0,0 +1,214 @@
+[
+ {
+ "title": "Autoscaling",
+ "routes": [
+ {
+ "title": "Overview",
+ "path": "autoscaling"
+ },
+ {
+ "title": "Agent",
+ "routes": [
+ {
+ "title": "Overview",
+ "path": "autoscaling/agent"
+ },
+ {
+ "title": "apm",
+ "path": "autoscaling/agent/apm"
+ },
+ {
+ "title": "dynamic_application_sizing",
+ "path": "autoscaling/agent/dynamic_application_sizing"
+ },
+ {
+ "title": "http",
+ "path": "autoscaling/agent/http"
+ },
+ {
+ "title": "nomad",
+ "path": "autoscaling/agent/nomad"
+ },
+ {
+ "title": "policy",
+ "path": "autoscaling/agent/policy"
+ },
+ {
+ "title": "policy_eval",
+ "path": "autoscaling/agent/policy_eval"
+ },
+ {
+ "title": "strategy",
+ "path": "autoscaling/agent/strategy"
+ },
+ {
+ "title": "target",
+ "path": "autoscaling/agent/target"
+ },
+ {
+ "title": "telemetry",
+ "path": "autoscaling/agent/telemetry"
+ }
+ ]
+ },
+ {
+ "title": "API",
+ "path": "autoscaling/api"
+ },
+ {
+ "title": "CLI",
+ "path": "autoscaling/cli"
+ },
+ {
+ "title": "Policy",
+ "path": "autoscaling/policy"
+ },
+ {
+ "title": "Telemetry",
+ "path": "autoscaling/telemetry"
+ },
+ {
+ "title": "Plugins",
+ "routes": [
+ {
+ "title": "Overview",
+ "path": "autoscaling/plugins"
+ },
+ {
+ "title": "APM",
+ "routes": [
+ {
+ "title": "Overview",
+ "path": "autoscaling/plugins/apm"
+ },
+ {
+ "title": "Datadog",
+ "path": "autoscaling/plugins/apm/datadog"
+ },
+ {
+ "title": "Nomad API",
+ "path": "autoscaling/plugins/apm/nomad"
+ },
+ {
+ "title": "Prometheus",
+ "path": "autoscaling/plugins/apm/prometheus"
+ }
+ ]
+ },
+ {
+ "title": "Strategy",
+ "routes": [
+ {
+ "title": "Overview",
+ "path": "autoscaling/plugins/strategy"
+ },
+ {
+ "title": "Dynamic Application Sizing Average",
+ "path": "autoscaling/plugins/strategy/app-sizing-avg"
+ },
+ {
+ "title": "Dynamic Application Sizing Max",
+ "path": "autoscaling/plugins/strategy/app-sizing-max"
+ },
+ {
+ "title": "Dynamic Application Sizing Percentile",
+ "path": "autoscaling/plugins/strategy/app-sizing-percentile"
+ },
+ {
+ "title": "Fixed Value",
+ "path": "autoscaling/plugins/strategy/fixed-value"
+ },
+ {
+ "title": "Pass-Through",
+ "path": "autoscaling/plugins/strategy/pass-through"
+ },
+ {
+ "title": "Target Value",
+ "path": "autoscaling/plugins/strategy/target-value"
+ },
+ {
+ "title": "Threshold",
+ "path": "autoscaling/plugins/strategy/threshold"
+ }
+ ]
+ },
+ {
+ "title": "Target",
+ "routes": [
+ {
+ "title": "Overview",
+ "path": "autoscaling/plugins/target"
+ },
+ {
+ "title": "Amazon Web Services Autoscaling Group",
+ "path": "autoscaling/plugins/target/aws-asg"
+ },
+ {
+ "title": "Azure Virtual Machine Scale Set",
+ "path": "autoscaling/plugins/target/azure-vmss"
+ },
+ {
+ "title": "Dynamic Application Sizing",
+ "path": "autoscaling/plugins/target/app-sizing-nomad"
+ },
+ {
+ "title": "Google Cloud Engine Managed Instance Group",
+ "path": "autoscaling/plugins/target/gce-mig"
+ },
+ {
+ "title": "Nomad Task Group",
+ "path": "autoscaling/plugins/target/nomad"
+ }
+ ]
+ },
+ {
+ "title": "Community",
+ "path": "autoscaling/plugins/external"
+ }
+ ]
+ },
+ {
+ "title": "Internals",
+ "routes": [
+ {
+ "title": "Overview",
+ "path": "autoscaling/internals"
+ },
+ {
+ "title": "Checks",
+ "path": "autoscaling/internals/checks"
+ },
+ {
+ "title": "Node Selector Strategy",
+ "path": "autoscaling/internals/node-selector-strategy"
+ },
+ {
+ "title": "Plugins",
+ "routes": [
+ {
+ "title": "Overview",
+ "path": "autoscaling/internals/plugins"
+ },
+ {
+ "title": "Base",
+ "path": "autoscaling/internals/plugins/base"
+ },
+ {
+ "title": "APM",
+ "path": "autoscaling/internals/plugins/apm"
+ },
+ {
+ "title": "Strategy",
+ "path": "autoscaling/internals/plugins/strategy"
+ },
+ {
+ "title": "Target",
+ "path": "autoscaling/internals/plugins/target"
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ }
+]
diff --git a/website/pages/plugins/[[...page]].tsx b/website/pages/plugins/[[...page]].tsx
new file mode 100644
index 000000000..c82972f45
--- /dev/null
+++ b/website/pages/plugins/[[...page]].tsx
@@ -0,0 +1,42 @@
+import { productName, productSlug } from 'data/metadata'
+import DocsPage from '@hashicorp/react-docs-page'
+import {
+ generateStaticPaths,
+ generateStaticProps,
+} from '@hashicorp/react-docs-page/server'
+
+const NAV_DATA_FILE = 'data/plugins-nav-data.json'
+const CONTENT_DIR = 'content/plugins'
+const basePath = 'plugins'
+
+export default function DocsLayout(props) {
+ return (
+
+ )
+}
+
+export async function getStaticPaths() {
+ return {
+ fallback: false,
+ paths: await generateStaticPaths({
+ navDataFile: NAV_DATA_FILE,
+ localContentDir: CONTENT_DIR,
+ }),
+ }
+}
+
+export async function getStaticProps({ params }) {
+ return {
+ props: await generateStaticProps({
+ navDataFile: NAV_DATA_FILE,
+ localContentDir: CONTENT_DIR,
+ product: { name: productName, slug: productSlug },
+ params,
+ basePath: basePath,
+ }),
+ }
+}
diff --git a/website/pages/tools/[[...page]].tsx b/website/pages/tools/[[...page]].tsx
new file mode 100644
index 000000000..772c0526d
--- /dev/null
+++ b/website/pages/tools/[[...page]].tsx
@@ -0,0 +1,42 @@
+import { productName, productSlug } from 'data/metadata'
+import DocsPage from '@hashicorp/react-docs-page'
+import {
+ generateStaticPaths,
+ generateStaticProps,
+} from '@hashicorp/react-docs-page/server'
+
+const NAV_DATA_FILE = 'data/tools-nav-data.json'
+const CONTENT_DIR = 'content/tools'
+const basePath = 'tools'
+
+export default function DocsLayout(props) {
+ return (
+
+ )
+}
+
+export async function getStaticPaths() {
+ return {
+ fallback: false,
+ paths: await generateStaticPaths({
+ navDataFile: NAV_DATA_FILE,
+ localContentDir: CONTENT_DIR,
+ }),
+ }
+}
+
+export async function getStaticProps({ params }) {
+ return {
+ props: await generateStaticProps({
+ navDataFile: NAV_DATA_FILE,
+ localContentDir: CONTENT_DIR,
+ product: { name: productName, slug: productSlug },
+ params,
+ basePath: basePath,
+ }),
+ }
+}
diff --git a/website/redirects.js b/website/redirects.js
index e74a0d045..48a206b7f 100644
--- a/website/redirects.js
+++ b/website/redirects.js
@@ -465,7 +465,7 @@ module.exports = [
},
{
source: '/docs/devices/nvidia',
- destination: '/docs/devices/external/nvidia',
+ destination: '/plugins/devices/nvidia',
permanent: true,
},
{
@@ -685,7 +685,7 @@ module.exports = [
// Moved /docs/drivers/external/podman -> /docs/drivers/podman
{
source: '/docs/drivers/external/podman',
- destination: '/docs/drivers/podman',
+ destination: '/plugins/drivers/podman',
permanent: true,
},
@@ -888,12 +888,12 @@ module.exports = [
// Redirect old LXC driver doc to new one in /docs/external
{
source: '/docs/drivers/lxc',
- destination: '/docs/drivers/external/lxc',
+ destination: '/plugins/drivers/community/lxc',
permanent: true,
},
{
source: '/docs/drivers/rkt',
- destination: '/docs/drivers/external/rkt',
+ destination: '/plugins/drivers/community/rkt',
permanent: true,
},
@@ -1262,4 +1262,108 @@ module.exports = [
destination: '/:splat',
permanent: true,
},
+ // Extracted content into `/plugins` & `/tools`
+ {
+ source: '/docs/autoscaling',
+ destination: '/tools/autoscaling',
+ permanent: true,
+ },
+ {
+ source: '/docs/autoscaling/:splat*',
+ destination: '/tools/autoscaling/:splat*',
+ permanent: true,
+ },
+ // Extracted content into `/plugins` & `/tools`;
+ // - Redirect individual pages so we don't conflict with
+ // "built-in plugins" pages
+ {
+ source: '/docs/devices/external',
+ destination: '/plugins/devices/community',
+ permanent: true,
+ },
+ {
+ source: '/docs/devices/external/usb',
+ destination: '/plugins/devices/community/usb',
+ permanent: true,
+ },
+ {
+ source: '/docs/devices/external/nvidia',
+ destination: '/plugins/devices/nvidia',
+ permanent: true,
+ },
+ {
+ source: '/docs/drivers/external/containerd',
+ destination: '/plugins/drivers/community/containerd',
+ permanent: true,
+ },
+ {
+ source: '/docs/drivers/external/firecracker-task-driver',
+ destination: '/plugins/drivers/community/firecracker-task-driver',
+ permanent: true,
+ },
+ {
+ source: '/docs/drivers/external/iis',
+ destination: '/plugins/drivers/community/iis',
+ permanent: true,
+ },
+ {
+ source: '/docs/drivers/external',
+ destination: '/plugins/drivers/community',
+ permanent: true,
+ },
+ {
+ source: '/docs/drivers/external/jail-task-driver',
+ destination: '/plugins/drivers/community/jail-task-driver',
+ permanent: true,
+ },
+ {
+ source: '/docs/drivers/external/lightrun',
+ destination: '/plugins/drivers/community/lightrun',
+ permanent: true,
+ },
+ {
+ source: '/docs/drivers/external/lxc',
+ destination: '/plugins/drivers/community/lxc',
+ permanent: true,
+ },
+ {
+ source: '/docs/drivers/external/nspawn',
+ destination: '/plugins/drivers/community/nspawn',
+ permanent: true,
+ },
+ {
+ source: '/docs/drivers/external/pot',
+ destination: '/plugins/drivers/community/pot',
+ permanent: true,
+ },
+ {
+ source: '/docs/drivers/external/rkt',
+ destination: '/plugins/drivers/community/rkt',
+ permanent: true,
+ },
+ {
+ source: '/docs/drivers/external/rookout',
+ destination: '/plugins/drivers/community/rookout',
+ permanent: true,
+ },
+ {
+ source: '/docs/drivers/external/singularity',
+ destination: '/plugins/drivers/community/singularity',
+ permanent: true,
+ },
+ {
+ source: '/docs/drivers/podman',
+ destination: '/plugins/drivers/podman',
+ permanent: true,
+ },
+ {
+ source: '/docs/drivers/remote/ecs',
+ destination: '/plugins/drivers/remote/ecs',
+ permanent: true,
+ },
+ {
+ source: '/docs/drivers/remote',
+ destination: '/plugins/drivers/remote',
+ permanent: true,
+ },
]