diff --git a/docs/07-Release Notes/v0.22/v0.22.0.md b/docs/07-Release Notes/v0.22/v0.22.0.md index 9e6aa5da..4af164d8 100644 --- a/docs/07-Release Notes/v0.22/v0.22.0.md +++ b/docs/07-Release Notes/v0.22/v0.22.0.md @@ -1,7 +1,7 @@ --- slug: /release-notes/v0.22.0 title: v0.22.0 -sidebar_position: 20 +sidebar_position: 22 --- # metal-stack v0.22.0 See original release note at [https://github.com/metal-stack/releases/releases/tag/v0.22.0](https://github.com/metal-stack/releases/releases/tag/v0.22.0) diff --git a/docs/07-Release Notes/v0.22/v0.22.1.md b/docs/07-Release Notes/v0.22/v0.22.1.md index 5c382f9d..eb05b166 100644 --- a/docs/07-Release Notes/v0.22/v0.22.1.md +++ b/docs/07-Release Notes/v0.22/v0.22.1.md @@ -1,7 +1,7 @@ --- slug: /release-notes/v0.22.1 title: v0.22.1 -sidebar_position: 19 +sidebar_position: 21 --- # metal-stack v0.22.1 See original release note at [https://github.com/metal-stack/releases/releases/tag/v0.22.1](https://github.com/metal-stack/releases/releases/tag/v0.22.1) diff --git a/docs/07-Release Notes/v0.22/v0.22.10.md b/docs/07-Release Notes/v0.22/v0.22.10.md index 45215955..4814412c 100644 --- a/docs/07-Release Notes/v0.22/v0.22.10.md +++ b/docs/07-Release Notes/v0.22/v0.22.10.md @@ -1,7 +1,7 @@ --- slug: /release-notes/v0.22.10 title: v0.22.10 -sidebar_position: 10 +sidebar_position: 12 --- # metal-stack v0.22.10 See original release note at [https://github.com/metal-stack/releases/releases/tag/v0.22.10](https://github.com/metal-stack/releases/releases/tag/v0.22.10) diff --git a/docs/07-Release Notes/v0.22/v0.22.11.md b/docs/07-Release Notes/v0.22/v0.22.11.md index 760ef11a..fe533256 100644 --- a/docs/07-Release Notes/v0.22/v0.22.11.md +++ b/docs/07-Release Notes/v0.22/v0.22.11.md @@ -1,7 +1,7 @@ --- slug: /release-notes/v0.22.11 title: v0.22.11 -sidebar_position: 9 +sidebar_position: 11 --- # metal-stack v0.22.11 See original release note at [https://github.com/metal-stack/releases/releases/tag/v0.22.11](https://github.com/metal-stack/releases/releases/tag/v0.22.11) diff --git a/docs/07-Release Notes/v0.22/v0.22.12.md b/docs/07-Release Notes/v0.22/v0.22.12.md index 29e9419a..4a7d2591 100644 --- a/docs/07-Release Notes/v0.22/v0.22.12.md +++ b/docs/07-Release Notes/v0.22/v0.22.12.md @@ -1,7 +1,7 @@ --- slug: /release-notes/v0.22.12 title: v0.22.12 -sidebar_position: 8 +sidebar_position: 10 --- # metal-stack v0.22.12 See original release note at [https://github.com/metal-stack/releases/releases/tag/v0.22.12](https://github.com/metal-stack/releases/releases/tag/v0.22.12) diff --git a/docs/07-Release Notes/v0.22/v0.22.13.md b/docs/07-Release Notes/v0.22/v0.22.13.md index b45e6685..4898f56b 100644 --- a/docs/07-Release Notes/v0.22/v0.22.13.md +++ b/docs/07-Release Notes/v0.22/v0.22.13.md @@ -1,7 +1,7 @@ --- slug: /release-notes/v0.22.13 title: v0.22.13 -sidebar_position: 7 +sidebar_position: 9 --- # metal-stack v0.22.13 See original release note at [https://github.com/metal-stack/releases/releases/tag/v0.22.13](https://github.com/metal-stack/releases/releases/tag/v0.22.13) diff --git a/docs/07-Release Notes/v0.22/v0.22.14.md b/docs/07-Release Notes/v0.22/v0.22.14.md index f6d1a165..ee80f025 100644 --- a/docs/07-Release Notes/v0.22/v0.22.14.md +++ b/docs/07-Release Notes/v0.22/v0.22.14.md @@ -1,7 +1,7 @@ --- slug: /release-notes/v0.22.14 title: v0.22.14 -sidebar_position: 6 +sidebar_position: 8 --- # metal-stack v0.22.14 See original release note at [https://github.com/metal-stack/releases/releases/tag/v0.22.14](https://github.com/metal-stack/releases/releases/tag/v0.22.14) diff --git a/docs/07-Release Notes/v0.22/v0.22.15.md b/docs/07-Release Notes/v0.22/v0.22.15.md index 8322a65c..37c16ece 100644 --- a/docs/07-Release Notes/v0.22/v0.22.15.md +++ b/docs/07-Release Notes/v0.22/v0.22.15.md @@ -1,7 +1,7 @@ --- slug: /release-notes/v0.22.15 title: v0.22.15 -sidebar_position: 5 +sidebar_position: 7 --- # metal-stack v0.22.15 See original release note at [https://github.com/metal-stack/releases/releases/tag/v0.22.15](https://github.com/metal-stack/releases/releases/tag/v0.22.15) diff --git a/docs/07-Release Notes/v0.22/v0.22.16.md b/docs/07-Release Notes/v0.22/v0.22.16.md index 6980acff..7782a49f 100644 --- a/docs/07-Release Notes/v0.22/v0.22.16.md +++ b/docs/07-Release Notes/v0.22/v0.22.16.md @@ -1,7 +1,7 @@ --- slug: /release-notes/v0.22.16 title: v0.22.16 -sidebar_position: 4 +sidebar_position: 6 --- # metal-stack v0.22.16 See original release note at [https://github.com/metal-stack/releases/releases/tag/v0.22.16](https://github.com/metal-stack/releases/releases/tag/v0.22.16) diff --git a/docs/07-Release Notes/v0.22/v0.22.17.md b/docs/07-Release Notes/v0.22/v0.22.17.md index a38af3bb..27d900d3 100644 --- a/docs/07-Release Notes/v0.22/v0.22.17.md +++ b/docs/07-Release Notes/v0.22/v0.22.17.md @@ -1,7 +1,7 @@ --- slug: /release-notes/v0.22.17 title: v0.22.17 -sidebar_position: 3 +sidebar_position: 5 --- # metal-stack v0.22.17 See original release note at [https://github.com/metal-stack/releases/releases/tag/v0.22.17](https://github.com/metal-stack/releases/releases/tag/v0.22.17) diff --git a/docs/07-Release Notes/v0.22/v0.22.18.md b/docs/07-Release Notes/v0.22/v0.22.18.md index a85482ce..c48d3f66 100644 --- a/docs/07-Release Notes/v0.22/v0.22.18.md +++ b/docs/07-Release Notes/v0.22/v0.22.18.md @@ -1,7 +1,7 @@ --- slug: /release-notes/v0.22.18 title: v0.22.18 -sidebar_position: 2 +sidebar_position: 4 --- # metal-stack v0.22.18 See original release note at [https://github.com/metal-stack/releases/releases/tag/v0.22.18](https://github.com/metal-stack/releases/releases/tag/v0.22.18) @@ -24,6 +24,10 @@ See original release note at [https://github.com/metal-stack/releases/releases/t * For operators who already deployed metal-apiserver prior to this release: The field `metal_apiserver_admin_subjects` was removed and should be cleaned up. Admins are now managed through the provider tenant that is automatically ensured on startup of the metal-apiserver. ([release notes](https://github.com/metal-stack/metal-roles/releases/tag/v0.26.0)) +* In [#633](https://github.com/metal-stack/metal-roles/pull/633) changes were introduced for the s3 backend configuration used by the `backup-restore-sidecar` component. Unfortunately, the defaults for the Ansible variable `*_backup_restore_sidecar_object_max_keep` were removed in the process. +So if the corresponding `*_backup_restore_sidecar_object_max_keep` variable for the metal-stack databases (`ipam-db`, `masterdata-db`, `metal-db`) are not explicitly defined in your deployment, the backup lifecycle rule configuration might be modified unexpectedly. So before rolling out metal-stack `v0.22.18` please consider setting those variables explicitly in your deployment. If you want to use the defaults configure e.g. `ipam_db_backup_restore_sidecar_object_max_keep: 480` +The defaults will be added back again with metal-roles pull request [#699](https://github.com/metal-stack/metal-roles/pull/633). + ## Component Releases ### metal-roles v0.27.2 * ProviderTenant adoptions for metal-apiserver (metal-stack/metal-roles#642) @majst01 diff --git a/docs/07-Release Notes/v0.22/v0.22.19.md b/docs/07-Release Notes/v0.22/v0.22.19.md index b246eb99..f3821d0c 100644 --- a/docs/07-Release Notes/v0.22/v0.22.19.md +++ b/docs/07-Release Notes/v0.22/v0.22.19.md @@ -1,7 +1,7 @@ --- slug: /release-notes/v0.22.19 title: v0.22.19 -sidebar_position: 1 +sidebar_position: 3 --- # metal-stack v0.22.19 See original release note at [https://github.com/metal-stack/releases/releases/tag/v0.22.19](https://github.com/metal-stack/releases/releases/tag/v0.22.19) diff --git a/docs/07-Release Notes/v0.22/v0.22.2.md b/docs/07-Release Notes/v0.22/v0.22.2.md index 8d77eb74..6165d809 100644 --- a/docs/07-Release Notes/v0.22/v0.22.2.md +++ b/docs/07-Release Notes/v0.22/v0.22.2.md @@ -1,7 +1,7 @@ --- slug: /release-notes/v0.22.2 title: v0.22.2 -sidebar_position: 18 +sidebar_position: 20 --- # metal-stack v0.22.2 See original release note at [https://github.com/metal-stack/releases/releases/tag/v0.22.2](https://github.com/metal-stack/releases/releases/tag/v0.22.2) diff --git a/docs/07-Release Notes/v0.22/v0.22.20.md b/docs/07-Release Notes/v0.22/v0.22.20.md new file mode 100644 index 00000000..cd27b04e --- /dev/null +++ b/docs/07-Release Notes/v0.22/v0.22.20.md @@ -0,0 +1,106 @@ +--- +slug: /release-notes/v0.22.20 +title: v0.22.20 +sidebar_position: 2 +--- +# metal-stack v0.22.20 +See original release note at [https://github.com/metal-stack/releases/releases/tag/v0.22.20](https://github.com/metal-stack/releases/releases/tag/v0.22.20) +## General +* [Gardener v1.139](https://github.com/gardener/gardener/releases/tag/v1.139.0) +* This release was integration tested against the control plane that fully uses Gateway API and without anymore `Ingress` resources. We recommend to migrate to Gateway API for this release. +## Breaking Changes +* It is now possible to configure `NoncurrentDays` also via flag, as follow up from #141. The s3 backend can be configured with `NewerNoncurrentVersions` as well as `NoncurrentDays`. Both can be used together, independently or completely removed from the lifecycle rule. The always applied default for `NewerNoncurrentVersions` was removed. So make sure to configure it accordingly, if not already configured in your deployment. (metal-stack/backup-restore-sidecar#148) +## Required Actions +* ⚠️ Make sure the seed clusters are updated to at least K8s 1.32 before rolling out this Gardener release. Gardener writes that >= 1.30 seeds are supported but these lower versions cannot be reconciled because the perses-operator CRDs cannot be applied. +* The monsoon sonic-exporter was superseded and will be removed in a future release. Use gNMI instead. + More information about the migration can be found in the gnmic [README](https://github.com/metal-stack/metal-roles/blob/master/partition/roles/monitoring/gnmic/README.md). (metal-stack/metal-roles#670) +## Noteworthy +* - We now create a dedicated internal mini-lab docker network (mini_lab_internal) to enable explicit reproducible IP assignments for Service type: LoadBalancer. We reserve the 172.42.0.1/16 subnet for the mini_lab_internal network. mini-lab will manage the lifecycle of this network and will destroy it during `make down`. + + - We made changes to the certificates. If you deployed mini-lab before you need to run `make roll-certs` to update host names in the certificates. (metal-stack/mini-lab#299) +* In [#633](https://github.com/metal-stack/metal-roles/pull/633) changes were introduced for the s3 backend configuration used by the `backup-restore-sidecar` component. Unfortunately, the defaults for the Ansible variable `*_backup_restore_sidecar_object_max_keep` were removed in the process. + So if the corresponding `*_backup_restore_sidecar_object_max_keep` variable for the metal-stack databases (`ipam-db`, `masterdata-db`, `metal-db`) are not explicitly defined in your deployment, the backup lifecycle rule configuration will be modified unexpectedly. So before rolling out metal-stack `v0.22.18` please consider setting those variables explicitly in your deployment. If you want to use the defaults configure e.g. `ipam_db_backup_restore_sidecar_object_max_keep: 480` + The defaults will be added back again with metal-roles pull request [#699](https://github.com/metal-stack/metal-roles/pull/633). (metal-stack/metal-roles#699) +## Component Releases +### metal-ansible-modules v0.3.2 +* Update v2 modules to latest API. (metal-stack/metal-ansible-modules#26) @Gerrit91 +* Act on latest created resource when using identifier label. (metal-stack/metal-ansible-modules#27) @Gerrit91 +* Use abstract base class to bundle common v2 module behavior + tests (metal-stack/metal-ansible-modules#29) @Gerrit91 +### virtual-garden-kubeconfig-refresher v0.1.6 +* Use STATIC_KUBECONFIG as environment variable name (metal-stack/virtual-garden-kubeconfig-refresher#7) @simcod +### metal-roles v0.30.0 +* Deploy gardener metrics exporter again (metal-stack/metal-roles#599) @simcod +* Increase default length of metal-apiserver session secret. (metal-stack/metal-roles#674) @Gerrit91 +* Optional loki deployment (metal-stack/metal-roles#672) @simcod +* Enable TLS verification by default (metal-stack/metal-roles#677) @simcod +* fix(alloy): allow setting docker network (metal-stack/metal-roles#676) @ma-hartma +* Adaptions for g/g v1.139. (metal-stack/metal-roles#682) @Gerrit91 +* sonic-exporter to gnmic migration (metal-stack/metal-roles#670) @Sven-Ric, @Gerrit91 +* feat(monitoring): allow separate ingress annotations for grafana and alertmanager (metal-stack/metal-roles#685) @ma-hartma +* Update partition-proxy image tag. (metal-stack/metal-roles#686) @Gerrit91 +* Add missing s3 object max keep backup lifecycle defaults (metal-stack/metal-roles#699) @simcod +* Enable vpn in metal-apiserver (metal-stack/metal-roles#687) @majst01 +* mgmt-server: render ssh_config hosts in stable order (metal-stack/metal-roles#689) @GeertJohan +* mgmt-server: escape the pubkey in the authorized_keys regexp (metal-stack/metal-roles#690) @GeertJohan +* Fix handler notify/listen case mismatches (metal-stack/metal-roles#692) @GeertJohan +### backup-restore-sidecar v0.14.0 +* fix: do not remove redis dump #145 (metal-stack/backup-restore-sidecar#146) @vknabel +* Replace s3/manager with s3/transfermanager (metal-stack/backup-restore-sidecar#147) @simcod +* Make NewerNoncurrentVersions optional in lifecycle policy for s3 backend (metal-stack/backup-restore-sidecar#148) @simcod +### helm-charts v0.7.7 +* Enable TLS verification by default (metal-stack/helm-charts#172) @simcod +* Enable vpn in metal-apiserver (metal-stack/helm-charts#173) @majst01 +* Modify Postgres pg_stat_statement query (metal-stack/helm-charts#171) @emekaponw, @eberlep +### metal-apiserver v0.9.1 +* Enable TLS verification by default (metal-stack/metal-apiserver#278) @simcod +### api v0.4.4 +* Update typescript dependencies (metal-stack/api#169) @majst01 +* Add test interceptor to Python client. (metal-stack/api#170) @Gerrit91 +* Add missing update labels for images. (metal-stack/api#172) @Gerrit91 +### tenant-apiserver v0.1.1 +* Create v7 uuids for resources. (metal-stack/tenant-apiserver#5) @Gerrit91 +### metal-hammer v0.15.2 +* Strict error checking on umount, report back to metal-api (metal-stack/metal-hammer#190) @majst01 +* build with go-hal@add-H13SSH (metal-stack/metal-hammer#184) @mwennrich +* Fix chrony config of firewalls (metal-stack/metal-hammer#192) @majst01 +### mini-lab v0.7.0 +* feat: add gateway-api support (metal-stack/mini-lab#299) @l0wl3vel +* Raise Garden cluster K8s version to 1.35. (metal-stack/mini-lab#323) @Gerrit91 +* Disable metal-apiserver TLS verification (metal-stack/mini-lab#319) @simcod +* Add a make target to export admin editor token (metal-stack/mini-lab#314) @majst01 +* Example for metal-roles override (metal-stack/mini-lab#313) @simcod +* Fix route reconciliation by enabling fpm (metal-stack/mini-lab#315) @l0wl3vel +* Latest adaptions for MEP-4. (metal-stack/mini-lab#311) @Gerrit91 +* Export metal-apiserver url (metal-stack/mini-lab#307) @majst01 +### duros-controller v0.12.2 +* Update lb-csi and csi sidecars (metal-stack/duros-controller#102) @majst01 +### gardener-extension-ontap v0.2.21 +* Documentation ontap (metal-stack/gardener-extension-ontap#98) @Honigeintopf +* Update go dependencies and ci actions (metal-stack/gardener-extension-ontap#99) @majst01 +* provide ontap VolumeSnapshotClass (metal-stack/gardener-extension-ontap#97) @mwennrich +* use dedicated names for snapshot-controller rbac, to not collide with existing rbac (metal-stack/gardener-extension-ontap#96) @mwennrich +# Merged Pull Requests +This is a list of pull requests that were merged since the last release. The list does not contain pull requests from release-vector-repositories. + +The fact that these pull requests were merged does not necessarily imply that they have already become part of this metal-stack release. + +* Update ubuntu kernel to 6.18.40 (metal-stack/metal-images#431) @majst01 +* Better support for protoyaml (printer and multi-document reader) (metal-stack/metal-lib#210) @Gerrit91 +* Bump releases to version v0.22.19 (metal-stack/website#329) @metal-robot[bot] +* chore(deps): bump the docusaurus-dependencies group with 4 updates (metal-stack/website#330) @dependabot[bot] +* chore(deps): bump the other-dependencies group across 1 directory with 4 updates (metal-stack/website#331) @dependabot[bot] +* Use protoyaml for edit command (metal-stack/metal-lib#212) @Gerrit91 +* Use protoyaml for everything by default and update to latest API (metal-stack/cli#38) @Gerrit91 +* Partition (metal-stack/cli#19) @majst01 +* Update containerd on debian (metal-stack/metal-images#425) @majst01 +* Remove iptables and fever (metal-stack/metal-images#432) @majst01 +* Generate admin docs. (metal-stack/cli#43) @Gerrit91 +* Admin token create (metal-stack/cli#41) @majst01 +* Unify update meta and labels + slight refactorings. (metal-stack/cli#42) @Gerrit91 +* Add gnmic to the release vector (metal-stack/releases#313) @Sven-Ric +* VPN commands. (metal-stack/cli#44) @Gerrit91 +* Fix empty chrony config if ntpservers is empty (metal-stack/os-installer#9) @majst01 +* Network commands (metal-stack/cli#45) @Gerrit91 +* cleanup completions (metal-stack/cli#46) @majst01 +* Debian kernel 6.12.100 (metal-stack/metal-images#434) @majst01 +* Next release (metal-stack/releases#310) @metal-robot[bot] \ No newline at end of file diff --git a/docs/07-Release Notes/v0.22/v0.22.21.md b/docs/07-Release Notes/v0.22/v0.22.21.md new file mode 100644 index 00000000..ed179ada --- /dev/null +++ b/docs/07-Release Notes/v0.22/v0.22.21.md @@ -0,0 +1,60 @@ +--- +slug: /release-notes/v0.22.21 +title: v0.22.21 +sidebar_position: 1 +--- +# metal-stack v0.22.21 +See original release note at [https://github.com/metal-stack/releases/releases/tag/untagged-7a025c0a46613d6e600b](https://github.com/metal-stack/releases/releases/tag/untagged-7a025c0a46613d6e600b) +## General +* [Gardener v1.140](https://github.com/gardener/gardener/releases/tag/v1.140.0) +## Noteworthy +* Add environment variables support to cosign verify. (metal-stack/ansible-common#50) +* Prometheus in the partition monitoring role can now be configured with additional labels. As some systems use `replica` while others use `__replica__` that may conflict, the label: `replica: '{{ inventory_hostname }}'` has been added to the defaults. If you make use of this configuration option and want to keep the `replica` label, make sure to include it explicitly. (metal-stack/metal-roles#702) +## Breaking Changes +* In the `mgmt-server` role the misspelled `mgmt_server_routerid` is renamed to `mgmt_server_router_id`. Update your variables accordingly. The role will error on missing variable. (metal-stack/metal-roles#626) +## Component Releases +### csi-driver-lvm v0.9.1 +* Support setting mount options via HelmChart (metal-stack/csi-driver-lvm#160) @serveric +### metal-roles v0.31.1 +* fix: change default apiserver admin token expiry to 16h (metal-stack/metal-roles#715) @mwennrich +* Fix mgmt-server FRR installation (metal-stack/metal-roles#668) @iljarotar +* fix(mgmt-server): use mgmt_server_router_id in frr.conf template (metal-stack/metal-roles#626) @GeertJohan +* mgmt-server: add optional static routes to the frr.conf template (metal-stack/metal-roles#688) @GeertJohan +* add roomID variable to metal-core service (metal-stack/metal-roles#625) @mwennrich +* Add metal-core interface naming schema (metal-stack/metal-roles#717) @iljarotar +* Partition Prometheus Additional External Labels (metal-stack/metal-roles#702) @simcod +* Service account secret for virtual-garden-kubeconfig-refresher (metal-stack/metal-roles#713) @simcod +* Run the test workflow on pull requests (metal-stack/metal-roles#711) @GeertJohan +### metal-core v0.18.0 +* Add option for SONiC interface naming schema (metal-stack/metal-core#208) @iljarotar +* Some cleanup and formatting (metal-stack/metal-core#210) @iljarotar +* register with RoomID (metal-stack/metal-core#193) @mwennrich +* Support additional routes to the management network gateway (metal-stack/metal-core#204) @GeertJohan +### helm-charts v0.7.8 +* Sync csi-driver-lvm chart v0.9.1. (metal-stack/helm-charts#176) @Gerrit91 +### ansible-common v0.9.1 +* add existing env for proxy support, if set (metal-stack/ansible-common#50) @TLINDEN +### gardener-extension-provider-metal v0.27.12 +* Update dependencies. (metal-stack/gardener-extension-provider-metal#507) @Gerrit91 +* fix: change calico bpfConnectTimeLoadBalancing from default "TCP" to "Enabled", to also allow udp-connection from host to kubernetes services (metal-stack/gardener-extension-provider-metal#506) @mwennrich +# Merged Pull Requests +This is a list of pull requests that were merged since the last release. The list does not contain pull requests from release-vector-repositories. + +The fact that these pull requests were merged does not necessarily imply that they have already become part of this metal-stack release. + +* Update gardener to 1.140.5 (metal-stack/releases#314) @majst01 +* Fix Reconcile on Dualstack Firewalls (metal-stack/firewall-controller#227) @majst01 +* Add link to management server iso generation repository (metal-stack/website#341) @muhittink +* Indicate the secrets used in the reusable workflows (metal-stack/actions-common#19) @Gerrit91 +* Update to latest actions. (metal-stack/actions-common#20) @Gerrit91 +* Allow to optionally pass a registry password. (metal-stack/actions-common#21) @Gerrit91 +* Fix MEP-8 identity crisis (metal-stack/website#340) @GeertJohan +* Remove install-go (metal-stack/metal-images#426) @majst01 +* Update go deps and actions (metal-stack/security#68) @majst01 +* Update go deps and actions (metal-stack/metal-lib#213) @majst01 +* Fix only completion (metal-stack/cli#50) @majst01 +* Admin IP command (metal-stack/cli#47) @majst01 +* Allow to set firewall vpn ip (metal-stack/metal-lib#214) @majst01 +* chore(deps): bump the other-dependencies group across 1 directory with 6 updates (metal-stack/website#338) @dependabot[bot] +* Add `machine` cmd. (metal-stack/cli#51) @Gerrit91 +* Prune components (metal-stack/cli#53) @majst01 \ No newline at end of file diff --git a/docs/07-Release Notes/v0.22/v0.22.3.md b/docs/07-Release Notes/v0.22/v0.22.3.md index aab30d06..1541ca9f 100644 --- a/docs/07-Release Notes/v0.22/v0.22.3.md +++ b/docs/07-Release Notes/v0.22/v0.22.3.md @@ -1,7 +1,7 @@ --- slug: /release-notes/v0.22.3 title: v0.22.3 -sidebar_position: 17 +sidebar_position: 19 --- # metal-stack v0.22.3 See original release note at [https://github.com/metal-stack/releases/releases/tag/v0.22.3](https://github.com/metal-stack/releases/releases/tag/v0.22.3) diff --git a/docs/07-Release Notes/v0.22/v0.22.4.md b/docs/07-Release Notes/v0.22/v0.22.4.md index 05aafd78..a500952d 100644 --- a/docs/07-Release Notes/v0.22/v0.22.4.md +++ b/docs/07-Release Notes/v0.22/v0.22.4.md @@ -1,7 +1,7 @@ --- slug: /release-notes/v0.22.4 title: v0.22.4 -sidebar_position: 16 +sidebar_position: 18 --- # metal-stack v0.22.4 See original release note at [https://github.com/metal-stack/releases/releases/tag/v0.22.4](https://github.com/metal-stack/releases/releases/tag/v0.22.4) diff --git a/docs/07-Release Notes/v0.22/v0.22.5.md b/docs/07-Release Notes/v0.22/v0.22.5.md index 82a0d7f5..cc6a807e 100644 --- a/docs/07-Release Notes/v0.22/v0.22.5.md +++ b/docs/07-Release Notes/v0.22/v0.22.5.md @@ -1,7 +1,7 @@ --- slug: /release-notes/v0.22.5 title: v0.22.5 -sidebar_position: 15 +sidebar_position: 17 --- # metal-stack v0.22.5 See original release note at [https://github.com/metal-stack/releases/releases/tag/v0.22.5](https://github.com/metal-stack/releases/releases/tag/v0.22.5) diff --git a/docs/07-Release Notes/v0.22/v0.22.6.md b/docs/07-Release Notes/v0.22/v0.22.6.md index 263c5601..3a87d147 100644 --- a/docs/07-Release Notes/v0.22/v0.22.6.md +++ b/docs/07-Release Notes/v0.22/v0.22.6.md @@ -1,7 +1,7 @@ --- slug: /release-notes/v0.22.6 title: v0.22.6 -sidebar_position: 14 +sidebar_position: 16 --- # metal-stack v0.22.6 See original release note at [https://github.com/metal-stack/releases/releases/tag/v0.22.6](https://github.com/metal-stack/releases/releases/tag/v0.22.6) diff --git a/docs/07-Release Notes/v0.22/v0.22.7.md b/docs/07-Release Notes/v0.22/v0.22.7.md index c482ee8c..babf9aa3 100644 --- a/docs/07-Release Notes/v0.22/v0.22.7.md +++ b/docs/07-Release Notes/v0.22/v0.22.7.md @@ -1,7 +1,7 @@ --- slug: /release-notes/v0.22.7 title: v0.22.7 -sidebar_position: 13 +sidebar_position: 15 --- # metal-stack v0.22.7 See original release note at [https://github.com/metal-stack/releases/releases/tag/v0.22.7](https://github.com/metal-stack/releases/releases/tag/v0.22.7) diff --git a/docs/07-Release Notes/v0.22/v0.22.8.md b/docs/07-Release Notes/v0.22/v0.22.8.md index 082bb8cc..420dae1b 100644 --- a/docs/07-Release Notes/v0.22/v0.22.8.md +++ b/docs/07-Release Notes/v0.22/v0.22.8.md @@ -1,7 +1,7 @@ --- slug: /release-notes/v0.22.8 title: v0.22.8 -sidebar_position: 12 +sidebar_position: 14 --- # metal-stack v0.22.8 See original release note at [https://github.com/metal-stack/releases/releases/tag/v0.22.8](https://github.com/metal-stack/releases/releases/tag/v0.22.8) diff --git a/docs/07-Release Notes/v0.22/v0.22.9.md b/docs/07-Release Notes/v0.22/v0.22.9.md index cda990f2..c783a42a 100644 --- a/docs/07-Release Notes/v0.22/v0.22.9.md +++ b/docs/07-Release Notes/v0.22/v0.22.9.md @@ -1,7 +1,7 @@ --- slug: /release-notes/v0.22.9 title: v0.22.9 -sidebar_position: 11 +sidebar_position: 13 --- # metal-stack v0.22.9 See original release note at [https://github.com/metal-stack/releases/releases/tag/v0.22.9](https://github.com/metal-stack/releases/releases/tag/v0.22.9) diff --git a/docs/08-References/Clients/metalctl/metalctl.md b/docs/08-References/Clients/metalctl/metalctl.md index db729976..eadabbca 100644 --- a/docs/08-References/Clients/metalctl/metalctl.md +++ b/docs/08-References/Clients/metalctl/metalctl.md @@ -1,64 +1,135 @@ --- slug: /references/metalctl title: metalctl -sidebar_position: 0 +sidebar_position: 1 --- -## metalctl +# metalctl -a cli to manage entities in the metal-stack api +*metalctl* is the command line client to access the [metal-api](https://github.com/metal-stack/metal-api). -### Options +## Installation +Download locations: + +- [metalctl-linux-amd64](https://github.com/metal-stack/metalctl/releases/latest/download/metalctl-linux-amd64) +- [metalctl-darwin-amd64](https://github.com/metal-stack/metalctl/releases/latest/download/metalctl-darwin-amd64) +- [metalctl-darwin-arm64](https://github.com/metal-stack/metalctl/releases/latest/download/metalctl-darwin-arm64) +- [metalctl-windows-amd64](https://github.com/metal-stack/metalctl/releases/latest/download/metalctl-windows-amd64) + +### Installation on Linux + +```bash +curl -LO https://github.com/metal-stack/metalctl/releases/latest/download/metalctl-linux-amd64 +chmod +x metalctl-linux-amd64 +sudo mv metalctl-linux-amd64 /usr/local/bin/metalctl +``` + +### Installation on MacOS + +For x86 based Macs: + +```bash +curl -LO https://github.com/metal-stack/metalctl/releases/latest/download/metalctl-darwin-amd64 +chmod +x metalctl-darwin-amd64 +sudo mv metalctl-darwin-amd64 /usr/local/bin/metalctl +``` + +For Apple Silicon (M1) based Macs: + +```bash +curl -LO https://github.com/metal-stack/metalctl/releases/latest/download/metalctl-darwin-arm64 +chmod +x metalctl-darwin-arm64 +sudo mv metalctl-darwin-arm64 /usr/local/bin/metalctl ``` - --api-token string api token to authenticate. Can be specified with METALCTL_API_TOKEN environment variable. - --api-url string api server address. Can be specified with METALCTL_API_URL environment variable. - -c, --config string alternative config file path, (default is ~/.metalctl/config.yaml). - Example config.yaml: - - --- - apitoken: "alongtoken" - ... - - - --debug debug output - --force-color force colored output even without tty - -h, --help help for metalctl - --kubeconfig string Path to the kube-config to use for authentication and authorization. Is updated by login. Uses default path if not specified. - --no-headers do not print headers of table output format (default print headers) - -o, --output-format string output format (table|wide|markdown|json|yaml|template), wide is a table with more columns. (default "table") - --template string output template for template output-format, go template format. - For property names inspect the output of -o json or -o yaml for reference. - Example for machines: - - metalctl machine list -o template --template "{{ .id }}:{{ .size.id }}" - - - --yes-i-really-mean-it skips security prompts (which can be dangerous to set blindly because actions can lead to data loss or additional costs) + +### Installation on Windows + +```bash +curl -LO https://github.com/metal-stack/metalctl/releases/latest/download/metalctl-windows-amd64 +copy metalctl-windows-amd64 metalctl.exe +``` + +### metalctl update + +In order to keep your local `metalctl` installation up to date, you can update the binary like this: + +```bash +metalctl update check +latest version:v0.8.3 from:2020-08-13T11:55:14Z +local version:v0.8.2 from:2020-08-12T09:27:39Z +metalctl is not up to date + +metalctl update do +# a download with progress bar starts and replaces the binary. If the binary has root permissions please execute +sudo metalctl update do +# instead +``` + +### Built from project + +```bash +make +sudo ln -sf $(pwd)/bin/metalctl /usr/local/bin/metalctl ``` -### SEE ALSO - -* [metalctl audit](./metalctl_audit.md) - manage audit trace entities -* [metalctl completion](./metalctl_completion.md) - Generate the autocompletion script for the specified shell -* [metalctl context](./metalctl_context.md) - manage metalctl context -* [metalctl filesystemlayout](./metalctl_filesystemlayout.md) - manage filesystemlayout entities -* [metalctl firewall](./metalctl_firewall.md) - manage firewall entities -* [metalctl firmware](./metalctl_firmware.md) - manage firmwares -* [metalctl health](./metalctl_health.md) - shows the server health -* [metalctl image](./metalctl_image.md) - manage image entities -* [metalctl login](./metalctl_login.md) - login user and receive token -* [metalctl logout](./metalctl_logout.md) - logout user from OIDC SSO session -* [metalctl machine](./metalctl_machine.md) - manage machine entities -* [metalctl markdown](./metalctl_markdown.md) - create markdown documentation -* [metalctl network](./metalctl_network.md) - manage network entities -* [metalctl partition](./metalctl_partition.md) - manage partition entities -* [metalctl project](./metalctl_project.md) - manage project entities -* [metalctl size](./metalctl_size.md) - manage size entities -* [metalctl switch](./metalctl_switch.md) - manage switch entities -* [metalctl tenant](./metalctl_tenant.md) - manage tenant entities -* [metalctl update](./metalctl_update.md) - update the program -* [metalctl version](./metalctl_version.md) - print the client and server version information -* [metalctl vpn](./metalctl_vpn.md) - access VPN -* [metalctl whoami](./metalctl_whoami.md) - shows current user +## Configuration + +Set up auto-completion for `metalctl`, e.g. add to your `~/.bashrc`: + +```bash +source <(metalctl completion bash) +``` + +Set up `metalctl` config, by first creating the config folder (`mkdir -p ~/.metalctl`), then set the values according to your installation in `~/.metalctl/config.yaml`: + +```yaml +--- +current: prod +contexts: + prod: + url: https://api.metal-stack.io/metal + issuer_url: https://dex.metal-stack.io/dex + client_id: metal_client + client_secret: 456 + hmac: YOUR_HMAC + hmac_auth_type: THE_AUTH_TYPE_OF_YOUR_HMAC # Metal-Admin, Metal-Edit or Metal-View +``` + +Optional you can specify `issuer_type: generic` if you use other issuers as Dex, e.g. Keycloak (this will request scopes `openid,profile,email`): + +```bash +contexts: + prod: + url: https://api.metal-stack.io/metal + issuer_url: https://keycloak.somedomain.io + issuer_type: generic + client_id: my-client-id + client_secret: my-secret +``` + +If you must specify special scopes for your issuer, you can use `custom_scopes`: + +```bash +contexts: + prod: + url: https://api.metal-stack.io/metal + issuer_url: https://keycloak.somedomain.io + custom_scopes: roles,openid,profile,email + client_id: my-client-id + client_secret: my-secret +``` + +## Available commands + +Full documentation is generated out of the cobra command implementation with: + +`metalctl markdown` + +generated markdown is [here](./metalctl.md) and [here](https://docs.metal-stack.io/stable/external/metalctl/README/) + +## Development + +For MacOS users, running the tests might throw an error because tests are utilizing [go-mpatch](https://github.com/undefinedlabs/go-mpatch) in order to manipulate the `time.Now` function. The patch allows testing with fixed timestamps. +Instead, MacOS users can utilize the `make test-in-docker` target to execute the tests. diff --git a/docs/08-References/Clients/metalctl/metalctl_audit.md b/docs/08-References/Clients/metalctl/metalctl_audit.md index 88211263..26175655 100644 --- a/docs/08-References/Clients/metalctl/metalctl_audit.md +++ b/docs/08-References/Clients/metalctl/metalctl_audit.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_audit title: metalctl_audit -sidebar_position: 1 +sidebar_position: 0 --- ## metalctl audit diff --git a/docs/08-References/Clients/metalctl/metalctl_audit_describe.md b/docs/08-References/Clients/metalctl/metalctl_audit_describe.md index 24ff4ecf..b3406c9c 100644 --- a/docs/08-References/Clients/metalctl/metalctl_audit_describe.md +++ b/docs/08-References/Clients/metalctl/metalctl_audit_describe.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_audit_describe title: metalctl_audit_describe -sidebar_position: 2 +sidebar_position: 1 --- ## metalctl audit describe diff --git a/docs/08-References/Clients/metalctl/metalctl_audit_list.md b/docs/08-References/Clients/metalctl/metalctl_audit_list.md index b34a77ea..2aa0cf29 100644 --- a/docs/08-References/Clients/metalctl/metalctl_audit_list.md +++ b/docs/08-References/Clients/metalctl/metalctl_audit_list.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_audit_list title: metalctl_audit_list -sidebar_position: 3 +sidebar_position: 2 --- ## metalctl audit list diff --git a/docs/08-References/Clients/metalctl/metalctl_completion.md b/docs/08-References/Clients/metalctl/metalctl_completion.md index bd46031c..f34e4c3d 100644 --- a/docs/08-References/Clients/metalctl/metalctl_completion.md +++ b/docs/08-References/Clients/metalctl/metalctl_completion.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_completion title: metalctl_completion -sidebar_position: 4 +sidebar_position: 1 --- ## metalctl completion diff --git a/docs/08-References/Clients/metalctl/metalctl_completion_bash.md b/docs/08-References/Clients/metalctl/metalctl_completion_bash.md index da95653a..6a9ece40 100644 --- a/docs/08-References/Clients/metalctl/metalctl_completion_bash.md +++ b/docs/08-References/Clients/metalctl/metalctl_completion_bash.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_completion_bash title: metalctl_completion_bash -sidebar_position: 5 +sidebar_position: 1 --- ## metalctl completion bash diff --git a/docs/08-References/Clients/metalctl/metalctl_completion_fish.md b/docs/08-References/Clients/metalctl/metalctl_completion_fish.md index 7818c8c7..d1fb84b3 100644 --- a/docs/08-References/Clients/metalctl/metalctl_completion_fish.md +++ b/docs/08-References/Clients/metalctl/metalctl_completion_fish.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_completion_fish title: metalctl_completion_fish -sidebar_position: 6 +sidebar_position: 2 --- ## metalctl completion fish diff --git a/docs/08-References/Clients/metalctl/metalctl_completion_powershell.md b/docs/08-References/Clients/metalctl/metalctl_completion_powershell.md index 99c19d09..9a445eb7 100644 --- a/docs/08-References/Clients/metalctl/metalctl_completion_powershell.md +++ b/docs/08-References/Clients/metalctl/metalctl_completion_powershell.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_completion_powershell title: metalctl_completion_powershell -sidebar_position: 7 +sidebar_position: 3 --- ## metalctl completion powershell diff --git a/docs/08-References/Clients/metalctl/metalctl_completion_zsh.md b/docs/08-References/Clients/metalctl/metalctl_completion_zsh.md index d9d422be..3bfa513f 100644 --- a/docs/08-References/Clients/metalctl/metalctl_completion_zsh.md +++ b/docs/08-References/Clients/metalctl/metalctl_completion_zsh.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_completion_zsh title: metalctl_completion_zsh -sidebar_position: 8 +sidebar_position: 4 --- ## metalctl completion zsh diff --git a/docs/08-References/Clients/metalctl/metalctl_context.md b/docs/08-References/Clients/metalctl/metalctl_context.md index c5d8fc5e..0eadf283 100644 --- a/docs/08-References/Clients/metalctl/metalctl_context.md +++ b/docs/08-References/Clients/metalctl/metalctl_context.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_context title: metalctl_context -sidebar_position: 9 +sidebar_position: 2 --- ## metalctl context diff --git a/docs/08-References/Clients/metalctl/metalctl_context_short.md b/docs/08-References/Clients/metalctl/metalctl_context_short.md index d07236e5..9f8df503 100644 --- a/docs/08-References/Clients/metalctl/metalctl_context_short.md +++ b/docs/08-References/Clients/metalctl/metalctl_context_short.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_context_short title: metalctl_context_short -sidebar_position: 10 +sidebar_position: 1 --- ## metalctl context short diff --git a/docs/08-References/Clients/metalctl/metalctl_filesystemlayout.md b/docs/08-References/Clients/metalctl/metalctl_filesystemlayout.md index c3713da0..93ee9221 100644 --- a/docs/08-References/Clients/metalctl/metalctl_filesystemlayout.md +++ b/docs/08-References/Clients/metalctl/metalctl_filesystemlayout.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_filesystemlayout title: metalctl_filesystemlayout -sidebar_position: 11 +sidebar_position: 3 --- ## metalctl filesystemlayout diff --git a/docs/08-References/Clients/metalctl/metalctl_filesystemlayout_apply.md b/docs/08-References/Clients/metalctl/metalctl_filesystemlayout_apply.md index ef46d3b8..c6e08e2b 100644 --- a/docs/08-References/Clients/metalctl/metalctl_filesystemlayout_apply.md +++ b/docs/08-References/Clients/metalctl/metalctl_filesystemlayout_apply.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_filesystemlayout_apply title: metalctl_filesystemlayout_apply -sidebar_position: 12 +sidebar_position: 1 --- ## metalctl filesystemlayout apply diff --git a/docs/08-References/Clients/metalctl/metalctl_filesystemlayout_create.md b/docs/08-References/Clients/metalctl/metalctl_filesystemlayout_create.md index 84d9f640..80a15015 100644 --- a/docs/08-References/Clients/metalctl/metalctl_filesystemlayout_create.md +++ b/docs/08-References/Clients/metalctl/metalctl_filesystemlayout_create.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_filesystemlayout_create title: metalctl_filesystemlayout_create -sidebar_position: 13 +sidebar_position: 2 --- ## metalctl filesystemlayout create diff --git a/docs/08-References/Clients/metalctl/metalctl_filesystemlayout_delete.md b/docs/08-References/Clients/metalctl/metalctl_filesystemlayout_delete.md index c2d6bc26..423b85b6 100644 --- a/docs/08-References/Clients/metalctl/metalctl_filesystemlayout_delete.md +++ b/docs/08-References/Clients/metalctl/metalctl_filesystemlayout_delete.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_filesystemlayout_delete title: metalctl_filesystemlayout_delete -sidebar_position: 14 +sidebar_position: 3 --- ## metalctl filesystemlayout delete diff --git a/docs/08-References/Clients/metalctl/metalctl_filesystemlayout_describe.md b/docs/08-References/Clients/metalctl/metalctl_filesystemlayout_describe.md index 797baa9d..6a943cac 100644 --- a/docs/08-References/Clients/metalctl/metalctl_filesystemlayout_describe.md +++ b/docs/08-References/Clients/metalctl/metalctl_filesystemlayout_describe.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_filesystemlayout_describe title: metalctl_filesystemlayout_describe -sidebar_position: 15 +sidebar_position: 4 --- ## metalctl filesystemlayout describe diff --git a/docs/08-References/Clients/metalctl/metalctl_filesystemlayout_edit.md b/docs/08-References/Clients/metalctl/metalctl_filesystemlayout_edit.md index 1ed6c1c6..b300d329 100644 --- a/docs/08-References/Clients/metalctl/metalctl_filesystemlayout_edit.md +++ b/docs/08-References/Clients/metalctl/metalctl_filesystemlayout_edit.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_filesystemlayout_edit title: metalctl_filesystemlayout_edit -sidebar_position: 16 +sidebar_position: 5 --- ## metalctl filesystemlayout edit diff --git a/docs/08-References/Clients/metalctl/metalctl_filesystemlayout_list.md b/docs/08-References/Clients/metalctl/metalctl_filesystemlayout_list.md index 623332cb..a82938c5 100644 --- a/docs/08-References/Clients/metalctl/metalctl_filesystemlayout_list.md +++ b/docs/08-References/Clients/metalctl/metalctl_filesystemlayout_list.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_filesystemlayout_list title: metalctl_filesystemlayout_list -sidebar_position: 17 +sidebar_position: 6 --- ## metalctl filesystemlayout list diff --git a/docs/08-References/Clients/metalctl/metalctl_filesystemlayout_match.md b/docs/08-References/Clients/metalctl/metalctl_filesystemlayout_match.md index 85ad9aaa..bcfd38fb 100644 --- a/docs/08-References/Clients/metalctl/metalctl_filesystemlayout_match.md +++ b/docs/08-References/Clients/metalctl/metalctl_filesystemlayout_match.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_filesystemlayout_match title: metalctl_filesystemlayout_match -sidebar_position: 18 +sidebar_position: 7 --- ## metalctl filesystemlayout match diff --git a/docs/08-References/Clients/metalctl/metalctl_filesystemlayout_try.md b/docs/08-References/Clients/metalctl/metalctl_filesystemlayout_try.md index acc77a72..a8e4c482 100644 --- a/docs/08-References/Clients/metalctl/metalctl_filesystemlayout_try.md +++ b/docs/08-References/Clients/metalctl/metalctl_filesystemlayout_try.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_filesystemlayout_try title: metalctl_filesystemlayout_try -sidebar_position: 19 +sidebar_position: 8 --- ## metalctl filesystemlayout try diff --git a/docs/08-References/Clients/metalctl/metalctl_filesystemlayout_update.md b/docs/08-References/Clients/metalctl/metalctl_filesystemlayout_update.md index 1eee8f8e..8388b005 100644 --- a/docs/08-References/Clients/metalctl/metalctl_filesystemlayout_update.md +++ b/docs/08-References/Clients/metalctl/metalctl_filesystemlayout_update.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_filesystemlayout_update title: metalctl_filesystemlayout_update -sidebar_position: 20 +sidebar_position: 9 --- ## metalctl filesystemlayout update diff --git a/docs/08-References/Clients/metalctl/metalctl_firewall.md b/docs/08-References/Clients/metalctl/metalctl_firewall.md index e57919d8..aabef38e 100644 --- a/docs/08-References/Clients/metalctl/metalctl_firewall.md +++ b/docs/08-References/Clients/metalctl/metalctl_firewall.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_firewall title: metalctl_firewall -sidebar_position: 21 +sidebar_position: 4 --- ## metalctl firewall diff --git a/docs/08-References/Clients/metalctl/metalctl_firewall_create.md b/docs/08-References/Clients/metalctl/metalctl_firewall_create.md index d6b2fc4a..9685bddd 100644 --- a/docs/08-References/Clients/metalctl/metalctl_firewall_create.md +++ b/docs/08-References/Clients/metalctl/metalctl_firewall_create.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_firewall_create title: metalctl_firewall_create -sidebar_position: 22 +sidebar_position: 1 --- ## metalctl firewall create diff --git a/docs/08-References/Clients/metalctl/metalctl_firewall_describe.md b/docs/08-References/Clients/metalctl/metalctl_firewall_describe.md index 64f4a422..3177325d 100644 --- a/docs/08-References/Clients/metalctl/metalctl_firewall_describe.md +++ b/docs/08-References/Clients/metalctl/metalctl_firewall_describe.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_firewall_describe title: metalctl_firewall_describe -sidebar_position: 23 +sidebar_position: 2 --- ## metalctl firewall describe diff --git a/docs/08-References/Clients/metalctl/metalctl_firewall_list.md b/docs/08-References/Clients/metalctl/metalctl_firewall_list.md index 152c6ccf..8f29aa0f 100644 --- a/docs/08-References/Clients/metalctl/metalctl_firewall_list.md +++ b/docs/08-References/Clients/metalctl/metalctl_firewall_list.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_firewall_list title: metalctl_firewall_list -sidebar_position: 24 +sidebar_position: 3 --- ## metalctl firewall list diff --git a/docs/08-References/Clients/metalctl/metalctl_firewall_ssh.md b/docs/08-References/Clients/metalctl/metalctl_firewall_ssh.md index 70891321..7b6a0b5a 100644 --- a/docs/08-References/Clients/metalctl/metalctl_firewall_ssh.md +++ b/docs/08-References/Clients/metalctl/metalctl_firewall_ssh.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_firewall_ssh title: metalctl_firewall_ssh -sidebar_position: 25 +sidebar_position: 4 --- ## metalctl firewall ssh diff --git a/docs/08-References/Clients/metalctl/metalctl_firmware.md b/docs/08-References/Clients/metalctl/metalctl_firmware.md index 6656b619..bb9600d0 100644 --- a/docs/08-References/Clients/metalctl/metalctl_firmware.md +++ b/docs/08-References/Clients/metalctl/metalctl_firmware.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_firmware title: metalctl_firmware -sidebar_position: 26 +sidebar_position: 5 --- ## metalctl firmware diff --git a/docs/08-References/Clients/metalctl/metalctl_firmware_delete.md b/docs/08-References/Clients/metalctl/metalctl_firmware_delete.md index ca04286a..9c870453 100644 --- a/docs/08-References/Clients/metalctl/metalctl_firmware_delete.md +++ b/docs/08-References/Clients/metalctl/metalctl_firmware_delete.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_firmware_delete title: metalctl_firmware_delete -sidebar_position: 27 +sidebar_position: 1 --- ## metalctl firmware delete diff --git a/docs/08-References/Clients/metalctl/metalctl_firmware_list.md b/docs/08-References/Clients/metalctl/metalctl_firmware_list.md index 2160fcd9..151ec7b3 100644 --- a/docs/08-References/Clients/metalctl/metalctl_firmware_list.md +++ b/docs/08-References/Clients/metalctl/metalctl_firmware_list.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_firmware_list title: metalctl_firmware_list -sidebar_position: 28 +sidebar_position: 2 --- ## metalctl firmware list diff --git a/docs/08-References/Clients/metalctl/metalctl_firmware_upload.md b/docs/08-References/Clients/metalctl/metalctl_firmware_upload.md index 9f39d56a..837d8ec9 100644 --- a/docs/08-References/Clients/metalctl/metalctl_firmware_upload.md +++ b/docs/08-References/Clients/metalctl/metalctl_firmware_upload.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_firmware_upload title: metalctl_firmware_upload -sidebar_position: 29 +sidebar_position: 3 --- ## metalctl firmware upload diff --git a/docs/08-References/Clients/metalctl/metalctl_firmware_upload_bios.md b/docs/08-References/Clients/metalctl/metalctl_firmware_upload_bios.md index 04119d77..9885d017 100644 --- a/docs/08-References/Clients/metalctl/metalctl_firmware_upload_bios.md +++ b/docs/08-References/Clients/metalctl/metalctl_firmware_upload_bios.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_firmware_upload_bios title: metalctl_firmware_upload_bios -sidebar_position: 30 +sidebar_position: 1 --- ## metalctl firmware upload bios diff --git a/docs/08-References/Clients/metalctl/metalctl_firmware_upload_bmc.md b/docs/08-References/Clients/metalctl/metalctl_firmware_upload_bmc.md index 66131056..175b8373 100644 --- a/docs/08-References/Clients/metalctl/metalctl_firmware_upload_bmc.md +++ b/docs/08-References/Clients/metalctl/metalctl_firmware_upload_bmc.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_firmware_upload_bmc title: metalctl_firmware_upload_bmc -sidebar_position: 31 +sidebar_position: 2 --- ## metalctl firmware upload bmc diff --git a/docs/08-References/Clients/metalctl/metalctl_health.md b/docs/08-References/Clients/metalctl/metalctl_health.md index 41509eb5..d7ea8a46 100644 --- a/docs/08-References/Clients/metalctl/metalctl_health.md +++ b/docs/08-References/Clients/metalctl/metalctl_health.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_health title: metalctl_health -sidebar_position: 32 +sidebar_position: 6 --- ## metalctl health diff --git a/docs/08-References/Clients/metalctl/metalctl_image.md b/docs/08-References/Clients/metalctl/metalctl_image.md index 86cda0ab..609ee06a 100644 --- a/docs/08-References/Clients/metalctl/metalctl_image.md +++ b/docs/08-References/Clients/metalctl/metalctl_image.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_image title: metalctl_image -sidebar_position: 33 +sidebar_position: 7 --- ## metalctl image diff --git a/docs/08-References/Clients/metalctl/metalctl_image_apply.md b/docs/08-References/Clients/metalctl/metalctl_image_apply.md index deda0fe0..f946ba63 100644 --- a/docs/08-References/Clients/metalctl/metalctl_image_apply.md +++ b/docs/08-References/Clients/metalctl/metalctl_image_apply.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_image_apply title: metalctl_image_apply -sidebar_position: 34 +sidebar_position: 1 --- ## metalctl image apply diff --git a/docs/08-References/Clients/metalctl/metalctl_image_create.md b/docs/08-References/Clients/metalctl/metalctl_image_create.md index 166aff58..7f6a48fc 100644 --- a/docs/08-References/Clients/metalctl/metalctl_image_create.md +++ b/docs/08-References/Clients/metalctl/metalctl_image_create.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_image_create title: metalctl_image_create -sidebar_position: 35 +sidebar_position: 2 --- ## metalctl image create diff --git a/docs/08-References/Clients/metalctl/metalctl_image_delete.md b/docs/08-References/Clients/metalctl/metalctl_image_delete.md index a3c33bd5..618b3458 100644 --- a/docs/08-References/Clients/metalctl/metalctl_image_delete.md +++ b/docs/08-References/Clients/metalctl/metalctl_image_delete.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_image_delete title: metalctl_image_delete -sidebar_position: 36 +sidebar_position: 3 --- ## metalctl image delete diff --git a/docs/08-References/Clients/metalctl/metalctl_image_describe.md b/docs/08-References/Clients/metalctl/metalctl_image_describe.md index 9fe087b3..574c2f39 100644 --- a/docs/08-References/Clients/metalctl/metalctl_image_describe.md +++ b/docs/08-References/Clients/metalctl/metalctl_image_describe.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_image_describe title: metalctl_image_describe -sidebar_position: 37 +sidebar_position: 4 --- ## metalctl image describe diff --git a/docs/08-References/Clients/metalctl/metalctl_image_edit.md b/docs/08-References/Clients/metalctl/metalctl_image_edit.md index 0a8cd03e..fc9fa320 100644 --- a/docs/08-References/Clients/metalctl/metalctl_image_edit.md +++ b/docs/08-References/Clients/metalctl/metalctl_image_edit.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_image_edit title: metalctl_image_edit -sidebar_position: 38 +sidebar_position: 5 --- ## metalctl image edit diff --git a/docs/08-References/Clients/metalctl/metalctl_image_list.md b/docs/08-References/Clients/metalctl/metalctl_image_list.md index b1c0c2b5..c47f4fe3 100644 --- a/docs/08-References/Clients/metalctl/metalctl_image_list.md +++ b/docs/08-References/Clients/metalctl/metalctl_image_list.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_image_list title: metalctl_image_list -sidebar_position: 39 +sidebar_position: 6 --- ## metalctl image list diff --git a/docs/08-References/Clients/metalctl/metalctl_image_update.md b/docs/08-References/Clients/metalctl/metalctl_image_update.md index ed92e636..814c4782 100644 --- a/docs/08-References/Clients/metalctl/metalctl_image_update.md +++ b/docs/08-References/Clients/metalctl/metalctl_image_update.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_image_update title: metalctl_image_update -sidebar_position: 40 +sidebar_position: 7 --- ## metalctl image update diff --git a/docs/08-References/Clients/metalctl/metalctl_login.md b/docs/08-References/Clients/metalctl/metalctl_login.md index 18d342c2..e1248339 100644 --- a/docs/08-References/Clients/metalctl/metalctl_login.md +++ b/docs/08-References/Clients/metalctl/metalctl_login.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_login title: metalctl_login -sidebar_position: 41 +sidebar_position: 8 --- ## metalctl login diff --git a/docs/08-References/Clients/metalctl/metalctl_logout.md b/docs/08-References/Clients/metalctl/metalctl_logout.md index 86b00a1f..a178140c 100644 --- a/docs/08-References/Clients/metalctl/metalctl_logout.md +++ b/docs/08-References/Clients/metalctl/metalctl_logout.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_logout title: metalctl_logout -sidebar_position: 42 +sidebar_position: 9 --- ## metalctl logout diff --git a/docs/08-References/Clients/metalctl/metalctl_machine.md b/docs/08-References/Clients/metalctl/metalctl_machine.md index d7d20a7c..decfce7a 100644 --- a/docs/08-References/Clients/metalctl/metalctl_machine.md +++ b/docs/08-References/Clients/metalctl/metalctl_machine.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine title: metalctl_machine -sidebar_position: 43 +sidebar_position: 10 --- ## metalctl machine diff --git a/docs/08-References/Clients/metalctl/metalctl_machine_apply.md b/docs/08-References/Clients/metalctl/metalctl_machine_apply.md index 20c81a41..ef3b46e5 100644 --- a/docs/08-References/Clients/metalctl/metalctl_machine_apply.md +++ b/docs/08-References/Clients/metalctl/metalctl_machine_apply.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_apply title: metalctl_machine_apply -sidebar_position: 44 +sidebar_position: 1 --- ## metalctl machine apply diff --git a/docs/08-References/Clients/metalctl/metalctl_machine_console.md b/docs/08-References/Clients/metalctl/metalctl_machine_console.md index 5b2c28ac..6d393a71 100644 --- a/docs/08-References/Clients/metalctl/metalctl_machine_console.md +++ b/docs/08-References/Clients/metalctl/metalctl_machine_console.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_console title: metalctl_machine_console -sidebar_position: 45 +sidebar_position: 2 --- ## metalctl machine console diff --git a/docs/08-References/Clients/metalctl/metalctl_machine_consolepassword.md b/docs/08-References/Clients/metalctl/metalctl_machine_consolepassword.md index 1a4c2866..a57bc3ec 100644 --- a/docs/08-References/Clients/metalctl/metalctl_machine_consolepassword.md +++ b/docs/08-References/Clients/metalctl/metalctl_machine_consolepassword.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_consolepassword title: metalctl_machine_consolepassword -sidebar_position: 46 +sidebar_position: 3 --- ## metalctl machine consolepassword diff --git a/docs/08-References/Clients/metalctl/metalctl_machine_create.md b/docs/08-References/Clients/metalctl/metalctl_machine_create.md index 89f09ae8..404cb1e0 100644 --- a/docs/08-References/Clients/metalctl/metalctl_machine_create.md +++ b/docs/08-References/Clients/metalctl/metalctl_machine_create.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_create title: metalctl_machine_create -sidebar_position: 47 +sidebar_position: 4 --- ## metalctl machine create diff --git a/docs/08-References/Clients/metalctl/metalctl_machine_delete.md b/docs/08-References/Clients/metalctl/metalctl_machine_delete.md index a39f7bf5..46eb1208 100644 --- a/docs/08-References/Clients/metalctl/metalctl_machine_delete.md +++ b/docs/08-References/Clients/metalctl/metalctl_machine_delete.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_delete title: metalctl_machine_delete -sidebar_position: 48 +sidebar_position: 5 --- ## metalctl machine delete diff --git a/docs/08-References/Clients/metalctl/metalctl_machine_describe.md b/docs/08-References/Clients/metalctl/metalctl_machine_describe.md index d202a94d..be93ed03 100644 --- a/docs/08-References/Clients/metalctl/metalctl_machine_describe.md +++ b/docs/08-References/Clients/metalctl/metalctl_machine_describe.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_describe title: metalctl_machine_describe -sidebar_position: 49 +sidebar_position: 6 --- ## metalctl machine describe diff --git a/docs/08-References/Clients/metalctl/metalctl_machine_edit.md b/docs/08-References/Clients/metalctl/metalctl_machine_edit.md index 32b2c9f7..e7f216b0 100644 --- a/docs/08-References/Clients/metalctl/metalctl_machine_edit.md +++ b/docs/08-References/Clients/metalctl/metalctl_machine_edit.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_edit title: metalctl_machine_edit -sidebar_position: 50 +sidebar_position: 7 --- ## metalctl machine edit diff --git a/docs/08-References/Clients/metalctl/metalctl_machine_identify.md b/docs/08-References/Clients/metalctl/metalctl_machine_identify.md index ab006a5d..bf0184e7 100644 --- a/docs/08-References/Clients/metalctl/metalctl_machine_identify.md +++ b/docs/08-References/Clients/metalctl/metalctl_machine_identify.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_identify title: metalctl_machine_identify -sidebar_position: 51 +sidebar_position: 8 --- ## metalctl machine identify diff --git a/docs/08-References/Clients/metalctl/metalctl_machine_identify_off.md b/docs/08-References/Clients/metalctl/metalctl_machine_identify_off.md index 1f4f1b25..e9de1b02 100644 --- a/docs/08-References/Clients/metalctl/metalctl_machine_identify_off.md +++ b/docs/08-References/Clients/metalctl/metalctl_machine_identify_off.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_identify_off title: metalctl_machine_identify_off -sidebar_position: 52 +sidebar_position: 1 --- ## metalctl machine identify off diff --git a/docs/08-References/Clients/metalctl/metalctl_machine_identify_on.md b/docs/08-References/Clients/metalctl/metalctl_machine_identify_on.md index 65348d84..b152aaa7 100644 --- a/docs/08-References/Clients/metalctl/metalctl_machine_identify_on.md +++ b/docs/08-References/Clients/metalctl/metalctl_machine_identify_on.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_identify_on title: metalctl_machine_identify_on -sidebar_position: 53 +sidebar_position: 2 --- ## metalctl machine identify on diff --git a/docs/08-References/Clients/metalctl/metalctl_machine_ipmi.md b/docs/08-References/Clients/metalctl/metalctl_machine_ipmi.md index bf3d1462..af5c4ec2 100644 --- a/docs/08-References/Clients/metalctl/metalctl_machine_ipmi.md +++ b/docs/08-References/Clients/metalctl/metalctl_machine_ipmi.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_ipmi title: metalctl_machine_ipmi -sidebar_position: 54 +sidebar_position: 9 --- ## metalctl machine ipmi diff --git a/docs/08-References/Clients/metalctl/metalctl_machine_ipmi_chassis-list.md b/docs/08-References/Clients/metalctl/metalctl_machine_ipmi_chassis-list.md index 92f663d2..b54c25db 100644 --- a/docs/08-References/Clients/metalctl/metalctl_machine_ipmi_chassis-list.md +++ b/docs/08-References/Clients/metalctl/metalctl_machine_ipmi_chassis-list.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_ipmi_chassis-list title: metalctl_machine_ipmi_chassis-list -sidebar_position: 55 +sidebar_position: 1 --- ## metalctl machine ipmi chassis-list diff --git a/docs/08-References/Clients/metalctl/metalctl_machine_ipmi_events.md b/docs/08-References/Clients/metalctl/metalctl_machine_ipmi_events.md index 8ae06be4..877628d6 100644 --- a/docs/08-References/Clients/metalctl/metalctl_machine_ipmi_events.md +++ b/docs/08-References/Clients/metalctl/metalctl_machine_ipmi_events.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_ipmi_events title: metalctl_machine_ipmi_events -sidebar_position: 56 +sidebar_position: 2 --- ## metalctl machine ipmi events diff --git a/docs/08-References/Clients/metalctl/metalctl_machine_issues.md b/docs/08-References/Clients/metalctl/metalctl_machine_issues.md index 5f6ca8df..cbffb44c 100644 --- a/docs/08-References/Clients/metalctl/metalctl_machine_issues.md +++ b/docs/08-References/Clients/metalctl/metalctl_machine_issues.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_issues title: metalctl_machine_issues -sidebar_position: 57 +sidebar_position: 10 --- ## metalctl machine issues diff --git a/docs/08-References/Clients/metalctl/metalctl_machine_issues_list.md b/docs/08-References/Clients/metalctl/metalctl_machine_issues_list.md index 2bd1b43f..75ee86ed 100644 --- a/docs/08-References/Clients/metalctl/metalctl_machine_issues_list.md +++ b/docs/08-References/Clients/metalctl/metalctl_machine_issues_list.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_issues_list title: metalctl_machine_issues_list -sidebar_position: 58 +sidebar_position: 1 --- ## metalctl machine issues list diff --git a/docs/08-References/Clients/metalctl/metalctl_machine_list.md b/docs/08-References/Clients/metalctl/metalctl_machine_list.md index b3fe7e3a..d9b85226 100644 --- a/docs/08-References/Clients/metalctl/metalctl_machine_list.md +++ b/docs/08-References/Clients/metalctl/metalctl_machine_list.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_list title: metalctl_machine_list -sidebar_position: 59 +sidebar_position: 11 --- ## metalctl machine list diff --git a/docs/08-References/Clients/metalctl/metalctl_machine_lock.md b/docs/08-References/Clients/metalctl/metalctl_machine_lock.md index 4e9e75c3..7f9378aa 100644 --- a/docs/08-References/Clients/metalctl/metalctl_machine_lock.md +++ b/docs/08-References/Clients/metalctl/metalctl_machine_lock.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_lock title: metalctl_machine_lock -sidebar_position: 60 +sidebar_position: 12 --- ## metalctl machine lock diff --git a/docs/08-References/Clients/metalctl/metalctl_machine_logs.md b/docs/08-References/Clients/metalctl/metalctl_machine_logs.md index 7d57760d..6f2ba9ab 100644 --- a/docs/08-References/Clients/metalctl/metalctl_machine_logs.md +++ b/docs/08-References/Clients/metalctl/metalctl_machine_logs.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_logs title: metalctl_machine_logs -sidebar_position: 61 +sidebar_position: 13 --- ## metalctl machine logs diff --git a/docs/08-References/Clients/metalctl/metalctl_machine_power.md b/docs/08-References/Clients/metalctl/metalctl_machine_power.md index b41deeaa..cd1bea63 100644 --- a/docs/08-References/Clients/metalctl/metalctl_machine_power.md +++ b/docs/08-References/Clients/metalctl/metalctl_machine_power.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_power title: metalctl_machine_power -sidebar_position: 62 +sidebar_position: 14 --- ## metalctl machine power diff --git a/docs/08-References/Clients/metalctl/metalctl_machine_power_bios.md b/docs/08-References/Clients/metalctl/metalctl_machine_power_bios.md index 96f2e33d..c78fa8a8 100644 --- a/docs/08-References/Clients/metalctl/metalctl_machine_power_bios.md +++ b/docs/08-References/Clients/metalctl/metalctl_machine_power_bios.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_power_bios title: metalctl_machine_power_bios -sidebar_position: 63 +sidebar_position: 1 --- ## metalctl machine power bios diff --git a/docs/08-References/Clients/metalctl/metalctl_machine_power_cycle.md b/docs/08-References/Clients/metalctl/metalctl_machine_power_cycle.md index 2c77c28f..baa00e45 100644 --- a/docs/08-References/Clients/metalctl/metalctl_machine_power_cycle.md +++ b/docs/08-References/Clients/metalctl/metalctl_machine_power_cycle.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_power_cycle title: metalctl_machine_power_cycle -sidebar_position: 64 +sidebar_position: 2 --- ## metalctl machine power cycle diff --git a/docs/08-References/Clients/metalctl/metalctl_machine_power_disk.md b/docs/08-References/Clients/metalctl/metalctl_machine_power_disk.md index 343030ac..d16f4455 100644 --- a/docs/08-References/Clients/metalctl/metalctl_machine_power_disk.md +++ b/docs/08-References/Clients/metalctl/metalctl_machine_power_disk.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_power_disk title: metalctl_machine_power_disk -sidebar_position: 65 +sidebar_position: 3 --- ## metalctl machine power disk diff --git a/docs/08-References/Clients/metalctl/metalctl_machine_power_off.md b/docs/08-References/Clients/metalctl/metalctl_machine_power_off.md index 2a3e3434..6aececcd 100644 --- a/docs/08-References/Clients/metalctl/metalctl_machine_power_off.md +++ b/docs/08-References/Clients/metalctl/metalctl_machine_power_off.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_power_off title: metalctl_machine_power_off -sidebar_position: 66 +sidebar_position: 4 --- ## metalctl machine power off diff --git a/docs/08-References/Clients/metalctl/metalctl_machine_power_on.md b/docs/08-References/Clients/metalctl/metalctl_machine_power_on.md index 407486af..979149eb 100644 --- a/docs/08-References/Clients/metalctl/metalctl_machine_power_on.md +++ b/docs/08-References/Clients/metalctl/metalctl_machine_power_on.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_power_on title: metalctl_machine_power_on -sidebar_position: 67 +sidebar_position: 5 --- ## metalctl machine power on diff --git a/docs/08-References/Clients/metalctl/metalctl_machine_power_pxe.md b/docs/08-References/Clients/metalctl/metalctl_machine_power_pxe.md index 25ca47d2..ffe28a67 100644 --- a/docs/08-References/Clients/metalctl/metalctl_machine_power_pxe.md +++ b/docs/08-References/Clients/metalctl/metalctl_machine_power_pxe.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_power_pxe title: metalctl_machine_power_pxe -sidebar_position: 68 +sidebar_position: 6 --- ## metalctl machine power pxe diff --git a/docs/08-References/Clients/metalctl/metalctl_machine_power_reset.md b/docs/08-References/Clients/metalctl/metalctl_machine_power_reset.md index c7cc75fe..6ec75425 100644 --- a/docs/08-References/Clients/metalctl/metalctl_machine_power_reset.md +++ b/docs/08-References/Clients/metalctl/metalctl_machine_power_reset.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_power_reset title: metalctl_machine_power_reset -sidebar_position: 69 +sidebar_position: 7 --- ## metalctl machine power reset diff --git a/docs/08-References/Clients/metalctl/metalctl_machine_reinstall.md b/docs/08-References/Clients/metalctl/metalctl_machine_reinstall.md index cb255476..96a5e943 100644 --- a/docs/08-References/Clients/metalctl/metalctl_machine_reinstall.md +++ b/docs/08-References/Clients/metalctl/metalctl_machine_reinstall.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_reinstall title: metalctl_machine_reinstall -sidebar_position: 70 +sidebar_position: 15 --- ## metalctl machine reinstall diff --git a/docs/08-References/Clients/metalctl/metalctl_machine_reserve.md b/docs/08-References/Clients/metalctl/metalctl_machine_reserve.md index 75058f82..3b036636 100644 --- a/docs/08-References/Clients/metalctl/metalctl_machine_reserve.md +++ b/docs/08-References/Clients/metalctl/metalctl_machine_reserve.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_reserve title: metalctl_machine_reserve -sidebar_position: 71 +sidebar_position: 16 --- ## metalctl machine reserve diff --git a/docs/08-References/Clients/metalctl/metalctl_machine_update-firmware.md b/docs/08-References/Clients/metalctl/metalctl_machine_update-firmware.md index 658403b3..bf6c1473 100644 --- a/docs/08-References/Clients/metalctl/metalctl_machine_update-firmware.md +++ b/docs/08-References/Clients/metalctl/metalctl_machine_update-firmware.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_update-firmware title: metalctl_machine_update-firmware -sidebar_position: 72 +sidebar_position: 18 --- ## metalctl machine update-firmware diff --git a/docs/08-References/Clients/metalctl/metalctl_machine_update-firmware_bios.md b/docs/08-References/Clients/metalctl/metalctl_machine_update-firmware_bios.md index dbe6881c..c242d44c 100644 --- a/docs/08-References/Clients/metalctl/metalctl_machine_update-firmware_bios.md +++ b/docs/08-References/Clients/metalctl/metalctl_machine_update-firmware_bios.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_update-firmware_bios title: metalctl_machine_update-firmware_bios -sidebar_position: 73 +sidebar_position: 1 --- ## metalctl machine update-firmware bios diff --git a/docs/08-References/Clients/metalctl/metalctl_machine_update-firmware_bmc.md b/docs/08-References/Clients/metalctl/metalctl_machine_update-firmware_bmc.md index 48b9d23c..657e5bea 100644 --- a/docs/08-References/Clients/metalctl/metalctl_machine_update-firmware_bmc.md +++ b/docs/08-References/Clients/metalctl/metalctl_machine_update-firmware_bmc.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_update-firmware_bmc title: metalctl_machine_update-firmware_bmc -sidebar_position: 74 +sidebar_position: 2 --- ## metalctl machine update-firmware bmc diff --git a/docs/08-References/Clients/metalctl/metalctl_machine_update.md b/docs/08-References/Clients/metalctl/metalctl_machine_update.md index 0a4dd020..f9caef68 100644 --- a/docs/08-References/Clients/metalctl/metalctl_machine_update.md +++ b/docs/08-References/Clients/metalctl/metalctl_machine_update.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_update title: metalctl_machine_update -sidebar_position: 75 +sidebar_position: 17 --- ## metalctl machine update diff --git a/docs/08-References/Clients/metalctl/metalctl_markdown.md b/docs/08-References/Clients/metalctl/metalctl_markdown.md index 8d6d33dc..87010dfc 100644 --- a/docs/08-References/Clients/metalctl/metalctl_markdown.md +++ b/docs/08-References/Clients/metalctl/metalctl_markdown.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_markdown title: metalctl_markdown -sidebar_position: 76 +sidebar_position: 11 --- ## metalctl markdown diff --git a/docs/08-References/Clients/metalctl/metalctl_network.md b/docs/08-References/Clients/metalctl/metalctl_network.md index 305cc1d8..fc387c38 100644 --- a/docs/08-References/Clients/metalctl/metalctl_network.md +++ b/docs/08-References/Clients/metalctl/metalctl_network.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_network title: metalctl_network -sidebar_position: 77 +sidebar_position: 12 --- ## metalctl network diff --git a/docs/08-References/Clients/metalctl/metalctl_network_allocate.md b/docs/08-References/Clients/metalctl/metalctl_network_allocate.md index e893e3d5..b9797d1a 100644 --- a/docs/08-References/Clients/metalctl/metalctl_network_allocate.md +++ b/docs/08-References/Clients/metalctl/metalctl_network_allocate.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_network_allocate title: metalctl_network_allocate -sidebar_position: 78 +sidebar_position: 1 --- ## metalctl network allocate diff --git a/docs/08-References/Clients/metalctl/metalctl_network_apply.md b/docs/08-References/Clients/metalctl/metalctl_network_apply.md index 3421edc1..eaefcbb3 100644 --- a/docs/08-References/Clients/metalctl/metalctl_network_apply.md +++ b/docs/08-References/Clients/metalctl/metalctl_network_apply.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_network_apply title: metalctl_network_apply -sidebar_position: 79 +sidebar_position: 2 --- ## metalctl network apply diff --git a/docs/08-References/Clients/metalctl/metalctl_network_create.md b/docs/08-References/Clients/metalctl/metalctl_network_create.md index 6ccf29a0..e057d356 100644 --- a/docs/08-References/Clients/metalctl/metalctl_network_create.md +++ b/docs/08-References/Clients/metalctl/metalctl_network_create.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_network_create title: metalctl_network_create -sidebar_position: 80 +sidebar_position: 3 --- ## metalctl network create diff --git a/docs/08-References/Clients/metalctl/metalctl_network_delete.md b/docs/08-References/Clients/metalctl/metalctl_network_delete.md index 8fd3fd4c..c9bec60b 100644 --- a/docs/08-References/Clients/metalctl/metalctl_network_delete.md +++ b/docs/08-References/Clients/metalctl/metalctl_network_delete.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_network_delete title: metalctl_network_delete -sidebar_position: 81 +sidebar_position: 4 --- ## metalctl network delete diff --git a/docs/08-References/Clients/metalctl/metalctl_network_describe.md b/docs/08-References/Clients/metalctl/metalctl_network_describe.md index 34ba3f5f..4b8dccfb 100644 --- a/docs/08-References/Clients/metalctl/metalctl_network_describe.md +++ b/docs/08-References/Clients/metalctl/metalctl_network_describe.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_network_describe title: metalctl_network_describe -sidebar_position: 82 +sidebar_position: 5 --- ## metalctl network describe diff --git a/docs/08-References/Clients/metalctl/metalctl_network_edit.md b/docs/08-References/Clients/metalctl/metalctl_network_edit.md index 30060790..9fbef823 100644 --- a/docs/08-References/Clients/metalctl/metalctl_network_edit.md +++ b/docs/08-References/Clients/metalctl/metalctl_network_edit.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_network_edit title: metalctl_network_edit -sidebar_position: 83 +sidebar_position: 6 --- ## metalctl network edit diff --git a/docs/08-References/Clients/metalctl/metalctl_network_free.md b/docs/08-References/Clients/metalctl/metalctl_network_free.md index d13823c9..fba11df7 100644 --- a/docs/08-References/Clients/metalctl/metalctl_network_free.md +++ b/docs/08-References/Clients/metalctl/metalctl_network_free.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_network_free title: metalctl_network_free -sidebar_position: 84 +sidebar_position: 7 --- ## metalctl network free diff --git a/docs/08-References/Clients/metalctl/metalctl_network_ip.md b/docs/08-References/Clients/metalctl/metalctl_network_ip.md index cdbc4880..10f227ec 100644 --- a/docs/08-References/Clients/metalctl/metalctl_network_ip.md +++ b/docs/08-References/Clients/metalctl/metalctl_network_ip.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_network_ip title: metalctl_network_ip -sidebar_position: 85 +sidebar_position: 8 --- ## metalctl network ip diff --git a/docs/08-References/Clients/metalctl/metalctl_network_ip_apply.md b/docs/08-References/Clients/metalctl/metalctl_network_ip_apply.md index 255dc9fb..4cd55356 100644 --- a/docs/08-References/Clients/metalctl/metalctl_network_ip_apply.md +++ b/docs/08-References/Clients/metalctl/metalctl_network_ip_apply.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_network_ip_apply title: metalctl_network_ip_apply -sidebar_position: 86 +sidebar_position: 1 --- ## metalctl network ip apply diff --git a/docs/08-References/Clients/metalctl/metalctl_network_ip_create.md b/docs/08-References/Clients/metalctl/metalctl_network_ip_create.md index c5172193..018e01d7 100644 --- a/docs/08-References/Clients/metalctl/metalctl_network_ip_create.md +++ b/docs/08-References/Clients/metalctl/metalctl_network_ip_create.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_network_ip_create title: metalctl_network_ip_create -sidebar_position: 87 +sidebar_position: 2 --- ## metalctl network ip create diff --git a/docs/08-References/Clients/metalctl/metalctl_network_ip_delete.md b/docs/08-References/Clients/metalctl/metalctl_network_ip_delete.md index 1f130b02..3d8a908f 100644 --- a/docs/08-References/Clients/metalctl/metalctl_network_ip_delete.md +++ b/docs/08-References/Clients/metalctl/metalctl_network_ip_delete.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_network_ip_delete title: metalctl_network_ip_delete -sidebar_position: 88 +sidebar_position: 3 --- ## metalctl network ip delete diff --git a/docs/08-References/Clients/metalctl/metalctl_network_ip_describe.md b/docs/08-References/Clients/metalctl/metalctl_network_ip_describe.md index 16049315..d2df8c75 100644 --- a/docs/08-References/Clients/metalctl/metalctl_network_ip_describe.md +++ b/docs/08-References/Clients/metalctl/metalctl_network_ip_describe.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_network_ip_describe title: metalctl_network_ip_describe -sidebar_position: 89 +sidebar_position: 4 --- ## metalctl network ip describe diff --git a/docs/08-References/Clients/metalctl/metalctl_network_ip_edit.md b/docs/08-References/Clients/metalctl/metalctl_network_ip_edit.md index 49987e9a..95a1330a 100644 --- a/docs/08-References/Clients/metalctl/metalctl_network_ip_edit.md +++ b/docs/08-References/Clients/metalctl/metalctl_network_ip_edit.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_network_ip_edit title: metalctl_network_ip_edit -sidebar_position: 90 +sidebar_position: 5 --- ## metalctl network ip edit diff --git a/docs/08-References/Clients/metalctl/metalctl_network_ip_issues.md b/docs/08-References/Clients/metalctl/metalctl_network_ip_issues.md index ba7e6e03..828ace6f 100644 --- a/docs/08-References/Clients/metalctl/metalctl_network_ip_issues.md +++ b/docs/08-References/Clients/metalctl/metalctl_network_ip_issues.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_network_ip_issues title: metalctl_network_ip_issues -sidebar_position: 91 +sidebar_position: 6 --- ## metalctl network ip issues diff --git a/docs/08-References/Clients/metalctl/metalctl_network_ip_list.md b/docs/08-References/Clients/metalctl/metalctl_network_ip_list.md index 664d0580..c2453b62 100644 --- a/docs/08-References/Clients/metalctl/metalctl_network_ip_list.md +++ b/docs/08-References/Clients/metalctl/metalctl_network_ip_list.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_network_ip_list title: metalctl_network_ip_list -sidebar_position: 92 +sidebar_position: 7 --- ## metalctl network ip list diff --git a/docs/08-References/Clients/metalctl/metalctl_network_ip_update.md b/docs/08-References/Clients/metalctl/metalctl_network_ip_update.md index c8609cf3..aa623af9 100644 --- a/docs/08-References/Clients/metalctl/metalctl_network_ip_update.md +++ b/docs/08-References/Clients/metalctl/metalctl_network_ip_update.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_network_ip_update title: metalctl_network_ip_update -sidebar_position: 93 +sidebar_position: 8 --- ## metalctl network ip update diff --git a/docs/08-References/Clients/metalctl/metalctl_network_list.md b/docs/08-References/Clients/metalctl/metalctl_network_list.md index 77c6f615..6403ff8b 100644 --- a/docs/08-References/Clients/metalctl/metalctl_network_list.md +++ b/docs/08-References/Clients/metalctl/metalctl_network_list.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_network_list title: metalctl_network_list -sidebar_position: 94 +sidebar_position: 9 --- ## metalctl network list diff --git a/docs/08-References/Clients/metalctl/metalctl_network_update.md b/docs/08-References/Clients/metalctl/metalctl_network_update.md index 66b0d6e6..2d61076a 100644 --- a/docs/08-References/Clients/metalctl/metalctl_network_update.md +++ b/docs/08-References/Clients/metalctl/metalctl_network_update.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_network_update title: metalctl_network_update -sidebar_position: 95 +sidebar_position: 10 --- ## metalctl network update diff --git a/docs/08-References/Clients/metalctl/metalctl_partition.md b/docs/08-References/Clients/metalctl/metalctl_partition.md index 335dc4b6..536c2137 100644 --- a/docs/08-References/Clients/metalctl/metalctl_partition.md +++ b/docs/08-References/Clients/metalctl/metalctl_partition.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_partition title: metalctl_partition -sidebar_position: 96 +sidebar_position: 13 --- ## metalctl partition diff --git a/docs/08-References/Clients/metalctl/metalctl_partition_apply.md b/docs/08-References/Clients/metalctl/metalctl_partition_apply.md index ed390b6f..091a549a 100644 --- a/docs/08-References/Clients/metalctl/metalctl_partition_apply.md +++ b/docs/08-References/Clients/metalctl/metalctl_partition_apply.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_partition_apply title: metalctl_partition_apply -sidebar_position: 97 +sidebar_position: 1 --- ## metalctl partition apply diff --git a/docs/08-References/Clients/metalctl/metalctl_partition_capacity.md b/docs/08-References/Clients/metalctl/metalctl_partition_capacity.md index 201d1bb5..c1d81828 100644 --- a/docs/08-References/Clients/metalctl/metalctl_partition_capacity.md +++ b/docs/08-References/Clients/metalctl/metalctl_partition_capacity.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_partition_capacity title: metalctl_partition_capacity -sidebar_position: 98 +sidebar_position: 2 --- ## metalctl partition capacity diff --git a/docs/08-References/Clients/metalctl/metalctl_partition_create.md b/docs/08-References/Clients/metalctl/metalctl_partition_create.md index b3271e87..fbd9375b 100644 --- a/docs/08-References/Clients/metalctl/metalctl_partition_create.md +++ b/docs/08-References/Clients/metalctl/metalctl_partition_create.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_partition_create title: metalctl_partition_create -sidebar_position: 99 +sidebar_position: 3 --- ## metalctl partition create diff --git a/docs/08-References/Clients/metalctl/metalctl_partition_delete.md b/docs/08-References/Clients/metalctl/metalctl_partition_delete.md index e2e5c9ef..3f3fda11 100644 --- a/docs/08-References/Clients/metalctl/metalctl_partition_delete.md +++ b/docs/08-References/Clients/metalctl/metalctl_partition_delete.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_partition_delete title: metalctl_partition_delete -sidebar_position: 100 +sidebar_position: 4 --- ## metalctl partition delete diff --git a/docs/08-References/Clients/metalctl/metalctl_partition_describe.md b/docs/08-References/Clients/metalctl/metalctl_partition_describe.md index 5ae917d9..981245d9 100644 --- a/docs/08-References/Clients/metalctl/metalctl_partition_describe.md +++ b/docs/08-References/Clients/metalctl/metalctl_partition_describe.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_partition_describe title: metalctl_partition_describe -sidebar_position: 101 +sidebar_position: 5 --- ## metalctl partition describe diff --git a/docs/08-References/Clients/metalctl/metalctl_partition_edit.md b/docs/08-References/Clients/metalctl/metalctl_partition_edit.md index b8dcc30f..c4202e33 100644 --- a/docs/08-References/Clients/metalctl/metalctl_partition_edit.md +++ b/docs/08-References/Clients/metalctl/metalctl_partition_edit.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_partition_edit title: metalctl_partition_edit -sidebar_position: 102 +sidebar_position: 6 --- ## metalctl partition edit diff --git a/docs/08-References/Clients/metalctl/metalctl_partition_list.md b/docs/08-References/Clients/metalctl/metalctl_partition_list.md index e1f4560f..96d39788 100644 --- a/docs/08-References/Clients/metalctl/metalctl_partition_list.md +++ b/docs/08-References/Clients/metalctl/metalctl_partition_list.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_partition_list title: metalctl_partition_list -sidebar_position: 103 +sidebar_position: 7 --- ## metalctl partition list diff --git a/docs/08-References/Clients/metalctl/metalctl_partition_update.md b/docs/08-References/Clients/metalctl/metalctl_partition_update.md index b5e200d2..e85e52d0 100644 --- a/docs/08-References/Clients/metalctl/metalctl_partition_update.md +++ b/docs/08-References/Clients/metalctl/metalctl_partition_update.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_partition_update title: metalctl_partition_update -sidebar_position: 104 +sidebar_position: 8 --- ## metalctl partition update diff --git a/docs/08-References/Clients/metalctl/metalctl_project.md b/docs/08-References/Clients/metalctl/metalctl_project.md index f1719259..0f063aba 100644 --- a/docs/08-References/Clients/metalctl/metalctl_project.md +++ b/docs/08-References/Clients/metalctl/metalctl_project.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_project title: metalctl_project -sidebar_position: 105 +sidebar_position: 14 --- ## metalctl project diff --git a/docs/08-References/Clients/metalctl/metalctl_project_apply.md b/docs/08-References/Clients/metalctl/metalctl_project_apply.md index 14c46a3f..d79bfa1b 100644 --- a/docs/08-References/Clients/metalctl/metalctl_project_apply.md +++ b/docs/08-References/Clients/metalctl/metalctl_project_apply.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_project_apply title: metalctl_project_apply -sidebar_position: 106 +sidebar_position: 1 --- ## metalctl project apply diff --git a/docs/08-References/Clients/metalctl/metalctl_project_create.md b/docs/08-References/Clients/metalctl/metalctl_project_create.md index 955b2407..d4d5de41 100644 --- a/docs/08-References/Clients/metalctl/metalctl_project_create.md +++ b/docs/08-References/Clients/metalctl/metalctl_project_create.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_project_create title: metalctl_project_create -sidebar_position: 107 +sidebar_position: 2 --- ## metalctl project create diff --git a/docs/08-References/Clients/metalctl/metalctl_project_delete.md b/docs/08-References/Clients/metalctl/metalctl_project_delete.md index 52e51067..a98a8a93 100644 --- a/docs/08-References/Clients/metalctl/metalctl_project_delete.md +++ b/docs/08-References/Clients/metalctl/metalctl_project_delete.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_project_delete title: metalctl_project_delete -sidebar_position: 108 +sidebar_position: 3 --- ## metalctl project delete diff --git a/docs/08-References/Clients/metalctl/metalctl_project_describe.md b/docs/08-References/Clients/metalctl/metalctl_project_describe.md index 96e2d5e4..68b74fec 100644 --- a/docs/08-References/Clients/metalctl/metalctl_project_describe.md +++ b/docs/08-References/Clients/metalctl/metalctl_project_describe.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_project_describe title: metalctl_project_describe -sidebar_position: 109 +sidebar_position: 4 --- ## metalctl project describe diff --git a/docs/08-References/Clients/metalctl/metalctl_project_edit.md b/docs/08-References/Clients/metalctl/metalctl_project_edit.md index b084e834..3aacf5aa 100644 --- a/docs/08-References/Clients/metalctl/metalctl_project_edit.md +++ b/docs/08-References/Clients/metalctl/metalctl_project_edit.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_project_edit title: metalctl_project_edit -sidebar_position: 110 +sidebar_position: 5 --- ## metalctl project edit diff --git a/docs/08-References/Clients/metalctl/metalctl_project_list.md b/docs/08-References/Clients/metalctl/metalctl_project_list.md index 7a14e3ea..029a3ea0 100644 --- a/docs/08-References/Clients/metalctl/metalctl_project_list.md +++ b/docs/08-References/Clients/metalctl/metalctl_project_list.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_project_list title: metalctl_project_list -sidebar_position: 111 +sidebar_position: 6 --- ## metalctl project list diff --git a/docs/08-References/Clients/metalctl/metalctl_project_update.md b/docs/08-References/Clients/metalctl/metalctl_project_update.md index 963f9d59..980e1244 100644 --- a/docs/08-References/Clients/metalctl/metalctl_project_update.md +++ b/docs/08-References/Clients/metalctl/metalctl_project_update.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_project_update title: metalctl_project_update -sidebar_position: 112 +sidebar_position: 7 --- ## metalctl project update diff --git a/docs/08-References/Clients/metalctl/metalctl_size.md b/docs/08-References/Clients/metalctl/metalctl_size.md index 8c133198..cfcc0bb3 100644 --- a/docs/08-References/Clients/metalctl/metalctl_size.md +++ b/docs/08-References/Clients/metalctl/metalctl_size.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size title: metalctl_size -sidebar_position: 113 +sidebar_position: 15 --- ## metalctl size diff --git a/docs/08-References/Clients/metalctl/metalctl_size_apply.md b/docs/08-References/Clients/metalctl/metalctl_size_apply.md index 4ff628d7..1451fed2 100644 --- a/docs/08-References/Clients/metalctl/metalctl_size_apply.md +++ b/docs/08-References/Clients/metalctl/metalctl_size_apply.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_apply title: metalctl_size_apply -sidebar_position: 114 +sidebar_position: 1 --- ## metalctl size apply diff --git a/docs/08-References/Clients/metalctl/metalctl_size_create.md b/docs/08-References/Clients/metalctl/metalctl_size_create.md index 2d90923d..a9a19303 100644 --- a/docs/08-References/Clients/metalctl/metalctl_size_create.md +++ b/docs/08-References/Clients/metalctl/metalctl_size_create.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_create title: metalctl_size_create -sidebar_position: 115 +sidebar_position: 2 --- ## metalctl size create diff --git a/docs/08-References/Clients/metalctl/metalctl_size_delete.md b/docs/08-References/Clients/metalctl/metalctl_size_delete.md index eed18f17..48843221 100644 --- a/docs/08-References/Clients/metalctl/metalctl_size_delete.md +++ b/docs/08-References/Clients/metalctl/metalctl_size_delete.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_delete title: metalctl_size_delete -sidebar_position: 116 +sidebar_position: 3 --- ## metalctl size delete diff --git a/docs/08-References/Clients/metalctl/metalctl_size_describe.md b/docs/08-References/Clients/metalctl/metalctl_size_describe.md index 8779a077..ca371bde 100644 --- a/docs/08-References/Clients/metalctl/metalctl_size_describe.md +++ b/docs/08-References/Clients/metalctl/metalctl_size_describe.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_describe title: metalctl_size_describe -sidebar_position: 117 +sidebar_position: 4 --- ## metalctl size describe diff --git a/docs/08-References/Clients/metalctl/metalctl_size_edit.md b/docs/08-References/Clients/metalctl/metalctl_size_edit.md index 082c72ff..a1f71f40 100644 --- a/docs/08-References/Clients/metalctl/metalctl_size_edit.md +++ b/docs/08-References/Clients/metalctl/metalctl_size_edit.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_edit title: metalctl_size_edit -sidebar_position: 118 +sidebar_position: 5 --- ## metalctl size edit diff --git a/docs/08-References/Clients/metalctl/metalctl_size_imageconstraint.md b/docs/08-References/Clients/metalctl/metalctl_size_imageconstraint.md index 7bf27753..220faa69 100644 --- a/docs/08-References/Clients/metalctl/metalctl_size_imageconstraint.md +++ b/docs/08-References/Clients/metalctl/metalctl_size_imageconstraint.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_imageconstraint title: metalctl_size_imageconstraint -sidebar_position: 119 +sidebar_position: 6 --- ## metalctl size imageconstraint diff --git a/docs/08-References/Clients/metalctl/metalctl_size_imageconstraint_apply.md b/docs/08-References/Clients/metalctl/metalctl_size_imageconstraint_apply.md index 5e9b7de8..b5841a24 100644 --- a/docs/08-References/Clients/metalctl/metalctl_size_imageconstraint_apply.md +++ b/docs/08-References/Clients/metalctl/metalctl_size_imageconstraint_apply.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_imageconstraint_apply title: metalctl_size_imageconstraint_apply -sidebar_position: 120 +sidebar_position: 1 --- ## metalctl size imageconstraint apply diff --git a/docs/08-References/Clients/metalctl/metalctl_size_imageconstraint_create.md b/docs/08-References/Clients/metalctl/metalctl_size_imageconstraint_create.md index 19c960cf..b09aa6b8 100644 --- a/docs/08-References/Clients/metalctl/metalctl_size_imageconstraint_create.md +++ b/docs/08-References/Clients/metalctl/metalctl_size_imageconstraint_create.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_imageconstraint_create title: metalctl_size_imageconstraint_create -sidebar_position: 121 +sidebar_position: 2 --- ## metalctl size imageconstraint create diff --git a/docs/08-References/Clients/metalctl/metalctl_size_imageconstraint_delete.md b/docs/08-References/Clients/metalctl/metalctl_size_imageconstraint_delete.md index ee29501e..c0ff3d29 100644 --- a/docs/08-References/Clients/metalctl/metalctl_size_imageconstraint_delete.md +++ b/docs/08-References/Clients/metalctl/metalctl_size_imageconstraint_delete.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_imageconstraint_delete title: metalctl_size_imageconstraint_delete -sidebar_position: 122 +sidebar_position: 3 --- ## metalctl size imageconstraint delete diff --git a/docs/08-References/Clients/metalctl/metalctl_size_imageconstraint_describe.md b/docs/08-References/Clients/metalctl/metalctl_size_imageconstraint_describe.md index 338c1a5f..6d376c12 100644 --- a/docs/08-References/Clients/metalctl/metalctl_size_imageconstraint_describe.md +++ b/docs/08-References/Clients/metalctl/metalctl_size_imageconstraint_describe.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_imageconstraint_describe title: metalctl_size_imageconstraint_describe -sidebar_position: 123 +sidebar_position: 4 --- ## metalctl size imageconstraint describe diff --git a/docs/08-References/Clients/metalctl/metalctl_size_imageconstraint_edit.md b/docs/08-References/Clients/metalctl/metalctl_size_imageconstraint_edit.md index 610643f9..8efb3a2a 100644 --- a/docs/08-References/Clients/metalctl/metalctl_size_imageconstraint_edit.md +++ b/docs/08-References/Clients/metalctl/metalctl_size_imageconstraint_edit.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_imageconstraint_edit title: metalctl_size_imageconstraint_edit -sidebar_position: 124 +sidebar_position: 5 --- ## metalctl size imageconstraint edit diff --git a/docs/08-References/Clients/metalctl/metalctl_size_imageconstraint_list.md b/docs/08-References/Clients/metalctl/metalctl_size_imageconstraint_list.md index 60a01e70..3c2ab091 100644 --- a/docs/08-References/Clients/metalctl/metalctl_size_imageconstraint_list.md +++ b/docs/08-References/Clients/metalctl/metalctl_size_imageconstraint_list.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_imageconstraint_list title: metalctl_size_imageconstraint_list -sidebar_position: 125 +sidebar_position: 6 --- ## metalctl size imageconstraint list diff --git a/docs/08-References/Clients/metalctl/metalctl_size_imageconstraint_try.md b/docs/08-References/Clients/metalctl/metalctl_size_imageconstraint_try.md index 7a50db41..30fc54b5 100644 --- a/docs/08-References/Clients/metalctl/metalctl_size_imageconstraint_try.md +++ b/docs/08-References/Clients/metalctl/metalctl_size_imageconstraint_try.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_imageconstraint_try title: metalctl_size_imageconstraint_try -sidebar_position: 126 +sidebar_position: 7 --- ## metalctl size imageconstraint try diff --git a/docs/08-References/Clients/metalctl/metalctl_size_imageconstraint_update.md b/docs/08-References/Clients/metalctl/metalctl_size_imageconstraint_update.md index 2f2b342b..36118214 100644 --- a/docs/08-References/Clients/metalctl/metalctl_size_imageconstraint_update.md +++ b/docs/08-References/Clients/metalctl/metalctl_size_imageconstraint_update.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_imageconstraint_update title: metalctl_size_imageconstraint_update -sidebar_position: 127 +sidebar_position: 8 --- ## metalctl size imageconstraint update diff --git a/docs/08-References/Clients/metalctl/metalctl_size_list.md b/docs/08-References/Clients/metalctl/metalctl_size_list.md index dc0621ec..6e1b3eb3 100644 --- a/docs/08-References/Clients/metalctl/metalctl_size_list.md +++ b/docs/08-References/Clients/metalctl/metalctl_size_list.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_list title: metalctl_size_list -sidebar_position: 128 +sidebar_position: 7 --- ## metalctl size list diff --git a/docs/08-References/Clients/metalctl/metalctl_size_reservation.md b/docs/08-References/Clients/metalctl/metalctl_size_reservation.md index 95a11e30..262698da 100644 --- a/docs/08-References/Clients/metalctl/metalctl_size_reservation.md +++ b/docs/08-References/Clients/metalctl/metalctl_size_reservation.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_reservation title: metalctl_size_reservation -sidebar_position: 129 +sidebar_position: 8 --- ## metalctl size reservation diff --git a/docs/08-References/Clients/metalctl/metalctl_size_reservation_apply.md b/docs/08-References/Clients/metalctl/metalctl_size_reservation_apply.md index bed9743c..71a05f2d 100644 --- a/docs/08-References/Clients/metalctl/metalctl_size_reservation_apply.md +++ b/docs/08-References/Clients/metalctl/metalctl_size_reservation_apply.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_reservation_apply title: metalctl_size_reservation_apply -sidebar_position: 130 +sidebar_position: 1 --- ## metalctl size reservation apply diff --git a/docs/08-References/Clients/metalctl/metalctl_size_reservation_create.md b/docs/08-References/Clients/metalctl/metalctl_size_reservation_create.md index 634a4ffb..ebd18720 100644 --- a/docs/08-References/Clients/metalctl/metalctl_size_reservation_create.md +++ b/docs/08-References/Clients/metalctl/metalctl_size_reservation_create.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_reservation_create title: metalctl_size_reservation_create -sidebar_position: 131 +sidebar_position: 2 --- ## metalctl size reservation create diff --git a/docs/08-References/Clients/metalctl/metalctl_size_reservation_delete.md b/docs/08-References/Clients/metalctl/metalctl_size_reservation_delete.md index 3c74d437..19209810 100644 --- a/docs/08-References/Clients/metalctl/metalctl_size_reservation_delete.md +++ b/docs/08-References/Clients/metalctl/metalctl_size_reservation_delete.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_reservation_delete title: metalctl_size_reservation_delete -sidebar_position: 132 +sidebar_position: 3 --- ## metalctl size reservation delete diff --git a/docs/08-References/Clients/metalctl/metalctl_size_reservation_describe.md b/docs/08-References/Clients/metalctl/metalctl_size_reservation_describe.md index 7ac0ef77..f167fa54 100644 --- a/docs/08-References/Clients/metalctl/metalctl_size_reservation_describe.md +++ b/docs/08-References/Clients/metalctl/metalctl_size_reservation_describe.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_reservation_describe title: metalctl_size_reservation_describe -sidebar_position: 133 +sidebar_position: 4 --- ## metalctl size reservation describe diff --git a/docs/08-References/Clients/metalctl/metalctl_size_reservation_edit.md b/docs/08-References/Clients/metalctl/metalctl_size_reservation_edit.md index c47877b0..42c35ee6 100644 --- a/docs/08-References/Clients/metalctl/metalctl_size_reservation_edit.md +++ b/docs/08-References/Clients/metalctl/metalctl_size_reservation_edit.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_reservation_edit title: metalctl_size_reservation_edit -sidebar_position: 134 +sidebar_position: 5 --- ## metalctl size reservation edit diff --git a/docs/08-References/Clients/metalctl/metalctl_size_reservation_list.md b/docs/08-References/Clients/metalctl/metalctl_size_reservation_list.md index 20a375cf..9e2bcbd6 100644 --- a/docs/08-References/Clients/metalctl/metalctl_size_reservation_list.md +++ b/docs/08-References/Clients/metalctl/metalctl_size_reservation_list.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_reservation_list title: metalctl_size_reservation_list -sidebar_position: 135 +sidebar_position: 6 --- ## metalctl size reservation list diff --git a/docs/08-References/Clients/metalctl/metalctl_size_reservation_update.md b/docs/08-References/Clients/metalctl/metalctl_size_reservation_update.md index d6118b0c..ebe6f4bc 100644 --- a/docs/08-References/Clients/metalctl/metalctl_size_reservation_update.md +++ b/docs/08-References/Clients/metalctl/metalctl_size_reservation_update.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_reservation_update title: metalctl_size_reservation_update -sidebar_position: 136 +sidebar_position: 7 --- ## metalctl size reservation update diff --git a/docs/08-References/Clients/metalctl/metalctl_size_reservation_usage.md b/docs/08-References/Clients/metalctl/metalctl_size_reservation_usage.md index ea910c7b..12d3b82f 100644 --- a/docs/08-References/Clients/metalctl/metalctl_size_reservation_usage.md +++ b/docs/08-References/Clients/metalctl/metalctl_size_reservation_usage.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_reservation_usage title: metalctl_size_reservation_usage -sidebar_position: 137 +sidebar_position: 8 --- ## metalctl size reservation usage diff --git a/docs/08-References/Clients/metalctl/metalctl_size_suggest.md b/docs/08-References/Clients/metalctl/metalctl_size_suggest.md index 227541b2..ae167fdc 100644 --- a/docs/08-References/Clients/metalctl/metalctl_size_suggest.md +++ b/docs/08-References/Clients/metalctl/metalctl_size_suggest.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_suggest title: metalctl_size_suggest -sidebar_position: 138 +sidebar_position: 9 --- ## metalctl size suggest diff --git a/docs/08-References/Clients/metalctl/metalctl_size_update.md b/docs/08-References/Clients/metalctl/metalctl_size_update.md index 0446bf24..3a222f68 100644 --- a/docs/08-References/Clients/metalctl/metalctl_size_update.md +++ b/docs/08-References/Clients/metalctl/metalctl_size_update.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_update title: metalctl_size_update -sidebar_position: 139 +sidebar_position: 10 --- ## metalctl size update diff --git a/docs/08-References/Clients/metalctl/metalctl_switch.md b/docs/08-References/Clients/metalctl/metalctl_switch.md index b8a545cb..7f1317a4 100644 --- a/docs/08-References/Clients/metalctl/metalctl_switch.md +++ b/docs/08-References/Clients/metalctl/metalctl_switch.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_switch title: metalctl_switch -sidebar_position: 140 +sidebar_position: 16 --- ## metalctl switch diff --git a/docs/08-References/Clients/metalctl/metalctl_switch_connected-machines.md b/docs/08-References/Clients/metalctl/metalctl_switch_connected-machines.md index de9909ec..3ad93d8a 100644 --- a/docs/08-References/Clients/metalctl/metalctl_switch_connected-machines.md +++ b/docs/08-References/Clients/metalctl/metalctl_switch_connected-machines.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_switch_connected-machines title: metalctl_switch_connected-machines -sidebar_position: 141 +sidebar_position: 1 --- ## metalctl switch connected-machines diff --git a/docs/08-References/Clients/metalctl/metalctl_switch_console.md b/docs/08-References/Clients/metalctl/metalctl_switch_console.md index a3c03695..c0404b22 100644 --- a/docs/08-References/Clients/metalctl/metalctl_switch_console.md +++ b/docs/08-References/Clients/metalctl/metalctl_switch_console.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_switch_console title: metalctl_switch_console -sidebar_position: 142 +sidebar_position: 2 --- ## metalctl switch console diff --git a/docs/08-References/Clients/metalctl/metalctl_switch_delete.md b/docs/08-References/Clients/metalctl/metalctl_switch_delete.md index fbf3f1ca..1694b9a3 100644 --- a/docs/08-References/Clients/metalctl/metalctl_switch_delete.md +++ b/docs/08-References/Clients/metalctl/metalctl_switch_delete.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_switch_delete title: metalctl_switch_delete -sidebar_position: 143 +sidebar_position: 3 --- ## metalctl switch delete diff --git a/docs/08-References/Clients/metalctl/metalctl_switch_describe.md b/docs/08-References/Clients/metalctl/metalctl_switch_describe.md index 2014f7ea..4bc0e78e 100644 --- a/docs/08-References/Clients/metalctl/metalctl_switch_describe.md +++ b/docs/08-References/Clients/metalctl/metalctl_switch_describe.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_switch_describe title: metalctl_switch_describe -sidebar_position: 144 +sidebar_position: 4 --- ## metalctl switch describe diff --git a/docs/08-References/Clients/metalctl/metalctl_switch_detail.md b/docs/08-References/Clients/metalctl/metalctl_switch_detail.md index 51f9ecd3..8b85e048 100644 --- a/docs/08-References/Clients/metalctl/metalctl_switch_detail.md +++ b/docs/08-References/Clients/metalctl/metalctl_switch_detail.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_switch_detail title: metalctl_switch_detail -sidebar_position: 145 +sidebar_position: 5 --- ## metalctl switch detail diff --git a/docs/08-References/Clients/metalctl/metalctl_switch_edit.md b/docs/08-References/Clients/metalctl/metalctl_switch_edit.md index a5519832..29f88569 100644 --- a/docs/08-References/Clients/metalctl/metalctl_switch_edit.md +++ b/docs/08-References/Clients/metalctl/metalctl_switch_edit.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_switch_edit title: metalctl_switch_edit -sidebar_position: 146 +sidebar_position: 6 --- ## metalctl switch edit diff --git a/docs/08-References/Clients/metalctl/metalctl_switch_list.md b/docs/08-References/Clients/metalctl/metalctl_switch_list.md index 0f6acc21..e25ba941 100644 --- a/docs/08-References/Clients/metalctl/metalctl_switch_list.md +++ b/docs/08-References/Clients/metalctl/metalctl_switch_list.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_switch_list title: metalctl_switch_list -sidebar_position: 147 +sidebar_position: 7 --- ## metalctl switch list diff --git a/docs/08-References/Clients/metalctl/metalctl_switch_migrate.md b/docs/08-References/Clients/metalctl/metalctl_switch_migrate.md index 8a151590..2ee227e5 100644 --- a/docs/08-References/Clients/metalctl/metalctl_switch_migrate.md +++ b/docs/08-References/Clients/metalctl/metalctl_switch_migrate.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_switch_migrate title: metalctl_switch_migrate -sidebar_position: 148 +sidebar_position: 8 --- ## metalctl switch migrate diff --git a/docs/08-References/Clients/metalctl/metalctl_switch_port.md b/docs/08-References/Clients/metalctl/metalctl_switch_port.md index 07189394..2185a4ec 100644 --- a/docs/08-References/Clients/metalctl/metalctl_switch_port.md +++ b/docs/08-References/Clients/metalctl/metalctl_switch_port.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_switch_port title: metalctl_switch_port -sidebar_position: 149 +sidebar_position: 9 --- ## metalctl switch port diff --git a/docs/08-References/Clients/metalctl/metalctl_switch_port_describe.md b/docs/08-References/Clients/metalctl/metalctl_switch_port_describe.md index a4680392..1eee3d87 100644 --- a/docs/08-References/Clients/metalctl/metalctl_switch_port_describe.md +++ b/docs/08-References/Clients/metalctl/metalctl_switch_port_describe.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_switch_port_describe title: metalctl_switch_port_describe -sidebar_position: 150 +sidebar_position: 1 --- ## metalctl switch port describe diff --git a/docs/08-References/Clients/metalctl/metalctl_switch_port_down.md b/docs/08-References/Clients/metalctl/metalctl_switch_port_down.md index de261bc8..88db3f2f 100644 --- a/docs/08-References/Clients/metalctl/metalctl_switch_port_down.md +++ b/docs/08-References/Clients/metalctl/metalctl_switch_port_down.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_switch_port_down title: metalctl_switch_port_down -sidebar_position: 151 +sidebar_position: 2 --- ## metalctl switch port down diff --git a/docs/08-References/Clients/metalctl/metalctl_switch_port_up.md b/docs/08-References/Clients/metalctl/metalctl_switch_port_up.md index 8565f2de..d87cd22d 100644 --- a/docs/08-References/Clients/metalctl/metalctl_switch_port_up.md +++ b/docs/08-References/Clients/metalctl/metalctl_switch_port_up.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_switch_port_up title: metalctl_switch_port_up -sidebar_position: 152 +sidebar_position: 3 --- ## metalctl switch port up diff --git a/docs/08-References/Clients/metalctl/metalctl_switch_replace.md b/docs/08-References/Clients/metalctl/metalctl_switch_replace.md index 35dfd56e..879c7d27 100644 --- a/docs/08-References/Clients/metalctl/metalctl_switch_replace.md +++ b/docs/08-References/Clients/metalctl/metalctl_switch_replace.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_switch_replace title: metalctl_switch_replace -sidebar_position: 153 +sidebar_position: 10 --- ## metalctl switch replace diff --git a/docs/08-References/Clients/metalctl/metalctl_switch_ssh.md b/docs/08-References/Clients/metalctl/metalctl_switch_ssh.md index e2f11667..6381a5a0 100644 --- a/docs/08-References/Clients/metalctl/metalctl_switch_ssh.md +++ b/docs/08-References/Clients/metalctl/metalctl_switch_ssh.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_switch_ssh title: metalctl_switch_ssh -sidebar_position: 154 +sidebar_position: 11 --- ## metalctl switch ssh diff --git a/docs/08-References/Clients/metalctl/metalctl_switch_update.md b/docs/08-References/Clients/metalctl/metalctl_switch_update.md index 1a9c26ff..3fb2931e 100644 --- a/docs/08-References/Clients/metalctl/metalctl_switch_update.md +++ b/docs/08-References/Clients/metalctl/metalctl_switch_update.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_switch_update title: metalctl_switch_update -sidebar_position: 155 +sidebar_position: 12 --- ## metalctl switch update diff --git a/docs/08-References/Clients/metalctl/metalctl_tenant.md b/docs/08-References/Clients/metalctl/metalctl_tenant.md index 43c1f095..51217d74 100644 --- a/docs/08-References/Clients/metalctl/metalctl_tenant.md +++ b/docs/08-References/Clients/metalctl/metalctl_tenant.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_tenant title: metalctl_tenant -sidebar_position: 156 +sidebar_position: 17 --- ## metalctl tenant diff --git a/docs/08-References/Clients/metalctl/metalctl_tenant_apply.md b/docs/08-References/Clients/metalctl/metalctl_tenant_apply.md index 70601278..586138c2 100644 --- a/docs/08-References/Clients/metalctl/metalctl_tenant_apply.md +++ b/docs/08-References/Clients/metalctl/metalctl_tenant_apply.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_tenant_apply title: metalctl_tenant_apply -sidebar_position: 157 +sidebar_position: 1 --- ## metalctl tenant apply diff --git a/docs/08-References/Clients/metalctl/metalctl_tenant_create.md b/docs/08-References/Clients/metalctl/metalctl_tenant_create.md index 60775127..339fce5b 100644 --- a/docs/08-References/Clients/metalctl/metalctl_tenant_create.md +++ b/docs/08-References/Clients/metalctl/metalctl_tenant_create.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_tenant_create title: metalctl_tenant_create -sidebar_position: 158 +sidebar_position: 2 --- ## metalctl tenant create diff --git a/docs/08-References/Clients/metalctl/metalctl_tenant_delete.md b/docs/08-References/Clients/metalctl/metalctl_tenant_delete.md index 84d434d0..fd80f9f8 100644 --- a/docs/08-References/Clients/metalctl/metalctl_tenant_delete.md +++ b/docs/08-References/Clients/metalctl/metalctl_tenant_delete.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_tenant_delete title: metalctl_tenant_delete -sidebar_position: 159 +sidebar_position: 3 --- ## metalctl tenant delete diff --git a/docs/08-References/Clients/metalctl/metalctl_tenant_describe.md b/docs/08-References/Clients/metalctl/metalctl_tenant_describe.md index 681f25ad..4cf984ac 100644 --- a/docs/08-References/Clients/metalctl/metalctl_tenant_describe.md +++ b/docs/08-References/Clients/metalctl/metalctl_tenant_describe.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_tenant_describe title: metalctl_tenant_describe -sidebar_position: 160 +sidebar_position: 4 --- ## metalctl tenant describe diff --git a/docs/08-References/Clients/metalctl/metalctl_tenant_edit.md b/docs/08-References/Clients/metalctl/metalctl_tenant_edit.md index 78578de6..aaa17901 100644 --- a/docs/08-References/Clients/metalctl/metalctl_tenant_edit.md +++ b/docs/08-References/Clients/metalctl/metalctl_tenant_edit.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_tenant_edit title: metalctl_tenant_edit -sidebar_position: 161 +sidebar_position: 5 --- ## metalctl tenant edit diff --git a/docs/08-References/Clients/metalctl/metalctl_tenant_list.md b/docs/08-References/Clients/metalctl/metalctl_tenant_list.md index 653cc168..b847c89a 100644 --- a/docs/08-References/Clients/metalctl/metalctl_tenant_list.md +++ b/docs/08-References/Clients/metalctl/metalctl_tenant_list.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_tenant_list title: metalctl_tenant_list -sidebar_position: 162 +sidebar_position: 6 --- ## metalctl tenant list diff --git a/docs/08-References/Clients/metalctl/metalctl_tenant_update.md b/docs/08-References/Clients/metalctl/metalctl_tenant_update.md index f3ccffaa..a0e1e9da 100644 --- a/docs/08-References/Clients/metalctl/metalctl_tenant_update.md +++ b/docs/08-References/Clients/metalctl/metalctl_tenant_update.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_tenant_update title: metalctl_tenant_update -sidebar_position: 163 +sidebar_position: 7 --- ## metalctl tenant update diff --git a/docs/08-References/Clients/metalctl/metalctl_update.md b/docs/08-References/Clients/metalctl/metalctl_update.md index 58e0e06b..7f7959c6 100644 --- a/docs/08-References/Clients/metalctl/metalctl_update.md +++ b/docs/08-References/Clients/metalctl/metalctl_update.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_update title: metalctl_update -sidebar_position: 164 +sidebar_position: 18 --- ## metalctl update diff --git a/docs/08-References/Clients/metalctl/metalctl_update_check.md b/docs/08-References/Clients/metalctl/metalctl_update_check.md index 72959973..6ea38746 100644 --- a/docs/08-References/Clients/metalctl/metalctl_update_check.md +++ b/docs/08-References/Clients/metalctl/metalctl_update_check.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_update_check title: metalctl_update_check -sidebar_position: 165 +sidebar_position: 1 --- ## metalctl update check diff --git a/docs/08-References/Clients/metalctl/metalctl_update_do.md b/docs/08-References/Clients/metalctl/metalctl_update_do.md index 2e78389e..93f650ca 100644 --- a/docs/08-References/Clients/metalctl/metalctl_update_do.md +++ b/docs/08-References/Clients/metalctl/metalctl_update_do.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_update_do title: metalctl_update_do -sidebar_position: 166 +sidebar_position: 2 --- ## metalctl update do diff --git a/docs/08-References/Clients/metalctl/metalctl_version.md b/docs/08-References/Clients/metalctl/metalctl_version.md index 5f0c6f0b..959315f7 100644 --- a/docs/08-References/Clients/metalctl/metalctl_version.md +++ b/docs/08-References/Clients/metalctl/metalctl_version.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_version title: metalctl_version -sidebar_position: 167 +sidebar_position: 19 --- ## metalctl version diff --git a/docs/08-References/Clients/metalctl/metalctl_vpn.md b/docs/08-References/Clients/metalctl/metalctl_vpn.md index 0f454201..8f7f2333 100644 --- a/docs/08-References/Clients/metalctl/metalctl_vpn.md +++ b/docs/08-References/Clients/metalctl/metalctl_vpn.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_vpn title: metalctl_vpn -sidebar_position: 168 +sidebar_position: 20 --- ## metalctl vpn diff --git a/docs/08-References/Clients/metalctl/metalctl_vpn_key.md b/docs/08-References/Clients/metalctl/metalctl_vpn_key.md index f44f9afd..fb9a73a0 100644 --- a/docs/08-References/Clients/metalctl/metalctl_vpn_key.md +++ b/docs/08-References/Clients/metalctl/metalctl_vpn_key.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_vpn_key title: metalctl_vpn_key -sidebar_position: 169 +sidebar_position: 1 --- ## metalctl vpn key diff --git a/docs/08-References/Clients/metalctl/metalctl_whoami.md b/docs/08-References/Clients/metalctl/metalctl_whoami.md index 64e33d66..c1c8f323 100644 --- a/docs/08-References/Clients/metalctl/metalctl_whoami.md +++ b/docs/08-References/Clients/metalctl/metalctl_whoami.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_whoami title: metalctl_whoami -sidebar_position: 170 +sidebar_position: 21 --- ## metalctl whoami diff --git a/docs/08-References/Deployment/metal-images/ARCHITECTURE.md b/docs/08-References/Deployment/metal-images/ARCHITECTURE.md index 0d80f385..e86b9dd2 100644 --- a/docs/08-References/Deployment/metal-images/ARCHITECTURE.md +++ b/docs/08-References/Deployment/metal-images/ARCHITECTURE.md @@ -1,7 +1,7 @@ --- slug: /references/ARCHITECTURE title: ARCHITECTURE -sidebar_position: 3 +sidebar_position: 1 --- # Architectural Decisions @@ -17,35 +17,12 @@ sidebar_position: 3 * build an image based on the published docker images of OS vendors * add necessary packages and services in a Dockerfile for the OS to provide: * sudo functionality - * a SSH-Server - * the FRR-Suite for BGP (the servers act as a BGP router/speaker) - * yq for reading YAML-Files -* provide a `install.sh` file within the image that will be invoked by the `metal-hammer` - * writes the `/etc/fstab` based on the UUIDs of the connected disks - * setup UEFI-Boot - * create an OS user with sudo rights - * set the SSH public keys that are allowed to log into the system - * sets the hostname - * sets the network configuration of the server (IP-Addresses at loopback device, ASN for BGP) - * sets the token used for phoning home to the metal-api - -The `install.sh` has to be implemented for every OS. Between `install.sh` and the `metal-hammer` component exists this contract: - -* the `metal-hammer` writes the file `/etc/metal/install.yaml` which contains data, that is not known during build time and can be customized by users of the `metal-api` - - ```yaml - --- - hostname: some - ipaddress: 10.0.0.2/32 - asn: 420000001 - sshpublickeys: "" - ``` - -* `install.sh` is expected to create the file `/etc/metal/boot-info.yaml` which contains data, that the `metal-hammer` will use for the `kexec-reboot` of the server. - - ```yaml - --- - initrd: - cmdline: - kernel: - ``` + * an SSH-Server + * the [FRR-Suite](https://frrouting.org/) for BGP (the servers act as a BGP router/speaker) + * [ignition](https://www.flatcar.org/docs/latest/provisioning/ignition/) for userdata execution + * `mdadm` for raid fsl configuration + * `lvm` for volume group fsl provisioning + * `grub` for bootloader installation + * `timesyncd` for NTP time synchronization +* these services will be configured by the [os-installer](https://github.com/metal-stack/os-installer) invoked during machine provisioning by the metal-hammer +* for out-of-tree custom images, build owners might want to provide a `/etc/metal/os-installer.yaml` file within the image that can provide special instructions for the os-installer diff --git a/docs/08-References/Deployment/metal-images/IMAGE_STORE.md b/docs/08-References/Deployment/metal-images/IMAGE_STORE.md index 347315a7..a0e7ce51 100644 --- a/docs/08-References/Deployment/metal-images/IMAGE_STORE.md +++ b/docs/08-References/Deployment/metal-images/IMAGE_STORE.md @@ -1,7 +1,7 @@ --- slug: /references/IMAGE_STORE title: IMAGE_STORE -sidebar_position: 3 +sidebar_position: 0 --- # Image store @@ -10,12 +10,12 @@ The metal-images tarballs are stored on . The ta The actual directory layout should look like: ```bash -////img.tar.lz4 -////img.tar.lz4.md5 -////packages.txt +///img.tar.lz4 +///img.tar.lz4.md5 +///packages.txt ``` -Where `` is `/` for the master branch and `/${CI_COMMIT_REF_SLUG}/` for branches and merge requests. +Where `` is `stable` for the master branch, `` for releases and `pull_requests/-` for pull requests. `` is the name of the os in use, some images like `firewall` are derived from another os image (in this case the `ubuntu` image). diff --git a/docs/08-References/Deployment/mini-lab/assets/overview.drawio.svg b/docs/08-References/Deployment/mini-lab/assets/overview.drawio.svg index 227918ec..377bfcfb 100644 --- a/docs/08-References/Deployment/mini-lab/assets/overview.drawio.svg +++ b/docs/08-References/Deployment/mini-lab/assets/overview.drawio.svg @@ -1,8 +1,8 @@ linux-desktop linux-desktop - containerlab + containerlab containerlab - kind-cluster + kind-cluster kind-cluster metal control plane metal control plane @@ -16,7 +16,7 @@ leaf02 metal-core metal-core - masterdata-api + masterdata-api masterdata-api auditing @@ -34,21 +34,23 @@ masterdata-... mini-lab mini-lab - docker network 172.17.0.1/16 - docker network 172.17.0.1/16 - Ingress-Controller (NGINX) - Ingress-Controller (... - machine01 + docker network 172.42.0.1/16 + docker network 172.42.0.1/16 + Ingress-Controller (NGINX) + Ingress-C... + machine01 machine01 exit exit leaf01 leaf01 - metal-core + metal-core metal-core veth link veth link - + metal-stack Gateway (Envoy Gateway) + metal-stack Gate... + Text is not SVG - cannot display diff --git a/docs/08-References/Deployment/mini-lab/assets/overview.png b/docs/08-References/Deployment/mini-lab/assets/overview.png deleted file mode 100644 index 43b42fae..00000000 Binary files a/docs/08-References/Deployment/mini-lab/assets/overview.png and /dev/null differ diff --git a/docs/08-References/Deployment/mini-lab/mini-lab.md b/docs/08-References/Deployment/mini-lab/mini-lab.md index f1a0c304..c1546918 100644 --- a/docs/08-References/Deployment/mini-lab/mini-lab.md +++ b/docs/08-References/Deployment/mini-lab/mini-lab.md @@ -20,6 +20,9 @@ This project can also be used as a template for writing your own metal-stack dep - [Known Limitations](#known-limitations) - [Try it out](#try-it-out) - [Power management](#power-management) +- [Development](#development) + - [Release vector](#release-vector) + - [Using local checkouts of dependencies](#using-local-checkouts-of-dependencies) - [Flavors](#flavors) - [Network topology](#network-topology) - [V2 Quickstart](#v2-quickstart) @@ -197,7 +200,7 @@ make power-- ``` ## Development -If you want to contribute to the _metal-stack_ project, you can use the mini-lab as a local development environment. It allows you to quickly test changes to the _metal-stack_ components without needing any external clusters or hardware. +If you want to contribute to the _metal-stack_ project, you can use the mini-lab as a local development environment. It allows you to quickly test changes to the _metal-stack_ components without needing any external clusters or hardware. You can also use it to test changes to the Ansible roles and modules used by the _metal-stack_. ### Release vector @@ -215,7 +218,7 @@ Further overrides can be looked up in `metal-roles` where the mapping is defined ### Using local checkouts of dependencies -By default, the `mini-lab` runs with pre-packaged Ansible roles and modules. +By default, the `mini-lab` runs with pre-packaged Ansible roles and modules. If you want to use local checkouts of dependencies for development, you must start the `mini-lab` with `DEV=true`: ```bash @@ -278,5 +281,5 @@ Password: Gerrit.Guest123! Zitadel Admin: -User: admin@metal-stack.zitadel.172.17.0.1.nip.io +User: admin@metal-stack.auth.172.17.0.1.nip.io Password: Password1! diff --git a/docs/08-References/Gardener/gardener-extension-ontap/README.md b/docs/08-References/Gardener/gardener-extension-ontap/README.md new file mode 100644 index 00000000..6fdc6f12 --- /dev/null +++ b/docs/08-References/Gardener/gardener-extension-ontap/README.md @@ -0,0 +1,68 @@ +--- +slug: /references/README +title: README +sidebar_position: 0 +--- + +# Gardener Extension for ONTAP Documentation + +> Technical background documentation for the extension, ONTAP, and their integration into metal-stack. + +These pages supplement the concise project overview and development instructions in the [repository README](./README.md). They can be read independently as topic-based reference material. + +--- + +## Topics + +| Topic | Content | Start here | +|-------|---------|------------| +| **NetApp ONTAP** | ONTAP concepts, HA pairs, MetroCluster, SVMs, aggregates, LIFs, NVMe/TCP, Trident, and the PVC data path | [`./././ontap-storage.md`](ontap-storage.md) | +| **Gardener Extension for ONTAP** | Activation, inputs, reconciliation, SVM and credential lifecycle, ManagedResources, shoot webhook, and cleanup boundaries | [`./././gardener-extension-ontap.md`](gardener-extension-ontap.md) | + +--- + +## Recommended Reading Paths + +### I want to understand the storage architecture + +1. [`ONTAP Storage`](ontap-storage.md) — from the physical MetroCluster to a project-specific SVM +2. [`Gardener Extension for ONTAP`](gardener-extension-ontap.md) — how the architecture is automated for a shoot cluster + +### I am investigating a provisioning failure + +1. [`Gardener Extension for ONTAP: Reconciliation`](gardener-extension-ontap.md#reconciliation) +2. [`Gardener Extension for ONTAP: State Inspection`](gardener-extension-ontap.md#state-inspection) +3. [`ONTAP Storage: Management and Data Paths`](ontap-storage.md#management-and-data-paths) + +### I am investigating a mount or I/O failure + +1. [`ONTAP Storage: From a PVC to a Volume`](ontap-storage.md#from-a-pvc-to-a-volume) +2. [`ONTAP Storage: Management and Data Paths`](ontap-storage.md#management-and-data-paths) +3. [`Gardener Extension for ONTAP: Shoot Webhook`](gardener-extension-ontap.md#shoot-webhook-and-node-preparation) + +### I am planning maintenance or cleanup + +1. [`ONTAP Storage: Failure Behavior`](ontap-storage.md#failure-behavior) +2. [`Gardener Extension for ONTAP: Delete Lifecycle`](gardener-extension-ontap.md#delete-lifecycle-and-responsibility-boundary) + +--- + +## System Overview + + + +The components have distinct responsibilities: + +| Component | Responsibility | +|-----------|----------------| +| **Cloud API / Metal API** | Detects the ONTAP-enabled cluster configuration and reserves project-specific LIF addresses. | +| **Gardener extension** | Establishes the desired ONTAP and shoot state. | +| **ONTAP MetroCluster** | Stores and replicates data and provides SVMs and network endpoints. | +| **Trident** | Translates Kubernetes storage operations into ONTAP operations. | +| **Kubernetes worker** | Connects the remote block device over NVMe/TCP and mounts it into the workload. | + +--- + +## Documentation Structure + +[`gardener-extension-ontap.md`](gardener-extension-ontap.md) documents the behavior of this repository and links to the relevant source paths. [`ontap-storage.md`](ontap-storage.md) describes the wider platform and storage context in which the extension operates. diff --git a/docs/08-References/Gardener/gardener-extension-ontap/assets/ontap-provisioning-and-data-paths.png b/docs/08-References/Gardener/gardener-extension-ontap/assets/ontap-provisioning-and-data-paths.png new file mode 100644 index 00000000..6343432a Binary files /dev/null and b/docs/08-References/Gardener/gardener-extension-ontap/assets/ontap-provisioning-and-data-paths.png differ diff --git a/docs/08-References/Gardener/gardener-extension-ontap/gardener-extension-ontap.md b/docs/08-References/Gardener/gardener-extension-ontap/gardener-extension-ontap.md index 68540263..b8b79502 100644 --- a/docs/08-References/Gardener/gardener-extension-ontap/gardener-extension-ontap.md +++ b/docs/08-References/Gardener/gardener-extension-ontap/gardener-extension-ontap.md @@ -10,12 +10,17 @@ This repository contains the Gardener extension controller for managing the NetA ## Table of Contents +- [Documentation](#documentation) - [Prerequisites](#prerequisites) - [Development Workflow](#development-workflow) - [Test Environment Setup](#test-environment-setup) - [Known Issues](#known-issues) - [TODO List](#todo-list) +## Documentation + +Architecture, reconciliation, credential lifecycle, data paths, and troubleshooting are documented in the [documentation index](./README.md). + ## Prerequisites - A local Gardener setup @@ -310,4 +315,3 @@ spec: - ✅ = Resource exists and is correct - ❌ = Resource missing or not functional - diff --git a/docs/08-References/Gardener/gardener-extension-ontap/ontap-storage.md b/docs/08-References/Gardener/gardener-extension-ontap/ontap-storage.md new file mode 100644 index 00000000..fbb7a998 --- /dev/null +++ b/docs/08-References/Gardener/gardener-extension-ontap/ontap-storage.md @@ -0,0 +1,372 @@ +--- +slug: /references/ontap-storage +title: ontap-storage +sidebar_position: 1 +--- + +# ONTAP Storage + +> How NetApp ONTAP works as a MetroCluster and how it is provided to Kubernetes through Gardener and Trident. + +--- + +## Context + +ONTAP is the platform's persistent, network-attached block storage system. Kubernetes workers do not hold the volume locally. They connect to a block device in the ONTAP system over NVMe/TCP. + +This is the essential difference from local LVM storage: + +| Property | ONTAP | Local LVM | +|------------------------|--------------------------------------|--------------------------------------| +| Storage location | External storage system | Local worker disk | +| Access | NVMe/TCP over the network | Directly on the node | +| Node loss | Data remains in the storage system | Local data can be lost with the node | +| Site protection | Synchronous MetroCluster replication | No cross-site protection | +| Kubernetes integration | NetApp Trident CSI | CSI Driver LVM | + +This page explains ONTAP and the end-to-end data path. The automation is documented separately in [`./././gardener-extension-ontap.md`](gardener-extension-ontap.md). + +--- + +## ONTAP Concepts and Object Model + +ONTAP separates physical capacity, tenants, network endpoints, and the volumes used by Kubernetes. The following objects are important for understanding the platform: + +| Term | Meaning | +|--------------------------------|---------------------------------------------------------------------------------------------| +| **Node / controller** | Physical ONTAP instance that provides disks, network ports, and storage services | +| **HA pair** | Two controllers at one site that can take over for each other if a node fails | +| **ONTAP cluster** | Administrative grouping of the local HA pair | +| **MetroCluster** | Cross-site grouping of two ONTAP clusters with synchronous replication | +| **Aggregate** | ONTAP capacity pool built from the physical disks of a node | +| **SVM** | Storage Virtual Machine; the logical and administrative tenant boundary for a Metal project | +| **Volume** | Logical storage area within an SVM that draws capacity from its assigned aggregates | +| **LIF** | Logical Interface; an IP-based SVM interface for management or data access | +| **NVMe subsystem / namespace** | ONTAP objects through which a block device is made available to an NVMe host | +| **Trident backend** | Connection between Trident in the shoot and the project-specific SVM | + +The simplified hierarchy is: + +```text +MetroCluster +├── ONTAP cluster, site A +│ ├── Controller A +│ ├── Controller B +│ └── Aggregates +└── ONTAP cluster, site B + ├── Controller A + ├── Controller B + └── Aggregates + +Project SVM +├── Management LIF +├── Data LIF 1 +├── Data LIF 2 +├── Volumes +└── NVMe configuration +``` + +An SVM is not separate hardware and does not own exclusive disks. It is a logical view of the cluster resources assigned to it. In this integration, an SVM belongs to a Metal project and can be used by multiple shoots in that project. + +--- + +## Physical Topology + +A MetroCluster consists of two ONTAP clusters at separate sites: + +| Location | Topology | Role | +|----------------------|------------------------------------------|-------------------------------| +| Site A | Two ONTAP controllers as a local HA pair | One MetroCluster site | +| Site B | Two ONTAP controllers as a local HA pair | Second MetroCluster site | +| Third failure domain | Optional ONTAP Mediator | Quorum and switchover support | + +The controllers at a site are connected through a local cluster interconnect. The two sites communicate through redundant inter-site links. These links carry synchronous replication and cross-site MetroCluster metadata. Bandwidth, switch models, and specific network segments depend on the deployment. + +Several management and access networks exist separately: + +- controller and cluster management for administration and the ONTAP REST API, +- intercluster communication between the storage systems, +- BGP-routed SVM LIFs for Trident and the Kubernetes workers, +- BMC access for out-of-band administration. + +This separation is important: Kubernetes data traffic does not use the global cluster management addresses, and MetroCluster replication does not pass through the shoot cluster. + +--- + +## How ONTAP MetroCluster Works + +A MetroCluster spans two sites. At each site, two controllers form a local HA pair. MetroCluster replicates data synchronously between the sites. + +| Layer | Responsibility | +|--------------------------------|--------------------------------------------------------------| +| **Local HA pair** | Handles the failure of a single controller. | +| **MetroCluster between sites** | Maintains a synchronous copy of the data at the second site. | +| **ONTAP Mediator** | Supports the switchover decision if an entire site fails. | + +A project-specific Storage Virtual Machine (SVM) is active at one site. The corresponding MetroCluster sync destination with the `-mc` suffix exists at the other site. Applications do not write to both sides simultaneously: they access the active SVM while ONTAP performs synchronous replication to the other side. + +### Local HA and Cross-Site Replication + +Local HA and MetroCluster address different failure classes: + +- If one controller fails, its partner in the local HA pair takes over. +- If an entire site fails, the previously passive MetroCluster site can take over the storage functions. +- Until a switchover occurs, exactly one side of the SVM remains active and the other side remains the sync destination. + +A successful synchronous write has reached both MetroCluster sites. For replicated writes, the architecture therefore targets an RPO of 0: an acknowledged write should not be missing after the loss of a site. This protects the stored blocks, but it does not replace recovery of the Kubernetes and network paths. + +### ONTAP Mediator + +The ONTAP Mediator runs separately from the two storage sites. It observes both sides and supports the decision to perform an automatic switchover when an entire site fails. This helps prevent both sides from becoming active simultaneously. + +The Mediator does not transfer application data and is not in the I/O path. If the Mediator is unavailable, some failure scenarios can require a manual switchover. + +The active MetroCluster site depends on the current state. When creating a new project SVM, the Gardener extension selects the ONTAP cluster with the lower current total number of volumes. + +--- + +## Failure Behavior + +Three separate layers must work together during failover: + +1. ONTAP performs controller takeover or a MetroCluster switchover. +2. The management and data LIFs must be reachable through the network at the active site. +3. Trident and the Linux NVMe/TCP stack reconnect the volumes in the shoot cluster. + +MetroCluster protects the data and makes it available at the second site. Kubernetes, Trident, and the network then restore workload access. + +| Failure | Primary response | What matters next | +|----------------------------|-----------------------------------------|-----------------------------------------------------------------| +| Single ONTAP controller | Local partner takes over | LIF and NVMe/TCP connections must remain reachable | +| Entire storage site | MetroCluster switchover | BGP routing, LIF reachability, and Trident reconnect | +| Kubernetes worker | Workload starts on another worker | The new worker establishes an NVMe/TCP connection to the volume | +| Management path disruption | Existing I/O can continue independently | New volumes, expansion, and snapshot operations can fail | +| Data path disruption | Worker cannot reach the block device | Inspect the data LIF, TCP 4420, and NVMe session | + +A switchover therefore does not guarantee an interruption-free application. ONTAP, routing, CSI reconnection, Kubernetes scheduling, and the application itself all contribute to the actual recovery time. + +MetroCluster also does not switch automatically to the other site solely because latency has increased. Latency is an operational and diagnostic condition, not an automatic switchover trigger. + +--- + +## SVMs as the Project Boundary + +The SVM is the central handoff point between the platform and ONTAP: + +- It contains the project-specific network endpoints. +- It has its own NVMe configuration. +- It has its own users and roles. +- Trident manages volumes only within this SVM. +- It can draw capacity from every aggregate assigned to it. + +The Gardener extension assigns all available aggregates at the selected ONTAP site to a new SVM. The aggregates remain cluster resources and are not reserved exclusively for the project. If another aggregate is added later, reconciliation can add it to the SVM assignment. + +### Project-Specific, Not Shoot-Specific + +The Cloud API reserves LIF addresses for the Metal project. The extension also derives the SVM name from the project ID. The resulting model is: + +```text +Metal project + | + +--> one project SVM + | +--> one management LIF + | +--> two data LIFs + | + +--> Shoot A --> dedicated SVM user + dedicated Trident backend + | + +--> Shoot B --> dedicated SVM user + dedicated Trident backend +``` + +This model avoids creating an SVM for every shoot. Their lifecycles are not identical, however: a shoot can be deleted while another shoot still requires the project SVM. + +--- + +## How We Use ONTAP + +ONTAP is not provisioned directly for each Kubernetes PVC. Instead, an automated chain connects the project configuration to the mounted block device: + +```text +Metal project + | + v +1 management LIF + 2 data LIFs + | + v +Gardener extension in the seed + | + +--> project-specific SVM in ONTAP + | + +--> Trident + backend + StorageClasses in the shoot + | + v + Application PVC + | + v + ONTAP volume over NVMe/TCP +``` + +### Project-Specific SVM + +The Cloud API reserves three BGP-routed `/32` addresses for an ONTAP-enabled project: + +- one management LIF for ONTAP operations, +- two data LIFs for NVMe/TCP traffic. + +The Gardener extension reads the project ID and these IP addresses from the shoot configuration. If the SVM is missing, the extension creates it, enables NVMe, assigns the ONTAP aggregates, and creates the LIFs. If the SVM already exists, the extension inspects and completes its state. + +The SVM belongs to the Metal project and can be used by multiple ONTAP-enabled shoot clusters in that project. The ONTAP user and corresponding credential Secret are shoot-specific. + +This separation provides two security boundaries: + +- The project determines which SVM contains its volumes. +- Each shoot receives only its own Trident credentials. + +The complete reconciliation and credential logic is described in [`Gardener Extension for ONTAP`](gardener-extension-ontap.md). + +### Trident in the Shoot Cluster + +The extension deploys NetApp Trident and the required resources into the shoot as Gardener `ManagedResource` objects. These include: + +- the Trident operator, controller, and node plugin, +- `TridentBackendConfig` for the project-specific SVM, +- the shoot-specific credential Secret, +- the `ontap-gold` and `ontap-encrypted` StorageClasses, +- snapshot resources, +- a network policy for the management and data LIFs when the `firewall` namespace exists. + +The backend uses the Trident `ontap-san` driver with `sanType: nvme`. A shoot webhook also prepares the Trident node DaemonSet so the `nvme-tcp` kernel module is available on every worker. + +### Management and Data Paths + +Runtime communication is deliberately separated: + +| Source | Destination | Protocol | Purpose | +|---------------------------------|--------------------------|---------------------|------------------------------------------| +| Gardener extension in the seed | ONTAP cluster management | HTTPS / TCP 443 | Manage SVMs, LIFs, aggregates, and users | +| Trident controller in the shoot | SVM management LIF | HTTPS / TCP 443 | Manage volumes and snapshots | +| Kubernetes worker | SVM data LIFs | NVMe/TCP / TCP 4420 | Workload block I/O | + +The management LIF does not carry application data. Conversely, the data LIFs are not used for administrative ONTAP operations. This separation is also the most important starting point for troubleshooting. + +### Why One Management LIF and Two Data LIFs? + +The management LIF provides a stable, project-specific API endpoint for Trident. Trident therefore does not need to use the global ONTAP cluster administrative addresses. + +The data LIFs provide the SVM's NVMe/TCP endpoints. Two LIFs permit multiple network paths and distribute the endpoints across the ONTAP nodes. They are not a substitute for MetroCluster: LIF redundancy protects the access path, while MetroCluster protects the storage site and data copy. + +In production, the three SVM LIFs are announced through BGP as `/32` VIPs. The Trident controller and workers can therefore reach the currently routed endpoints without knowing the internal ONTAP management networks at either site. + +### Which Component Uses Which Address? + +- The Gardener extension connects to the ONTAP cluster management addresses because it manages privileged objects such as SVMs and users. +- Trident connects to the project-specific management LIF because it manages only that SVM's backend. +- The worker connects to the data LIFs because the NVMe/TCP I/O terminates there. + +If a PVC cannot be created, inspect the management path first. If the volume exists but cannot be mounted, focus on the data path and the node. + +### From a PVC to a Volume + +1. An application creates a PVC with `storageClassName: ontap-gold` or `ontap-encrypted`. +2. Kubernetes calls the Trident CSI controller. +3. Trident selects the appropriate storage pool and creates the volume through the SVM management LIF. +4. The Trident node plugin connects the worker to a data LIF over NVMe/TCP. +5. The block device is made available on the worker, formatted with `ext4`, and mounted into the pod. +6. With `ontap-encrypted`, the device is additionally opened with LUKS2 before it is mounted. + +Kubernetes ultimately sees a `PersistentVolume`, and the pod sees a regular mount. Trident and ONTAP encapsulate the SVM, ONTAP volume, NVMe configuration, and session details. + +A simple unencrypted PVC looks like this: + +```yaml +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: app-data +spec: + storageClassName: ontap-gold + accessModes: + - ReadWriteOnce + resources: + requests: + storage: 10Gi +``` + +| StorageClass | Use | +|-------------------|--------------------------------------------------------------------------------------------| +| `ontap-gold` | Thin-provisioned block storage with `ext4`; volume expansion is allowed. | +| `ontap-encrypted` | Client-side LUKS2-encrypted block storage; the application provides the passphrase Secret. | + +> **Important:** With `ontap-encrypted`, ONTAP sees only encrypted blocks. If the LUKS Secret is lost, the data cannot be recovered. + +### Encrypted Storage + +The passphrase is stored in a Secret named `storage-encryption-key` in the PVC namespace: + +```yaml +apiVersion: v1 +kind: Secret +metadata: + name: storage-encryption-key + namespace: application +stringData: + luks-passphrase-name: key-a + luks-passphrase: +``` + +The StorageClass references this Secret for node-stage and node-expand operations. Encryption takes place on the Kubernetes worker: + +```text +Application + | + v +ext4 file system + | + v +LUKS2 device + | + v +NVMe/TCP + | + v +ONTAP sees encrypted blocks +``` + +Secret backup, access control, and tested passphrase rotation therefore belong to the application lifecycle rather than the ONTAP MetroCluster lifecycle. + +### Volume Expansion and Snapshots + +Both StorageClasses allow volume expansion. During expansion, Trident first enlarges the backend volume. The block device, LUKS layer when applicable, and file system are then expanded on the worker. + +The extension also provides the `ontap-snapshot` `VolumeSnapshotClass`. Its `deletionPolicy` is `Delete`: deleting the Kubernetes snapshot object also deletes the corresponding backend snapshot. + +Snapshots and MetroCluster replication solve different problems. MetroCluster protects against storage site failure. A snapshot provides an earlier data state within the storage lifecycle. + +--- + +## The Most Important Operational Boundary + +Deleting a shoot cluster does not automatically remove the project-specific SVM, its LIFs, or the ONTAP volumes. This is intentional because other shoots in the project can still use the SVM. Complete project cleanup must therefore happen separately and in a controlled order. + +A safe project cleanup must answer at least these questions: + +1. Does an ONTAP-enabled shoot still exist in the project? +2. Are any volumes or snapshots still required? +3. Can the project SVM, including its NVMe configuration and LIFs, be removed? +4. Has the MetroCluster sync destination also been cleaned up? +5. Can the three project-specific IP addresses then be released? + +IP addresses must not be released while LIFs with those addresses still exist in ONTAP. Otherwise, orphaned ONTAP objects can block later reuse of an address. + +--- + +## Summary + +- MetroCluster replicates data synchronously between two sites; local HA pairs additionally protect against controller failures. +- Each Metal project has one ONTAP SVM with one management LIF and two data LIFs. +- The Gardener extension manages the ONTAP-side and shoot-side resources. +- Trident translates Kubernetes PVCs into ONTAP volumes. +- Management uses HTTPS on port 443; block I/O uses NVMe/TCP on port 4420. + +--- + +> Back to the [`documentation index`](./README.md) · Implementation details: [`gardener-extension-ontap.md`](gardener-extension-ontap.md) diff --git a/docs/08-References/Kubernetes/cluster-api-provider-metal-stack/assets/overview-kamaji.drawio.svg b/docs/08-References/Kubernetes/cluster-api-provider-metal-stack/assets/overview-kamaji.drawio.svg new file mode 100644 index 00000000..e69de29b diff --git a/docs/08-References/Storage/duros-controller/MULTITENANCY.md b/docs/08-References/Storage/duros-controller/MULTITENANCY.md index 8018d3a7..1d2b3dd6 100644 --- a/docs/08-References/Storage/duros-controller/MULTITENANCY.md +++ b/docs/08-References/Storage/duros-controller/MULTITENANCY.md @@ -1,7 +1,7 @@ --- slug: /references/MULTITENANCY title: MULTITENANCY -sidebar_position: 2 +sidebar_position: 0 --- # Multi tenancy with lightbits storage @@ -20,7 +20,7 @@ Multi tenancy in metal-stack and gardener are based on projects. In metal-stack, Lightbits storage has also the notion of a project, once a cluster is created, a new project is created in the lightos storage API, the project there matches the project from the gardener/metal-stack perspective. For every cluster an authentication token in the JWT format is created, this token is able to create/update/list/delete volumes in the lightos cluster in the given project, resp. lightos project. For every kubernetes cluster, even in the same project, an individual JWT token is created. The token is also set to have a 8 day validity, 1 day before the token will get invalid and the cluster still exists, a new token is issued. -The duros-controller is responsible to create such tokens, it is deployed in the seed's shoot namespace (find details on gardener architecture [here](../../../05-Concepts/01-architecture.mdx)). This namespace is fully managed by the provider and invisible for the cluster user. Once the token has been created, the token is stored in a secret in the actual user cluster alongside with the deployment of the lightbits CSI driver and storage classes. This CSI driver will then be responsible to create/update/delete volumes based on the manifests deployed in the cluster. +The duros-controller is responsible to create such tokens, it is deployed in the seed's shoot namespace (find details on gardener architecture [here](./architecture.md)). This namespace is fully managed by the provider and invisible for the cluster user. Once the token has been created, the token is stored in a secret in the actual user cluster alongside with the deployment of the lightbits CSI driver and storage classes. This CSI driver will then be responsible to create/update/delete volumes based on the manifests deployed in the cluster. ```bash k get sc @@ -79,6 +79,7 @@ metadata: namespace: kube-system resourceVersion: "1837602" uid: 406c3583-d4cd-4a0b-8615-3a6f2b9b7577 + ``` ## Lightbits and NVMEoTCP @@ -125,4 +126,4 @@ nqn.2019-09.com.lightbitslabs:host:shoot--pd76mr--inttest0-group-0-845b8-49r7x.n ## Further improvements -In the upcoming lightos release the performance aspects of multi tenancy are addressed. This is achieved that it will be possible to cap the maximum throughput possible per volume. This will ensure that no single tenant is able to saturate the whole lightos cluster and impact other tenants using this lightos cluster. +In the upcoming lightos release the performance aspects of multi tenancy are addressed. This is achieved that it will be possible to cap the maximum throughput possible per volume. This will ensure that no single tenant is able to saturate the whole lightos cluster and impact other tenants using this lightos cluster. \ No newline at end of file diff --git a/scripts/components.json b/scripts/components.json index 935cf6ac..59addd67 100644 --- a/scripts/components.json +++ b/scripts/components.json @@ -18,7 +18,7 @@ "components": [ { "name": "backup-restore-sidecar", - "releasePath": "", + "releasePath": "docker-images.metal-stack.generic.backup-restore-sidecar", "repo": "metal-stack/backup-restore-sidecar", "branch": "master", "tag": "", @@ -48,7 +48,7 @@ "releasePath": "docker-images.metal-stack.control-plane.tenant-apiserver.tag", "repo": "metal-stack/tenant-apiserver", "branch": "main", - "tag": "v0.1.0", + "tag": "v0.1.1", "position": 4, "withDocs": false }, @@ -66,9 +66,9 @@ "releasePath": "docker-images.metal-stack.control-plane.metal-apiserver.tag", "repo": "metal-stack/metal-apiserver", "branch": "main", - "tag": "v0.7.1", + "tag": "v0.9.1", "position": 6, - "withDocs": true + "withDocs": false }, { "name": "metal-console", @@ -116,7 +116,7 @@ "releasePath": "binaries.metal-stack.metal-hammer.version", "repo": "metal-stack/metal-hammer", "branch": "main", - "tag": "v0.15.0", + "tag": "v0.15.2", "position": 4, "withDocs": false }, @@ -157,7 +157,7 @@ "releasePath": "projects.metal-stack.mini-lab.version", "repo": "metal-stack/mini-lab", "branch": "master", - "tag": "v0.6.0", + "tag": "v0.7.0", "position": 3, "withDocs": false } @@ -280,7 +280,7 @@ "releasePath": "docker-images.metal-stack.gardener.gardener-extension-ontap.tag", "repo": "metal-stack/gardener-extension-ontap", "branch": "main", - "tag": "v0.2.20", + "tag": "v0.2.21", "position": 3, "withDocs": false }, @@ -295,7 +295,7 @@ }, { "name": "os-metal-extension", - "releasePath": "", + "releasePath": "docker-images.metal-stack.gardener.os-metal-extension", "repo": "metal-stack/os-metal-extension", "branch": "master", "tag": "", @@ -321,7 +321,7 @@ "releasePath": "docker-images.metal-stack.kubernetes.duros-controller.tag", "repo": "metal-stack/duros-controller", "branch": "main", - "tag": "v0.12.1", + "tag": "v0.12.2", "position": 2, "withDocs": false } diff --git a/scripts/fetch-readmes.js b/scripts/fetch-readmes.js index da228404..66cf2f85 100644 --- a/scripts/fetch-readmes.js +++ b/scripts/fetch-readmes.js @@ -1,10 +1,12 @@ const fs = require("fs"); const path = require("path"); const axios = require("axios"); +const nodeurl = require("url"); import YAML from 'yaml' const outputBase = path.resolve(__dirname, "../docs/08-References"); +let visitedDocs = new Set(); function isValidVersion(version) { const regex = /^v\d{1,3}\.\d{1,3}\.\d{1,3}$/; @@ -14,8 +16,8 @@ function isValidVersion(version) { async function getReleaseVectorYaml(version) { let releaseVectorPath = "https://raw.githubusercontent.com/metal-stack/releases/refs/heads/master/release.yaml" - if (version !== "" && version !== undefined ) { - if(isValidVersion(version)) { + if (version !== "" && version !== undefined) { + if (isValidVersion(version)) { releaseVectorPath = "https://raw.githubusercontent.com/metal-stack/releases/refs/tags/" + version + "/release.yaml" } else { @@ -46,6 +48,14 @@ async function downloadFile(url, destPath) { } async function downloadDoc(url, baseurl, outputDir, component, name, index) { + const normalizedUrl = new nodeurl.URL(url); + url = normalizedUrl.toString(); + if (visitedDocs.has(url)) { + return; + } + + visitedDocs = visitedDocs.add(url); + try { const res = await axios.get(url); let content = res.data; @@ -57,31 +67,37 @@ async function downloadDoc(url, baseurl, outputDir, component, name, index) { for (const relPath of assetPaths) { const filename = path.basename(relPath); - const rawAssetUrl = `${baseurl}/${relPath}`; + const rawAssetUrl = new nodeurl.URL(`${path.dirname(url)}/${relPath}`).toString(); const localAssetDir = path.join(outputDir, "assets"); if (!fs.existsSync(localAssetDir)) { fs.mkdirSync(localAssetDir, { recursive: true }); } const localAssetPath = path.join(localAssetDir, filename); + if (visitedDocs.has(rawAssetUrl)) { + continue; + } + + visitedDocs = visitedDocs.add(rawAssetUrl); + try { await downloadFile(rawAssetUrl, localAssetPath); content = content.replace(relPath, `./assets/${filename}`); console.log(`🖼️ Fetched asset: ${relPath}`); } catch (error) { - console.warn(`⚠️ Failed to fetch asset: ${relPath}`); + console.warn(`⚠️ Failed to fetch asset: ${relPath}`, error.message); } } // This Regex finds all relative references to files in .md style like "(../deploy/postgres_manual_restore.yaml)", removing the braces const isRelativeReferenceRegex = /\((?:(?:\.\.?\/)+|\.?\/|\/)(?:[\w.-]+\/)*[\w.-]+\.[\w.-]+\)/g; - const relativeReferences = [...content.matchAll(isRelativeReferenceRegex)].map((m) => m[0].substr(1,m[0].length -2)) + const relativeReferences = [...content.matchAll(isRelativeReferenceRegex)].map((m) => m[0].substr(1, m[0].length - 2)) for (const ref of relativeReferences) { let fileExtension = ref.split('.').pop().toLowerCase(); - if(fileExtension !== "md" && !imageExtensions.includes(fileExtension)) { - console.log("Replacing link " + ref + " with " + webURL(component) + "/" + ref) + if (fileExtension !== "md" && !imageExtensions.includes(fileExtension)) { + console.log("Replacing link " + ref + " with " + webURL(component) + "/" + ref) content = content.replace(ref, webURL(component) + "/" + ref); } } @@ -93,12 +109,12 @@ async function downloadDoc(url, baseurl, outputDir, component, name, index) { })); for (const link of mdLinks) { - + const mdFileName = path.basename(link.href); const linkedFilePath = path.join(outputDir, mdFileName); if (!fs.existsSync(linkedFilePath)) { - const linkedFileUrl = `${baseurl}/${link.href}`; + const linkedFileUrl = `${path.dirname(url)}/${link.href}`; try { await downloadDoc( linkedFileUrl, @@ -127,7 +143,6 @@ sidebar_position: ${index} `; const finalContent = frontmatter + content; - const filePath = path.join(outputDir, name); fs.writeFileSync(filePath, finalContent, "utf8"); @@ -140,10 +155,10 @@ sidebar_position: ${index} async function resolveDocs(baseurl, outputDir, component) { let apiUrl = `https://api.github.com/repos/${component.repo}/contents/docs` - if(component.tag !== "") { + if (component.tag !== "") { apiUrl = `https://api.github.com/repos/${component.repo}/contents/docs?ref=${component.tag}` } - + const docsOutputDir = outputDir try { @@ -183,17 +198,17 @@ async function resolveDocs(baseurl, outputDir, component) { } const findPath = (object, path) => { - const keys = path.split('.'); - let temp = object; - for (let i = 0; i < keys.length; i++) { - try { - if(!temp.hasOwnProperty(keys[i])) { return undefined; } - temp = temp[keys[i]]; - } catch { - return undefined; - } + const keys = path.split('.'); + let temp = object; + for (let i = 0; i < keys.length; i++) { + try { + if (!temp.hasOwnProperty(keys[i])) { return undefined; } + temp = temp[keys[i]]; + } catch { + return undefined; } - return temp; + } + return temp; }; async function fetchComponentDocs() { @@ -211,7 +226,7 @@ async function fetchComponentDocs() { for (const section of componentDocs) { for (const component of section.components) { - if(component.tag === "" || component.releasePath === "") { + if (component.tag === "" || component.releasePath === "") { console.warn("Tag or path for " + component.name + " is empty. Skip Version Update.") continue } @@ -219,19 +234,19 @@ async function fetchComponentDocs() { let docsVersion = component.tag let releaseVersion = findPath(releaseVector, component.releasePath) - if(releaseVersion === undefined) { + if (releaseVersion === undefined) { console.warn("Path for release version for component " + component.name + " empty, not found or incorrect.") continue } - if(docsVersion !== releaseVersion) { + if (docsVersion !== releaseVersion) { component.tag = releaseVersion console.log("Update Component " + component.name + " from " + docsVersion + " to " + releaseVersion) } } } - fs.writeFileSync('./scripts/components.json', JSON.stringify(componentDocs,null,2)); + fs.writeFileSync('./scripts/components.json', JSON.stringify(componentDocs, null, 2)); for (const section of componentDocs) { for (const component of section.components) { @@ -241,7 +256,7 @@ async function fetchComponentDocs() { } let baseurl = `https://raw.githubusercontent.com/${component.repo}/refs/heads/${component.branch}`; - if(component.tag !== "") { + if (component.tag !== "") { baseurl = `https://raw.githubusercontent.com/${component.repo}/${component.tag}`; } const url = `${baseurl}/README.md`; diff --git a/src/version.json b/src/version.json index cf57fc5e..b6906586 100644 --- a/src/version.json +++ b/src/version.json @@ -1 +1 @@ -{"version": "v0.22.19"} +{"version": "v0.22.20"} diff --git a/versioned_docs/version-v0.22/04-For Operators/03-deployment-guide.mdx b/versioned_docs/version-v0.22/04-For Operators/03-deployment-guide.mdx index ce58e0e0..b42851f3 100644 --- a/versioned_docs/version-v0.22/04-For Operators/03-deployment-guide.mdx +++ b/versioned_docs/version-v0.22/04-For Operators/03-deployment-guide.mdx @@ -573,7 +573,7 @@ The Edgerouters has to fulfill some requirements including: ### Management Servers -The second bastion hosts are the management servers. They are the main bootstrapping components of the Out-Of-Band-Network. They also act as jump hosts for all components in a partition. Once they are installed and deployed, we are able to bootstrap all the other components. To bootstrap the management servers, we generate an ISO image which will automatically install an OS and an ansible user with ssh keys. It is preconfigured with a preseed file to allow an unattended OS installation for our needs. This is why we need remote access to the IPMI interface of the management servers: The generated ISO is attached via the virtual media function of the BMC. After that, all we have to do is boot from that virtual CD-ROM and wait for the installation to finish. Deployment jobs (Gitlab-CI) in a partition are delegated to the appropriate management servers, therefore we need a CI runner active on each management server. +The second bastion hosts are the management servers. They are the main bootstrapping components of the Out-Of-Band-Network. They also act as jump hosts for all components in a partition. Once they are installed and deployed, we are able to bootstrap all the other components. To bootstrap the management servers, we generate an [ISO](https://github.com/metal-stack/bootstrap-debian) image which will automatically install an OS and an ansible user with ssh keys. It is preconfigured with a preseed file to allow an unattended OS installation for our needs. This is why we need remote access to the IPMI interface of the management servers: The generated [ISO](https://github.com/metal-stack/bootstrap-debian) is attached via the virtual media function of the BMC. After that, all we have to do is boot from that virtual CD-ROM and wait for the installation to finish. Deployment jobs (Gitlab-CI) in a partition are delegated to the appropriate management servers, therefore we need a CI runner active on each management server. After the CI runner has been installed, you can trigger your Playbooks from the the CI. The Ansible-Playbooks have to make sure that these functionalities are present on the management servers: diff --git a/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.0.md b/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.0.md index 9e6aa5da..4af164d8 100644 --- a/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.0.md +++ b/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.0.md @@ -1,7 +1,7 @@ --- slug: /release-notes/v0.22.0 title: v0.22.0 -sidebar_position: 20 +sidebar_position: 22 --- # metal-stack v0.22.0 See original release note at [https://github.com/metal-stack/releases/releases/tag/v0.22.0](https://github.com/metal-stack/releases/releases/tag/v0.22.0) diff --git a/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.1.md b/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.1.md index 5c382f9d..eb05b166 100644 --- a/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.1.md +++ b/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.1.md @@ -1,7 +1,7 @@ --- slug: /release-notes/v0.22.1 title: v0.22.1 -sidebar_position: 19 +sidebar_position: 21 --- # metal-stack v0.22.1 See original release note at [https://github.com/metal-stack/releases/releases/tag/v0.22.1](https://github.com/metal-stack/releases/releases/tag/v0.22.1) diff --git a/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.10.md b/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.10.md index 45215955..4814412c 100644 --- a/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.10.md +++ b/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.10.md @@ -1,7 +1,7 @@ --- slug: /release-notes/v0.22.10 title: v0.22.10 -sidebar_position: 10 +sidebar_position: 12 --- # metal-stack v0.22.10 See original release note at [https://github.com/metal-stack/releases/releases/tag/v0.22.10](https://github.com/metal-stack/releases/releases/tag/v0.22.10) diff --git a/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.11.md b/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.11.md index 760ef11a..fe533256 100644 --- a/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.11.md +++ b/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.11.md @@ -1,7 +1,7 @@ --- slug: /release-notes/v0.22.11 title: v0.22.11 -sidebar_position: 9 +sidebar_position: 11 --- # metal-stack v0.22.11 See original release note at [https://github.com/metal-stack/releases/releases/tag/v0.22.11](https://github.com/metal-stack/releases/releases/tag/v0.22.11) diff --git a/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.12.md b/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.12.md index 29e9419a..4a7d2591 100644 --- a/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.12.md +++ b/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.12.md @@ -1,7 +1,7 @@ --- slug: /release-notes/v0.22.12 title: v0.22.12 -sidebar_position: 8 +sidebar_position: 10 --- # metal-stack v0.22.12 See original release note at [https://github.com/metal-stack/releases/releases/tag/v0.22.12](https://github.com/metal-stack/releases/releases/tag/v0.22.12) diff --git a/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.13.md b/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.13.md index b45e6685..4898f56b 100644 --- a/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.13.md +++ b/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.13.md @@ -1,7 +1,7 @@ --- slug: /release-notes/v0.22.13 title: v0.22.13 -sidebar_position: 7 +sidebar_position: 9 --- # metal-stack v0.22.13 See original release note at [https://github.com/metal-stack/releases/releases/tag/v0.22.13](https://github.com/metal-stack/releases/releases/tag/v0.22.13) diff --git a/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.14.md b/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.14.md index f6d1a165..ee80f025 100644 --- a/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.14.md +++ b/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.14.md @@ -1,7 +1,7 @@ --- slug: /release-notes/v0.22.14 title: v0.22.14 -sidebar_position: 6 +sidebar_position: 8 --- # metal-stack v0.22.14 See original release note at [https://github.com/metal-stack/releases/releases/tag/v0.22.14](https://github.com/metal-stack/releases/releases/tag/v0.22.14) diff --git a/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.15.md b/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.15.md index 8322a65c..37c16ece 100644 --- a/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.15.md +++ b/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.15.md @@ -1,7 +1,7 @@ --- slug: /release-notes/v0.22.15 title: v0.22.15 -sidebar_position: 5 +sidebar_position: 7 --- # metal-stack v0.22.15 See original release note at [https://github.com/metal-stack/releases/releases/tag/v0.22.15](https://github.com/metal-stack/releases/releases/tag/v0.22.15) diff --git a/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.16.md b/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.16.md index 6980acff..7782a49f 100644 --- a/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.16.md +++ b/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.16.md @@ -1,7 +1,7 @@ --- slug: /release-notes/v0.22.16 title: v0.22.16 -sidebar_position: 4 +sidebar_position: 6 --- # metal-stack v0.22.16 See original release note at [https://github.com/metal-stack/releases/releases/tag/v0.22.16](https://github.com/metal-stack/releases/releases/tag/v0.22.16) diff --git a/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.17.md b/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.17.md index a38af3bb..27d900d3 100644 --- a/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.17.md +++ b/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.17.md @@ -1,7 +1,7 @@ --- slug: /release-notes/v0.22.17 title: v0.22.17 -sidebar_position: 3 +sidebar_position: 5 --- # metal-stack v0.22.17 See original release note at [https://github.com/metal-stack/releases/releases/tag/v0.22.17](https://github.com/metal-stack/releases/releases/tag/v0.22.17) diff --git a/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.18.md b/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.18.md index a85482ce..c48d3f66 100644 --- a/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.18.md +++ b/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.18.md @@ -1,7 +1,7 @@ --- slug: /release-notes/v0.22.18 title: v0.22.18 -sidebar_position: 2 +sidebar_position: 4 --- # metal-stack v0.22.18 See original release note at [https://github.com/metal-stack/releases/releases/tag/v0.22.18](https://github.com/metal-stack/releases/releases/tag/v0.22.18) @@ -24,6 +24,10 @@ See original release note at [https://github.com/metal-stack/releases/releases/t * For operators who already deployed metal-apiserver prior to this release: The field `metal_apiserver_admin_subjects` was removed and should be cleaned up. Admins are now managed through the provider tenant that is automatically ensured on startup of the metal-apiserver. ([release notes](https://github.com/metal-stack/metal-roles/releases/tag/v0.26.0)) +* In [#633](https://github.com/metal-stack/metal-roles/pull/633) changes were introduced for the s3 backend configuration used by the `backup-restore-sidecar` component. Unfortunately, the defaults for the Ansible variable `*_backup_restore_sidecar_object_max_keep` were removed in the process. +So if the corresponding `*_backup_restore_sidecar_object_max_keep` variable for the metal-stack databases (`ipam-db`, `masterdata-db`, `metal-db`) are not explicitly defined in your deployment, the backup lifecycle rule configuration might be modified unexpectedly. So before rolling out metal-stack `v0.22.18` please consider setting those variables explicitly in your deployment. If you want to use the defaults configure e.g. `ipam_db_backup_restore_sidecar_object_max_keep: 480` +The defaults will be added back again with metal-roles pull request [#699](https://github.com/metal-stack/metal-roles/pull/633). + ## Component Releases ### metal-roles v0.27.2 * ProviderTenant adoptions for metal-apiserver (metal-stack/metal-roles#642) @majst01 diff --git a/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.19.md b/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.19.md index b246eb99..f3821d0c 100644 --- a/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.19.md +++ b/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.19.md @@ -1,7 +1,7 @@ --- slug: /release-notes/v0.22.19 title: v0.22.19 -sidebar_position: 1 +sidebar_position: 3 --- # metal-stack v0.22.19 See original release note at [https://github.com/metal-stack/releases/releases/tag/v0.22.19](https://github.com/metal-stack/releases/releases/tag/v0.22.19) diff --git a/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.2.md b/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.2.md index 8d77eb74..6165d809 100644 --- a/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.2.md +++ b/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.2.md @@ -1,7 +1,7 @@ --- slug: /release-notes/v0.22.2 title: v0.22.2 -sidebar_position: 18 +sidebar_position: 20 --- # metal-stack v0.22.2 See original release note at [https://github.com/metal-stack/releases/releases/tag/v0.22.2](https://github.com/metal-stack/releases/releases/tag/v0.22.2) diff --git a/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.20.md b/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.20.md new file mode 100644 index 00000000..cd27b04e --- /dev/null +++ b/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.20.md @@ -0,0 +1,106 @@ +--- +slug: /release-notes/v0.22.20 +title: v0.22.20 +sidebar_position: 2 +--- +# metal-stack v0.22.20 +See original release note at [https://github.com/metal-stack/releases/releases/tag/v0.22.20](https://github.com/metal-stack/releases/releases/tag/v0.22.20) +## General +* [Gardener v1.139](https://github.com/gardener/gardener/releases/tag/v1.139.0) +* This release was integration tested against the control plane that fully uses Gateway API and without anymore `Ingress` resources. We recommend to migrate to Gateway API for this release. +## Breaking Changes +* It is now possible to configure `NoncurrentDays` also via flag, as follow up from #141. The s3 backend can be configured with `NewerNoncurrentVersions` as well as `NoncurrentDays`. Both can be used together, independently or completely removed from the lifecycle rule. The always applied default for `NewerNoncurrentVersions` was removed. So make sure to configure it accordingly, if not already configured in your deployment. (metal-stack/backup-restore-sidecar#148) +## Required Actions +* ⚠️ Make sure the seed clusters are updated to at least K8s 1.32 before rolling out this Gardener release. Gardener writes that >= 1.30 seeds are supported but these lower versions cannot be reconciled because the perses-operator CRDs cannot be applied. +* The monsoon sonic-exporter was superseded and will be removed in a future release. Use gNMI instead. + More information about the migration can be found in the gnmic [README](https://github.com/metal-stack/metal-roles/blob/master/partition/roles/monitoring/gnmic/README.md). (metal-stack/metal-roles#670) +## Noteworthy +* - We now create a dedicated internal mini-lab docker network (mini_lab_internal) to enable explicit reproducible IP assignments for Service type: LoadBalancer. We reserve the 172.42.0.1/16 subnet for the mini_lab_internal network. mini-lab will manage the lifecycle of this network and will destroy it during `make down`. + + - We made changes to the certificates. If you deployed mini-lab before you need to run `make roll-certs` to update host names in the certificates. (metal-stack/mini-lab#299) +* In [#633](https://github.com/metal-stack/metal-roles/pull/633) changes were introduced for the s3 backend configuration used by the `backup-restore-sidecar` component. Unfortunately, the defaults for the Ansible variable `*_backup_restore_sidecar_object_max_keep` were removed in the process. + So if the corresponding `*_backup_restore_sidecar_object_max_keep` variable for the metal-stack databases (`ipam-db`, `masterdata-db`, `metal-db`) are not explicitly defined in your deployment, the backup lifecycle rule configuration will be modified unexpectedly. So before rolling out metal-stack `v0.22.18` please consider setting those variables explicitly in your deployment. If you want to use the defaults configure e.g. `ipam_db_backup_restore_sidecar_object_max_keep: 480` + The defaults will be added back again with metal-roles pull request [#699](https://github.com/metal-stack/metal-roles/pull/633). (metal-stack/metal-roles#699) +## Component Releases +### metal-ansible-modules v0.3.2 +* Update v2 modules to latest API. (metal-stack/metal-ansible-modules#26) @Gerrit91 +* Act on latest created resource when using identifier label. (metal-stack/metal-ansible-modules#27) @Gerrit91 +* Use abstract base class to bundle common v2 module behavior + tests (metal-stack/metal-ansible-modules#29) @Gerrit91 +### virtual-garden-kubeconfig-refresher v0.1.6 +* Use STATIC_KUBECONFIG as environment variable name (metal-stack/virtual-garden-kubeconfig-refresher#7) @simcod +### metal-roles v0.30.0 +* Deploy gardener metrics exporter again (metal-stack/metal-roles#599) @simcod +* Increase default length of metal-apiserver session secret. (metal-stack/metal-roles#674) @Gerrit91 +* Optional loki deployment (metal-stack/metal-roles#672) @simcod +* Enable TLS verification by default (metal-stack/metal-roles#677) @simcod +* fix(alloy): allow setting docker network (metal-stack/metal-roles#676) @ma-hartma +* Adaptions for g/g v1.139. (metal-stack/metal-roles#682) @Gerrit91 +* sonic-exporter to gnmic migration (metal-stack/metal-roles#670) @Sven-Ric, @Gerrit91 +* feat(monitoring): allow separate ingress annotations for grafana and alertmanager (metal-stack/metal-roles#685) @ma-hartma +* Update partition-proxy image tag. (metal-stack/metal-roles#686) @Gerrit91 +* Add missing s3 object max keep backup lifecycle defaults (metal-stack/metal-roles#699) @simcod +* Enable vpn in metal-apiserver (metal-stack/metal-roles#687) @majst01 +* mgmt-server: render ssh_config hosts in stable order (metal-stack/metal-roles#689) @GeertJohan +* mgmt-server: escape the pubkey in the authorized_keys regexp (metal-stack/metal-roles#690) @GeertJohan +* Fix handler notify/listen case mismatches (metal-stack/metal-roles#692) @GeertJohan +### backup-restore-sidecar v0.14.0 +* fix: do not remove redis dump #145 (metal-stack/backup-restore-sidecar#146) @vknabel +* Replace s3/manager with s3/transfermanager (metal-stack/backup-restore-sidecar#147) @simcod +* Make NewerNoncurrentVersions optional in lifecycle policy for s3 backend (metal-stack/backup-restore-sidecar#148) @simcod +### helm-charts v0.7.7 +* Enable TLS verification by default (metal-stack/helm-charts#172) @simcod +* Enable vpn in metal-apiserver (metal-stack/helm-charts#173) @majst01 +* Modify Postgres pg_stat_statement query (metal-stack/helm-charts#171) @emekaponw, @eberlep +### metal-apiserver v0.9.1 +* Enable TLS verification by default (metal-stack/metal-apiserver#278) @simcod +### api v0.4.4 +* Update typescript dependencies (metal-stack/api#169) @majst01 +* Add test interceptor to Python client. (metal-stack/api#170) @Gerrit91 +* Add missing update labels for images. (metal-stack/api#172) @Gerrit91 +### tenant-apiserver v0.1.1 +* Create v7 uuids for resources. (metal-stack/tenant-apiserver#5) @Gerrit91 +### metal-hammer v0.15.2 +* Strict error checking on umount, report back to metal-api (metal-stack/metal-hammer#190) @majst01 +* build with go-hal@add-H13SSH (metal-stack/metal-hammer#184) @mwennrich +* Fix chrony config of firewalls (metal-stack/metal-hammer#192) @majst01 +### mini-lab v0.7.0 +* feat: add gateway-api support (metal-stack/mini-lab#299) @l0wl3vel +* Raise Garden cluster K8s version to 1.35. (metal-stack/mini-lab#323) @Gerrit91 +* Disable metal-apiserver TLS verification (metal-stack/mini-lab#319) @simcod +* Add a make target to export admin editor token (metal-stack/mini-lab#314) @majst01 +* Example for metal-roles override (metal-stack/mini-lab#313) @simcod +* Fix route reconciliation by enabling fpm (metal-stack/mini-lab#315) @l0wl3vel +* Latest adaptions for MEP-4. (metal-stack/mini-lab#311) @Gerrit91 +* Export metal-apiserver url (metal-stack/mini-lab#307) @majst01 +### duros-controller v0.12.2 +* Update lb-csi and csi sidecars (metal-stack/duros-controller#102) @majst01 +### gardener-extension-ontap v0.2.21 +* Documentation ontap (metal-stack/gardener-extension-ontap#98) @Honigeintopf +* Update go dependencies and ci actions (metal-stack/gardener-extension-ontap#99) @majst01 +* provide ontap VolumeSnapshotClass (metal-stack/gardener-extension-ontap#97) @mwennrich +* use dedicated names for snapshot-controller rbac, to not collide with existing rbac (metal-stack/gardener-extension-ontap#96) @mwennrich +# Merged Pull Requests +This is a list of pull requests that were merged since the last release. The list does not contain pull requests from release-vector-repositories. + +The fact that these pull requests were merged does not necessarily imply that they have already become part of this metal-stack release. + +* Update ubuntu kernel to 6.18.40 (metal-stack/metal-images#431) @majst01 +* Better support for protoyaml (printer and multi-document reader) (metal-stack/metal-lib#210) @Gerrit91 +* Bump releases to version v0.22.19 (metal-stack/website#329) @metal-robot[bot] +* chore(deps): bump the docusaurus-dependencies group with 4 updates (metal-stack/website#330) @dependabot[bot] +* chore(deps): bump the other-dependencies group across 1 directory with 4 updates (metal-stack/website#331) @dependabot[bot] +* Use protoyaml for edit command (metal-stack/metal-lib#212) @Gerrit91 +* Use protoyaml for everything by default and update to latest API (metal-stack/cli#38) @Gerrit91 +* Partition (metal-stack/cli#19) @majst01 +* Update containerd on debian (metal-stack/metal-images#425) @majst01 +* Remove iptables and fever (metal-stack/metal-images#432) @majst01 +* Generate admin docs. (metal-stack/cli#43) @Gerrit91 +* Admin token create (metal-stack/cli#41) @majst01 +* Unify update meta and labels + slight refactorings. (metal-stack/cli#42) @Gerrit91 +* Add gnmic to the release vector (metal-stack/releases#313) @Sven-Ric +* VPN commands. (metal-stack/cli#44) @Gerrit91 +* Fix empty chrony config if ntpservers is empty (metal-stack/os-installer#9) @majst01 +* Network commands (metal-stack/cli#45) @Gerrit91 +* cleanup completions (metal-stack/cli#46) @majst01 +* Debian kernel 6.12.100 (metal-stack/metal-images#434) @majst01 +* Next release (metal-stack/releases#310) @metal-robot[bot] \ No newline at end of file diff --git a/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.21.md b/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.21.md new file mode 100644 index 00000000..ed179ada --- /dev/null +++ b/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.21.md @@ -0,0 +1,60 @@ +--- +slug: /release-notes/v0.22.21 +title: v0.22.21 +sidebar_position: 1 +--- +# metal-stack v0.22.21 +See original release note at [https://github.com/metal-stack/releases/releases/tag/untagged-7a025c0a46613d6e600b](https://github.com/metal-stack/releases/releases/tag/untagged-7a025c0a46613d6e600b) +## General +* [Gardener v1.140](https://github.com/gardener/gardener/releases/tag/v1.140.0) +## Noteworthy +* Add environment variables support to cosign verify. (metal-stack/ansible-common#50) +* Prometheus in the partition monitoring role can now be configured with additional labels. As some systems use `replica` while others use `__replica__` that may conflict, the label: `replica: '{{ inventory_hostname }}'` has been added to the defaults. If you make use of this configuration option and want to keep the `replica` label, make sure to include it explicitly. (metal-stack/metal-roles#702) +## Breaking Changes +* In the `mgmt-server` role the misspelled `mgmt_server_routerid` is renamed to `mgmt_server_router_id`. Update your variables accordingly. The role will error on missing variable. (metal-stack/metal-roles#626) +## Component Releases +### csi-driver-lvm v0.9.1 +* Support setting mount options via HelmChart (metal-stack/csi-driver-lvm#160) @serveric +### metal-roles v0.31.1 +* fix: change default apiserver admin token expiry to 16h (metal-stack/metal-roles#715) @mwennrich +* Fix mgmt-server FRR installation (metal-stack/metal-roles#668) @iljarotar +* fix(mgmt-server): use mgmt_server_router_id in frr.conf template (metal-stack/metal-roles#626) @GeertJohan +* mgmt-server: add optional static routes to the frr.conf template (metal-stack/metal-roles#688) @GeertJohan +* add roomID variable to metal-core service (metal-stack/metal-roles#625) @mwennrich +* Add metal-core interface naming schema (metal-stack/metal-roles#717) @iljarotar +* Partition Prometheus Additional External Labels (metal-stack/metal-roles#702) @simcod +* Service account secret for virtual-garden-kubeconfig-refresher (metal-stack/metal-roles#713) @simcod +* Run the test workflow on pull requests (metal-stack/metal-roles#711) @GeertJohan +### metal-core v0.18.0 +* Add option for SONiC interface naming schema (metal-stack/metal-core#208) @iljarotar +* Some cleanup and formatting (metal-stack/metal-core#210) @iljarotar +* register with RoomID (metal-stack/metal-core#193) @mwennrich +* Support additional routes to the management network gateway (metal-stack/metal-core#204) @GeertJohan +### helm-charts v0.7.8 +* Sync csi-driver-lvm chart v0.9.1. (metal-stack/helm-charts#176) @Gerrit91 +### ansible-common v0.9.1 +* add existing env for proxy support, if set (metal-stack/ansible-common#50) @TLINDEN +### gardener-extension-provider-metal v0.27.12 +* Update dependencies. (metal-stack/gardener-extension-provider-metal#507) @Gerrit91 +* fix: change calico bpfConnectTimeLoadBalancing from default "TCP" to "Enabled", to also allow udp-connection from host to kubernetes services (metal-stack/gardener-extension-provider-metal#506) @mwennrich +# Merged Pull Requests +This is a list of pull requests that were merged since the last release. The list does not contain pull requests from release-vector-repositories. + +The fact that these pull requests were merged does not necessarily imply that they have already become part of this metal-stack release. + +* Update gardener to 1.140.5 (metal-stack/releases#314) @majst01 +* Fix Reconcile on Dualstack Firewalls (metal-stack/firewall-controller#227) @majst01 +* Add link to management server iso generation repository (metal-stack/website#341) @muhittink +* Indicate the secrets used in the reusable workflows (metal-stack/actions-common#19) @Gerrit91 +* Update to latest actions. (metal-stack/actions-common#20) @Gerrit91 +* Allow to optionally pass a registry password. (metal-stack/actions-common#21) @Gerrit91 +* Fix MEP-8 identity crisis (metal-stack/website#340) @GeertJohan +* Remove install-go (metal-stack/metal-images#426) @majst01 +* Update go deps and actions (metal-stack/security#68) @majst01 +* Update go deps and actions (metal-stack/metal-lib#213) @majst01 +* Fix only completion (metal-stack/cli#50) @majst01 +* Admin IP command (metal-stack/cli#47) @majst01 +* Allow to set firewall vpn ip (metal-stack/metal-lib#214) @majst01 +* chore(deps): bump the other-dependencies group across 1 directory with 6 updates (metal-stack/website#338) @dependabot[bot] +* Add `machine` cmd. (metal-stack/cli#51) @Gerrit91 +* Prune components (metal-stack/cli#53) @majst01 \ No newline at end of file diff --git a/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.3.md b/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.3.md index aab30d06..1541ca9f 100644 --- a/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.3.md +++ b/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.3.md @@ -1,7 +1,7 @@ --- slug: /release-notes/v0.22.3 title: v0.22.3 -sidebar_position: 17 +sidebar_position: 19 --- # metal-stack v0.22.3 See original release note at [https://github.com/metal-stack/releases/releases/tag/v0.22.3](https://github.com/metal-stack/releases/releases/tag/v0.22.3) diff --git a/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.4.md b/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.4.md index 05aafd78..a500952d 100644 --- a/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.4.md +++ b/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.4.md @@ -1,7 +1,7 @@ --- slug: /release-notes/v0.22.4 title: v0.22.4 -sidebar_position: 16 +sidebar_position: 18 --- # metal-stack v0.22.4 See original release note at [https://github.com/metal-stack/releases/releases/tag/v0.22.4](https://github.com/metal-stack/releases/releases/tag/v0.22.4) diff --git a/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.5.md b/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.5.md index 82a0d7f5..cc6a807e 100644 --- a/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.5.md +++ b/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.5.md @@ -1,7 +1,7 @@ --- slug: /release-notes/v0.22.5 title: v0.22.5 -sidebar_position: 15 +sidebar_position: 17 --- # metal-stack v0.22.5 See original release note at [https://github.com/metal-stack/releases/releases/tag/v0.22.5](https://github.com/metal-stack/releases/releases/tag/v0.22.5) diff --git a/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.6.md b/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.6.md index 263c5601..3a87d147 100644 --- a/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.6.md +++ b/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.6.md @@ -1,7 +1,7 @@ --- slug: /release-notes/v0.22.6 title: v0.22.6 -sidebar_position: 14 +sidebar_position: 16 --- # metal-stack v0.22.6 See original release note at [https://github.com/metal-stack/releases/releases/tag/v0.22.6](https://github.com/metal-stack/releases/releases/tag/v0.22.6) diff --git a/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.7.md b/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.7.md index c482ee8c..babf9aa3 100644 --- a/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.7.md +++ b/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.7.md @@ -1,7 +1,7 @@ --- slug: /release-notes/v0.22.7 title: v0.22.7 -sidebar_position: 13 +sidebar_position: 15 --- # metal-stack v0.22.7 See original release note at [https://github.com/metal-stack/releases/releases/tag/v0.22.7](https://github.com/metal-stack/releases/releases/tag/v0.22.7) diff --git a/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.8.md b/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.8.md index 082bb8cc..420dae1b 100644 --- a/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.8.md +++ b/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.8.md @@ -1,7 +1,7 @@ --- slug: /release-notes/v0.22.8 title: v0.22.8 -sidebar_position: 12 +sidebar_position: 14 --- # metal-stack v0.22.8 See original release note at [https://github.com/metal-stack/releases/releases/tag/v0.22.8](https://github.com/metal-stack/releases/releases/tag/v0.22.8) diff --git a/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.9.md b/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.9.md index cda990f2..c783a42a 100644 --- a/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.9.md +++ b/versioned_docs/version-v0.22/07-Release Notes/v0.22/v0.22.9.md @@ -1,7 +1,7 @@ --- slug: /release-notes/v0.22.9 title: v0.22.9 -sidebar_position: 11 +sidebar_position: 13 --- # metal-stack v0.22.9 See original release note at [https://github.com/metal-stack/releases/releases/tag/v0.22.9](https://github.com/metal-stack/releases/releases/tag/v0.22.9) diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl.md index db729976..eadabbca 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl.md @@ -1,64 +1,135 @@ --- slug: /references/metalctl title: metalctl -sidebar_position: 0 +sidebar_position: 1 --- -## metalctl +# metalctl -a cli to manage entities in the metal-stack api +*metalctl* is the command line client to access the [metal-api](https://github.com/metal-stack/metal-api). -### Options +## Installation +Download locations: + +- [metalctl-linux-amd64](https://github.com/metal-stack/metalctl/releases/latest/download/metalctl-linux-amd64) +- [metalctl-darwin-amd64](https://github.com/metal-stack/metalctl/releases/latest/download/metalctl-darwin-amd64) +- [metalctl-darwin-arm64](https://github.com/metal-stack/metalctl/releases/latest/download/metalctl-darwin-arm64) +- [metalctl-windows-amd64](https://github.com/metal-stack/metalctl/releases/latest/download/metalctl-windows-amd64) + +### Installation on Linux + +```bash +curl -LO https://github.com/metal-stack/metalctl/releases/latest/download/metalctl-linux-amd64 +chmod +x metalctl-linux-amd64 +sudo mv metalctl-linux-amd64 /usr/local/bin/metalctl +``` + +### Installation on MacOS + +For x86 based Macs: + +```bash +curl -LO https://github.com/metal-stack/metalctl/releases/latest/download/metalctl-darwin-amd64 +chmod +x metalctl-darwin-amd64 +sudo mv metalctl-darwin-amd64 /usr/local/bin/metalctl +``` + +For Apple Silicon (M1) based Macs: + +```bash +curl -LO https://github.com/metal-stack/metalctl/releases/latest/download/metalctl-darwin-arm64 +chmod +x metalctl-darwin-arm64 +sudo mv metalctl-darwin-arm64 /usr/local/bin/metalctl ``` - --api-token string api token to authenticate. Can be specified with METALCTL_API_TOKEN environment variable. - --api-url string api server address. Can be specified with METALCTL_API_URL environment variable. - -c, --config string alternative config file path, (default is ~/.metalctl/config.yaml). - Example config.yaml: - - --- - apitoken: "alongtoken" - ... - - - --debug debug output - --force-color force colored output even without tty - -h, --help help for metalctl - --kubeconfig string Path to the kube-config to use for authentication and authorization. Is updated by login. Uses default path if not specified. - --no-headers do not print headers of table output format (default print headers) - -o, --output-format string output format (table|wide|markdown|json|yaml|template), wide is a table with more columns. (default "table") - --template string output template for template output-format, go template format. - For property names inspect the output of -o json or -o yaml for reference. - Example for machines: - - metalctl machine list -o template --template "{{ .id }}:{{ .size.id }}" - - - --yes-i-really-mean-it skips security prompts (which can be dangerous to set blindly because actions can lead to data loss or additional costs) + +### Installation on Windows + +```bash +curl -LO https://github.com/metal-stack/metalctl/releases/latest/download/metalctl-windows-amd64 +copy metalctl-windows-amd64 metalctl.exe +``` + +### metalctl update + +In order to keep your local `metalctl` installation up to date, you can update the binary like this: + +```bash +metalctl update check +latest version:v0.8.3 from:2020-08-13T11:55:14Z +local version:v0.8.2 from:2020-08-12T09:27:39Z +metalctl is not up to date + +metalctl update do +# a download with progress bar starts and replaces the binary. If the binary has root permissions please execute +sudo metalctl update do +# instead +``` + +### Built from project + +```bash +make +sudo ln -sf $(pwd)/bin/metalctl /usr/local/bin/metalctl ``` -### SEE ALSO - -* [metalctl audit](./metalctl_audit.md) - manage audit trace entities -* [metalctl completion](./metalctl_completion.md) - Generate the autocompletion script for the specified shell -* [metalctl context](./metalctl_context.md) - manage metalctl context -* [metalctl filesystemlayout](./metalctl_filesystemlayout.md) - manage filesystemlayout entities -* [metalctl firewall](./metalctl_firewall.md) - manage firewall entities -* [metalctl firmware](./metalctl_firmware.md) - manage firmwares -* [metalctl health](./metalctl_health.md) - shows the server health -* [metalctl image](./metalctl_image.md) - manage image entities -* [metalctl login](./metalctl_login.md) - login user and receive token -* [metalctl logout](./metalctl_logout.md) - logout user from OIDC SSO session -* [metalctl machine](./metalctl_machine.md) - manage machine entities -* [metalctl markdown](./metalctl_markdown.md) - create markdown documentation -* [metalctl network](./metalctl_network.md) - manage network entities -* [metalctl partition](./metalctl_partition.md) - manage partition entities -* [metalctl project](./metalctl_project.md) - manage project entities -* [metalctl size](./metalctl_size.md) - manage size entities -* [metalctl switch](./metalctl_switch.md) - manage switch entities -* [metalctl tenant](./metalctl_tenant.md) - manage tenant entities -* [metalctl update](./metalctl_update.md) - update the program -* [metalctl version](./metalctl_version.md) - print the client and server version information -* [metalctl vpn](./metalctl_vpn.md) - access VPN -* [metalctl whoami](./metalctl_whoami.md) - shows current user +## Configuration + +Set up auto-completion for `metalctl`, e.g. add to your `~/.bashrc`: + +```bash +source <(metalctl completion bash) +``` + +Set up `metalctl` config, by first creating the config folder (`mkdir -p ~/.metalctl`), then set the values according to your installation in `~/.metalctl/config.yaml`: + +```yaml +--- +current: prod +contexts: + prod: + url: https://api.metal-stack.io/metal + issuer_url: https://dex.metal-stack.io/dex + client_id: metal_client + client_secret: 456 + hmac: YOUR_HMAC + hmac_auth_type: THE_AUTH_TYPE_OF_YOUR_HMAC # Metal-Admin, Metal-Edit or Metal-View +``` + +Optional you can specify `issuer_type: generic` if you use other issuers as Dex, e.g. Keycloak (this will request scopes `openid,profile,email`): + +```bash +contexts: + prod: + url: https://api.metal-stack.io/metal + issuer_url: https://keycloak.somedomain.io + issuer_type: generic + client_id: my-client-id + client_secret: my-secret +``` + +If you must specify special scopes for your issuer, you can use `custom_scopes`: + +```bash +contexts: + prod: + url: https://api.metal-stack.io/metal + issuer_url: https://keycloak.somedomain.io + custom_scopes: roles,openid,profile,email + client_id: my-client-id + client_secret: my-secret +``` + +## Available commands + +Full documentation is generated out of the cobra command implementation with: + +`metalctl markdown` + +generated markdown is [here](./metalctl.md) and [here](https://docs.metal-stack.io/stable/external/metalctl/README/) + +## Development + +For MacOS users, running the tests might throw an error because tests are utilizing [go-mpatch](https://github.com/undefinedlabs/go-mpatch) in order to manipulate the `time.Now` function. The patch allows testing with fixed timestamps. +Instead, MacOS users can utilize the `make test-in-docker` target to execute the tests. diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_audit.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_audit.md index 88211263..26175655 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_audit.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_audit.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_audit title: metalctl_audit -sidebar_position: 1 +sidebar_position: 0 --- ## metalctl audit diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_audit_describe.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_audit_describe.md index 24ff4ecf..b3406c9c 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_audit_describe.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_audit_describe.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_audit_describe title: metalctl_audit_describe -sidebar_position: 2 +sidebar_position: 1 --- ## metalctl audit describe diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_audit_list.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_audit_list.md index b34a77ea..2aa0cf29 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_audit_list.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_audit_list.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_audit_list title: metalctl_audit_list -sidebar_position: 3 +sidebar_position: 2 --- ## metalctl audit list diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_completion.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_completion.md index bd46031c..f34e4c3d 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_completion.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_completion.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_completion title: metalctl_completion -sidebar_position: 4 +sidebar_position: 1 --- ## metalctl completion diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_completion_bash.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_completion_bash.md index da95653a..6a9ece40 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_completion_bash.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_completion_bash.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_completion_bash title: metalctl_completion_bash -sidebar_position: 5 +sidebar_position: 1 --- ## metalctl completion bash diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_completion_fish.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_completion_fish.md index 7818c8c7..d1fb84b3 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_completion_fish.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_completion_fish.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_completion_fish title: metalctl_completion_fish -sidebar_position: 6 +sidebar_position: 2 --- ## metalctl completion fish diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_completion_powershell.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_completion_powershell.md index 99c19d09..9a445eb7 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_completion_powershell.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_completion_powershell.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_completion_powershell title: metalctl_completion_powershell -sidebar_position: 7 +sidebar_position: 3 --- ## metalctl completion powershell diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_completion_zsh.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_completion_zsh.md index d9d422be..3bfa513f 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_completion_zsh.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_completion_zsh.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_completion_zsh title: metalctl_completion_zsh -sidebar_position: 8 +sidebar_position: 4 --- ## metalctl completion zsh diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_context.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_context.md index c5d8fc5e..0eadf283 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_context.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_context.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_context title: metalctl_context -sidebar_position: 9 +sidebar_position: 2 --- ## metalctl context diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_context_short.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_context_short.md index d07236e5..9f8df503 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_context_short.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_context_short.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_context_short title: metalctl_context_short -sidebar_position: 10 +sidebar_position: 1 --- ## metalctl context short diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_filesystemlayout.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_filesystemlayout.md index c3713da0..93ee9221 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_filesystemlayout.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_filesystemlayout.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_filesystemlayout title: metalctl_filesystemlayout -sidebar_position: 11 +sidebar_position: 3 --- ## metalctl filesystemlayout diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_filesystemlayout_apply.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_filesystemlayout_apply.md index ef46d3b8..c6e08e2b 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_filesystemlayout_apply.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_filesystemlayout_apply.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_filesystemlayout_apply title: metalctl_filesystemlayout_apply -sidebar_position: 12 +sidebar_position: 1 --- ## metalctl filesystemlayout apply diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_filesystemlayout_create.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_filesystemlayout_create.md index 84d9f640..80a15015 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_filesystemlayout_create.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_filesystemlayout_create.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_filesystemlayout_create title: metalctl_filesystemlayout_create -sidebar_position: 13 +sidebar_position: 2 --- ## metalctl filesystemlayout create diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_filesystemlayout_delete.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_filesystemlayout_delete.md index c2d6bc26..423b85b6 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_filesystemlayout_delete.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_filesystemlayout_delete.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_filesystemlayout_delete title: metalctl_filesystemlayout_delete -sidebar_position: 14 +sidebar_position: 3 --- ## metalctl filesystemlayout delete diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_filesystemlayout_describe.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_filesystemlayout_describe.md index 797baa9d..6a943cac 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_filesystemlayout_describe.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_filesystemlayout_describe.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_filesystemlayout_describe title: metalctl_filesystemlayout_describe -sidebar_position: 15 +sidebar_position: 4 --- ## metalctl filesystemlayout describe diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_filesystemlayout_edit.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_filesystemlayout_edit.md index 1ed6c1c6..b300d329 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_filesystemlayout_edit.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_filesystemlayout_edit.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_filesystemlayout_edit title: metalctl_filesystemlayout_edit -sidebar_position: 16 +sidebar_position: 5 --- ## metalctl filesystemlayout edit diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_filesystemlayout_list.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_filesystemlayout_list.md index 623332cb..a82938c5 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_filesystemlayout_list.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_filesystemlayout_list.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_filesystemlayout_list title: metalctl_filesystemlayout_list -sidebar_position: 17 +sidebar_position: 6 --- ## metalctl filesystemlayout list diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_filesystemlayout_match.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_filesystemlayout_match.md index 85ad9aaa..bcfd38fb 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_filesystemlayout_match.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_filesystemlayout_match.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_filesystemlayout_match title: metalctl_filesystemlayout_match -sidebar_position: 18 +sidebar_position: 7 --- ## metalctl filesystemlayout match diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_filesystemlayout_try.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_filesystemlayout_try.md index acc77a72..a8e4c482 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_filesystemlayout_try.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_filesystemlayout_try.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_filesystemlayout_try title: metalctl_filesystemlayout_try -sidebar_position: 19 +sidebar_position: 8 --- ## metalctl filesystemlayout try diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_filesystemlayout_update.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_filesystemlayout_update.md index 1eee8f8e..8388b005 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_filesystemlayout_update.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_filesystemlayout_update.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_filesystemlayout_update title: metalctl_filesystemlayout_update -sidebar_position: 20 +sidebar_position: 9 --- ## metalctl filesystemlayout update diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_firewall.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_firewall.md index e57919d8..aabef38e 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_firewall.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_firewall.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_firewall title: metalctl_firewall -sidebar_position: 21 +sidebar_position: 4 --- ## metalctl firewall diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_firewall_create.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_firewall_create.md index d6b2fc4a..9685bddd 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_firewall_create.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_firewall_create.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_firewall_create title: metalctl_firewall_create -sidebar_position: 22 +sidebar_position: 1 --- ## metalctl firewall create diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_firewall_describe.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_firewall_describe.md index 64f4a422..3177325d 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_firewall_describe.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_firewall_describe.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_firewall_describe title: metalctl_firewall_describe -sidebar_position: 23 +sidebar_position: 2 --- ## metalctl firewall describe diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_firewall_list.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_firewall_list.md index 152c6ccf..8f29aa0f 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_firewall_list.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_firewall_list.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_firewall_list title: metalctl_firewall_list -sidebar_position: 24 +sidebar_position: 3 --- ## metalctl firewall list diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_firewall_ssh.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_firewall_ssh.md index 70891321..7b6a0b5a 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_firewall_ssh.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_firewall_ssh.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_firewall_ssh title: metalctl_firewall_ssh -sidebar_position: 25 +sidebar_position: 4 --- ## metalctl firewall ssh diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_firmware.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_firmware.md index 6656b619..bb9600d0 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_firmware.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_firmware.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_firmware title: metalctl_firmware -sidebar_position: 26 +sidebar_position: 5 --- ## metalctl firmware diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_firmware_delete.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_firmware_delete.md index ca04286a..9c870453 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_firmware_delete.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_firmware_delete.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_firmware_delete title: metalctl_firmware_delete -sidebar_position: 27 +sidebar_position: 1 --- ## metalctl firmware delete diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_firmware_list.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_firmware_list.md index 2160fcd9..151ec7b3 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_firmware_list.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_firmware_list.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_firmware_list title: metalctl_firmware_list -sidebar_position: 28 +sidebar_position: 2 --- ## metalctl firmware list diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_firmware_upload.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_firmware_upload.md index 9f39d56a..837d8ec9 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_firmware_upload.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_firmware_upload.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_firmware_upload title: metalctl_firmware_upload -sidebar_position: 29 +sidebar_position: 3 --- ## metalctl firmware upload diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_firmware_upload_bios.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_firmware_upload_bios.md index 04119d77..9885d017 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_firmware_upload_bios.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_firmware_upload_bios.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_firmware_upload_bios title: metalctl_firmware_upload_bios -sidebar_position: 30 +sidebar_position: 1 --- ## metalctl firmware upload bios diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_firmware_upload_bmc.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_firmware_upload_bmc.md index 66131056..175b8373 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_firmware_upload_bmc.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_firmware_upload_bmc.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_firmware_upload_bmc title: metalctl_firmware_upload_bmc -sidebar_position: 31 +sidebar_position: 2 --- ## metalctl firmware upload bmc diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_health.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_health.md index 41509eb5..d7ea8a46 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_health.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_health.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_health title: metalctl_health -sidebar_position: 32 +sidebar_position: 6 --- ## metalctl health diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_image.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_image.md index 86cda0ab..609ee06a 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_image.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_image.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_image title: metalctl_image -sidebar_position: 33 +sidebar_position: 7 --- ## metalctl image diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_image_apply.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_image_apply.md index deda0fe0..f946ba63 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_image_apply.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_image_apply.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_image_apply title: metalctl_image_apply -sidebar_position: 34 +sidebar_position: 1 --- ## metalctl image apply diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_image_create.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_image_create.md index 166aff58..7f6a48fc 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_image_create.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_image_create.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_image_create title: metalctl_image_create -sidebar_position: 35 +sidebar_position: 2 --- ## metalctl image create diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_image_delete.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_image_delete.md index a3c33bd5..618b3458 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_image_delete.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_image_delete.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_image_delete title: metalctl_image_delete -sidebar_position: 36 +sidebar_position: 3 --- ## metalctl image delete diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_image_describe.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_image_describe.md index 9fe087b3..574c2f39 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_image_describe.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_image_describe.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_image_describe title: metalctl_image_describe -sidebar_position: 37 +sidebar_position: 4 --- ## metalctl image describe diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_image_edit.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_image_edit.md index 0a8cd03e..fc9fa320 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_image_edit.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_image_edit.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_image_edit title: metalctl_image_edit -sidebar_position: 38 +sidebar_position: 5 --- ## metalctl image edit diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_image_list.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_image_list.md index b1c0c2b5..c47f4fe3 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_image_list.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_image_list.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_image_list title: metalctl_image_list -sidebar_position: 39 +sidebar_position: 6 --- ## metalctl image list diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_image_update.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_image_update.md index ed92e636..814c4782 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_image_update.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_image_update.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_image_update title: metalctl_image_update -sidebar_position: 40 +sidebar_position: 7 --- ## metalctl image update diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_login.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_login.md index 18d342c2..e1248339 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_login.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_login.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_login title: metalctl_login -sidebar_position: 41 +sidebar_position: 8 --- ## metalctl login diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_logout.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_logout.md index 86b00a1f..a178140c 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_logout.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_logout.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_logout title: metalctl_logout -sidebar_position: 42 +sidebar_position: 9 --- ## metalctl logout diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine.md index d7d20a7c..decfce7a 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine title: metalctl_machine -sidebar_position: 43 +sidebar_position: 10 --- ## metalctl machine diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_apply.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_apply.md index 20c81a41..ef3b46e5 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_apply.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_apply.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_apply title: metalctl_machine_apply -sidebar_position: 44 +sidebar_position: 1 --- ## metalctl machine apply diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_console.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_console.md index 5b2c28ac..6d393a71 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_console.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_console.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_console title: metalctl_machine_console -sidebar_position: 45 +sidebar_position: 2 --- ## metalctl machine console diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_consolepassword.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_consolepassword.md index 1a4c2866..a57bc3ec 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_consolepassword.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_consolepassword.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_consolepassword title: metalctl_machine_consolepassword -sidebar_position: 46 +sidebar_position: 3 --- ## metalctl machine consolepassword diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_create.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_create.md index 89f09ae8..404cb1e0 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_create.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_create.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_create title: metalctl_machine_create -sidebar_position: 47 +sidebar_position: 4 --- ## metalctl machine create diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_delete.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_delete.md index a39f7bf5..46eb1208 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_delete.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_delete.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_delete title: metalctl_machine_delete -sidebar_position: 48 +sidebar_position: 5 --- ## metalctl machine delete diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_describe.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_describe.md index d202a94d..be93ed03 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_describe.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_describe.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_describe title: metalctl_machine_describe -sidebar_position: 49 +sidebar_position: 6 --- ## metalctl machine describe diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_edit.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_edit.md index 32b2c9f7..e7f216b0 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_edit.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_edit.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_edit title: metalctl_machine_edit -sidebar_position: 50 +sidebar_position: 7 --- ## metalctl machine edit diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_identify.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_identify.md index ab006a5d..bf0184e7 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_identify.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_identify.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_identify title: metalctl_machine_identify -sidebar_position: 51 +sidebar_position: 8 --- ## metalctl machine identify diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_identify_off.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_identify_off.md index 1f4f1b25..e9de1b02 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_identify_off.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_identify_off.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_identify_off title: metalctl_machine_identify_off -sidebar_position: 52 +sidebar_position: 1 --- ## metalctl machine identify off diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_identify_on.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_identify_on.md index 65348d84..b152aaa7 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_identify_on.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_identify_on.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_identify_on title: metalctl_machine_identify_on -sidebar_position: 53 +sidebar_position: 2 --- ## metalctl machine identify on diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_ipmi.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_ipmi.md index bf3d1462..af5c4ec2 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_ipmi.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_ipmi.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_ipmi title: metalctl_machine_ipmi -sidebar_position: 54 +sidebar_position: 9 --- ## metalctl machine ipmi diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_ipmi_chassis-list.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_ipmi_chassis-list.md index 92f663d2..b54c25db 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_ipmi_chassis-list.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_ipmi_chassis-list.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_ipmi_chassis-list title: metalctl_machine_ipmi_chassis-list -sidebar_position: 55 +sidebar_position: 1 --- ## metalctl machine ipmi chassis-list diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_ipmi_events.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_ipmi_events.md index 8ae06be4..877628d6 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_ipmi_events.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_ipmi_events.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_ipmi_events title: metalctl_machine_ipmi_events -sidebar_position: 56 +sidebar_position: 2 --- ## metalctl machine ipmi events diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_issues.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_issues.md index 5f6ca8df..cbffb44c 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_issues.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_issues.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_issues title: metalctl_machine_issues -sidebar_position: 57 +sidebar_position: 10 --- ## metalctl machine issues diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_issues_list.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_issues_list.md index 2bd1b43f..75ee86ed 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_issues_list.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_issues_list.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_issues_list title: metalctl_machine_issues_list -sidebar_position: 58 +sidebar_position: 1 --- ## metalctl machine issues list diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_list.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_list.md index b3fe7e3a..d9b85226 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_list.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_list.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_list title: metalctl_machine_list -sidebar_position: 59 +sidebar_position: 11 --- ## metalctl machine list diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_lock.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_lock.md index 4e9e75c3..7f9378aa 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_lock.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_lock.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_lock title: metalctl_machine_lock -sidebar_position: 60 +sidebar_position: 12 --- ## metalctl machine lock diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_logs.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_logs.md index 7d57760d..6f2ba9ab 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_logs.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_logs.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_logs title: metalctl_machine_logs -sidebar_position: 61 +sidebar_position: 13 --- ## metalctl machine logs diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_power.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_power.md index b41deeaa..cd1bea63 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_power.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_power.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_power title: metalctl_machine_power -sidebar_position: 62 +sidebar_position: 14 --- ## metalctl machine power diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_power_bios.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_power_bios.md index 96f2e33d..c78fa8a8 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_power_bios.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_power_bios.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_power_bios title: metalctl_machine_power_bios -sidebar_position: 63 +sidebar_position: 1 --- ## metalctl machine power bios diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_power_cycle.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_power_cycle.md index 2c77c28f..baa00e45 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_power_cycle.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_power_cycle.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_power_cycle title: metalctl_machine_power_cycle -sidebar_position: 64 +sidebar_position: 2 --- ## metalctl machine power cycle diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_power_disk.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_power_disk.md index 343030ac..d16f4455 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_power_disk.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_power_disk.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_power_disk title: metalctl_machine_power_disk -sidebar_position: 65 +sidebar_position: 3 --- ## metalctl machine power disk diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_power_off.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_power_off.md index 2a3e3434..6aececcd 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_power_off.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_power_off.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_power_off title: metalctl_machine_power_off -sidebar_position: 66 +sidebar_position: 4 --- ## metalctl machine power off diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_power_on.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_power_on.md index 407486af..979149eb 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_power_on.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_power_on.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_power_on title: metalctl_machine_power_on -sidebar_position: 67 +sidebar_position: 5 --- ## metalctl machine power on diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_power_pxe.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_power_pxe.md index 25ca47d2..ffe28a67 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_power_pxe.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_power_pxe.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_power_pxe title: metalctl_machine_power_pxe -sidebar_position: 68 +sidebar_position: 6 --- ## metalctl machine power pxe diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_power_reset.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_power_reset.md index c7cc75fe..6ec75425 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_power_reset.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_power_reset.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_power_reset title: metalctl_machine_power_reset -sidebar_position: 69 +sidebar_position: 7 --- ## metalctl machine power reset diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_reinstall.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_reinstall.md index cb255476..96a5e943 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_reinstall.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_reinstall.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_reinstall title: metalctl_machine_reinstall -sidebar_position: 70 +sidebar_position: 15 --- ## metalctl machine reinstall diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_reserve.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_reserve.md index 75058f82..3b036636 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_reserve.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_reserve.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_reserve title: metalctl_machine_reserve -sidebar_position: 71 +sidebar_position: 16 --- ## metalctl machine reserve diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_update-firmware.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_update-firmware.md index 658403b3..bf6c1473 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_update-firmware.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_update-firmware.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_update-firmware title: metalctl_machine_update-firmware -sidebar_position: 72 +sidebar_position: 18 --- ## metalctl machine update-firmware diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_update-firmware_bios.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_update-firmware_bios.md index dbe6881c..c242d44c 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_update-firmware_bios.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_update-firmware_bios.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_update-firmware_bios title: metalctl_machine_update-firmware_bios -sidebar_position: 73 +sidebar_position: 1 --- ## metalctl machine update-firmware bios diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_update-firmware_bmc.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_update-firmware_bmc.md index 48b9d23c..657e5bea 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_update-firmware_bmc.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_update-firmware_bmc.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_update-firmware_bmc title: metalctl_machine_update-firmware_bmc -sidebar_position: 74 +sidebar_position: 2 --- ## metalctl machine update-firmware bmc diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_update.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_update.md index 0a4dd020..f9caef68 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_update.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_machine_update.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_machine_update title: metalctl_machine_update -sidebar_position: 75 +sidebar_position: 17 --- ## metalctl machine update diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_markdown.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_markdown.md index 8d6d33dc..87010dfc 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_markdown.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_markdown.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_markdown title: metalctl_markdown -sidebar_position: 76 +sidebar_position: 11 --- ## metalctl markdown diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network.md index 305cc1d8..fc387c38 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_network title: metalctl_network -sidebar_position: 77 +sidebar_position: 12 --- ## metalctl network diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_allocate.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_allocate.md index e893e3d5..b9797d1a 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_allocate.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_allocate.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_network_allocate title: metalctl_network_allocate -sidebar_position: 78 +sidebar_position: 1 --- ## metalctl network allocate diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_apply.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_apply.md index 3421edc1..eaefcbb3 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_apply.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_apply.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_network_apply title: metalctl_network_apply -sidebar_position: 79 +sidebar_position: 2 --- ## metalctl network apply diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_create.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_create.md index 6ccf29a0..e057d356 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_create.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_create.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_network_create title: metalctl_network_create -sidebar_position: 80 +sidebar_position: 3 --- ## metalctl network create diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_delete.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_delete.md index 8fd3fd4c..c9bec60b 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_delete.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_delete.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_network_delete title: metalctl_network_delete -sidebar_position: 81 +sidebar_position: 4 --- ## metalctl network delete diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_describe.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_describe.md index 34ba3f5f..4b8dccfb 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_describe.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_describe.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_network_describe title: metalctl_network_describe -sidebar_position: 82 +sidebar_position: 5 --- ## metalctl network describe diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_edit.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_edit.md index 30060790..9fbef823 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_edit.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_edit.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_network_edit title: metalctl_network_edit -sidebar_position: 83 +sidebar_position: 6 --- ## metalctl network edit diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_free.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_free.md index d13823c9..fba11df7 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_free.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_free.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_network_free title: metalctl_network_free -sidebar_position: 84 +sidebar_position: 7 --- ## metalctl network free diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_ip.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_ip.md index cdbc4880..10f227ec 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_ip.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_ip.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_network_ip title: metalctl_network_ip -sidebar_position: 85 +sidebar_position: 8 --- ## metalctl network ip diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_ip_apply.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_ip_apply.md index 255dc9fb..4cd55356 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_ip_apply.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_ip_apply.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_network_ip_apply title: metalctl_network_ip_apply -sidebar_position: 86 +sidebar_position: 1 --- ## metalctl network ip apply diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_ip_create.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_ip_create.md index c5172193..018e01d7 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_ip_create.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_ip_create.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_network_ip_create title: metalctl_network_ip_create -sidebar_position: 87 +sidebar_position: 2 --- ## metalctl network ip create diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_ip_delete.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_ip_delete.md index 1f130b02..3d8a908f 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_ip_delete.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_ip_delete.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_network_ip_delete title: metalctl_network_ip_delete -sidebar_position: 88 +sidebar_position: 3 --- ## metalctl network ip delete diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_ip_describe.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_ip_describe.md index 16049315..d2df8c75 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_ip_describe.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_ip_describe.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_network_ip_describe title: metalctl_network_ip_describe -sidebar_position: 89 +sidebar_position: 4 --- ## metalctl network ip describe diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_ip_edit.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_ip_edit.md index 49987e9a..95a1330a 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_ip_edit.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_ip_edit.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_network_ip_edit title: metalctl_network_ip_edit -sidebar_position: 90 +sidebar_position: 5 --- ## metalctl network ip edit diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_ip_issues.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_ip_issues.md index ba7e6e03..828ace6f 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_ip_issues.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_ip_issues.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_network_ip_issues title: metalctl_network_ip_issues -sidebar_position: 91 +sidebar_position: 6 --- ## metalctl network ip issues diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_ip_list.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_ip_list.md index 664d0580..c2453b62 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_ip_list.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_ip_list.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_network_ip_list title: metalctl_network_ip_list -sidebar_position: 92 +sidebar_position: 7 --- ## metalctl network ip list diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_ip_update.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_ip_update.md index c8609cf3..aa623af9 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_ip_update.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_ip_update.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_network_ip_update title: metalctl_network_ip_update -sidebar_position: 93 +sidebar_position: 8 --- ## metalctl network ip update diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_list.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_list.md index 77c6f615..6403ff8b 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_list.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_list.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_network_list title: metalctl_network_list -sidebar_position: 94 +sidebar_position: 9 --- ## metalctl network list diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_update.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_update.md index 66b0d6e6..2d61076a 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_update.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_network_update.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_network_update title: metalctl_network_update -sidebar_position: 95 +sidebar_position: 10 --- ## metalctl network update diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_partition.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_partition.md index 335dc4b6..536c2137 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_partition.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_partition.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_partition title: metalctl_partition -sidebar_position: 96 +sidebar_position: 13 --- ## metalctl partition diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_partition_apply.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_partition_apply.md index ed390b6f..091a549a 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_partition_apply.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_partition_apply.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_partition_apply title: metalctl_partition_apply -sidebar_position: 97 +sidebar_position: 1 --- ## metalctl partition apply diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_partition_capacity.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_partition_capacity.md index 201d1bb5..c1d81828 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_partition_capacity.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_partition_capacity.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_partition_capacity title: metalctl_partition_capacity -sidebar_position: 98 +sidebar_position: 2 --- ## metalctl partition capacity diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_partition_create.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_partition_create.md index b3271e87..fbd9375b 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_partition_create.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_partition_create.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_partition_create title: metalctl_partition_create -sidebar_position: 99 +sidebar_position: 3 --- ## metalctl partition create diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_partition_delete.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_partition_delete.md index e2e5c9ef..3f3fda11 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_partition_delete.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_partition_delete.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_partition_delete title: metalctl_partition_delete -sidebar_position: 100 +sidebar_position: 4 --- ## metalctl partition delete diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_partition_describe.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_partition_describe.md index 5ae917d9..981245d9 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_partition_describe.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_partition_describe.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_partition_describe title: metalctl_partition_describe -sidebar_position: 101 +sidebar_position: 5 --- ## metalctl partition describe diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_partition_edit.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_partition_edit.md index b8dcc30f..c4202e33 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_partition_edit.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_partition_edit.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_partition_edit title: metalctl_partition_edit -sidebar_position: 102 +sidebar_position: 6 --- ## metalctl partition edit diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_partition_list.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_partition_list.md index e1f4560f..96d39788 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_partition_list.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_partition_list.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_partition_list title: metalctl_partition_list -sidebar_position: 103 +sidebar_position: 7 --- ## metalctl partition list diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_partition_update.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_partition_update.md index b5e200d2..e85e52d0 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_partition_update.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_partition_update.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_partition_update title: metalctl_partition_update -sidebar_position: 104 +sidebar_position: 8 --- ## metalctl partition update diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_project.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_project.md index f1719259..0f063aba 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_project.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_project.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_project title: metalctl_project -sidebar_position: 105 +sidebar_position: 14 --- ## metalctl project diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_project_apply.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_project_apply.md index 14c46a3f..d79bfa1b 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_project_apply.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_project_apply.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_project_apply title: metalctl_project_apply -sidebar_position: 106 +sidebar_position: 1 --- ## metalctl project apply diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_project_create.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_project_create.md index 955b2407..d4d5de41 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_project_create.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_project_create.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_project_create title: metalctl_project_create -sidebar_position: 107 +sidebar_position: 2 --- ## metalctl project create diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_project_delete.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_project_delete.md index 52e51067..a98a8a93 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_project_delete.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_project_delete.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_project_delete title: metalctl_project_delete -sidebar_position: 108 +sidebar_position: 3 --- ## metalctl project delete diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_project_describe.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_project_describe.md index 96e2d5e4..68b74fec 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_project_describe.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_project_describe.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_project_describe title: metalctl_project_describe -sidebar_position: 109 +sidebar_position: 4 --- ## metalctl project describe diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_project_edit.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_project_edit.md index b084e834..3aacf5aa 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_project_edit.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_project_edit.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_project_edit title: metalctl_project_edit -sidebar_position: 110 +sidebar_position: 5 --- ## metalctl project edit diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_project_list.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_project_list.md index 7a14e3ea..029a3ea0 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_project_list.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_project_list.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_project_list title: metalctl_project_list -sidebar_position: 111 +sidebar_position: 6 --- ## metalctl project list diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_project_update.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_project_update.md index 963f9d59..980e1244 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_project_update.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_project_update.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_project_update title: metalctl_project_update -sidebar_position: 112 +sidebar_position: 7 --- ## metalctl project update diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size.md index 8c133198..cfcc0bb3 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size title: metalctl_size -sidebar_position: 113 +sidebar_position: 15 --- ## metalctl size diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_apply.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_apply.md index 4ff628d7..1451fed2 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_apply.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_apply.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_apply title: metalctl_size_apply -sidebar_position: 114 +sidebar_position: 1 --- ## metalctl size apply diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_create.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_create.md index 2d90923d..a9a19303 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_create.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_create.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_create title: metalctl_size_create -sidebar_position: 115 +sidebar_position: 2 --- ## metalctl size create diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_delete.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_delete.md index eed18f17..48843221 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_delete.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_delete.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_delete title: metalctl_size_delete -sidebar_position: 116 +sidebar_position: 3 --- ## metalctl size delete diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_describe.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_describe.md index 8779a077..ca371bde 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_describe.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_describe.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_describe title: metalctl_size_describe -sidebar_position: 117 +sidebar_position: 4 --- ## metalctl size describe diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_edit.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_edit.md index 082c72ff..a1f71f40 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_edit.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_edit.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_edit title: metalctl_size_edit -sidebar_position: 118 +sidebar_position: 5 --- ## metalctl size edit diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_imageconstraint.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_imageconstraint.md index 7bf27753..220faa69 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_imageconstraint.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_imageconstraint.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_imageconstraint title: metalctl_size_imageconstraint -sidebar_position: 119 +sidebar_position: 6 --- ## metalctl size imageconstraint diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_imageconstraint_apply.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_imageconstraint_apply.md index 5e9b7de8..b5841a24 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_imageconstraint_apply.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_imageconstraint_apply.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_imageconstraint_apply title: metalctl_size_imageconstraint_apply -sidebar_position: 120 +sidebar_position: 1 --- ## metalctl size imageconstraint apply diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_imageconstraint_create.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_imageconstraint_create.md index 19c960cf..b09aa6b8 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_imageconstraint_create.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_imageconstraint_create.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_imageconstraint_create title: metalctl_size_imageconstraint_create -sidebar_position: 121 +sidebar_position: 2 --- ## metalctl size imageconstraint create diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_imageconstraint_delete.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_imageconstraint_delete.md index ee29501e..c0ff3d29 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_imageconstraint_delete.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_imageconstraint_delete.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_imageconstraint_delete title: metalctl_size_imageconstraint_delete -sidebar_position: 122 +sidebar_position: 3 --- ## metalctl size imageconstraint delete diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_imageconstraint_describe.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_imageconstraint_describe.md index 338c1a5f..6d376c12 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_imageconstraint_describe.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_imageconstraint_describe.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_imageconstraint_describe title: metalctl_size_imageconstraint_describe -sidebar_position: 123 +sidebar_position: 4 --- ## metalctl size imageconstraint describe diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_imageconstraint_edit.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_imageconstraint_edit.md index 610643f9..8efb3a2a 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_imageconstraint_edit.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_imageconstraint_edit.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_imageconstraint_edit title: metalctl_size_imageconstraint_edit -sidebar_position: 124 +sidebar_position: 5 --- ## metalctl size imageconstraint edit diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_imageconstraint_list.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_imageconstraint_list.md index 60a01e70..3c2ab091 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_imageconstraint_list.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_imageconstraint_list.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_imageconstraint_list title: metalctl_size_imageconstraint_list -sidebar_position: 125 +sidebar_position: 6 --- ## metalctl size imageconstraint list diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_imageconstraint_try.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_imageconstraint_try.md index 7a50db41..30fc54b5 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_imageconstraint_try.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_imageconstraint_try.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_imageconstraint_try title: metalctl_size_imageconstraint_try -sidebar_position: 126 +sidebar_position: 7 --- ## metalctl size imageconstraint try diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_imageconstraint_update.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_imageconstraint_update.md index 2f2b342b..36118214 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_imageconstraint_update.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_imageconstraint_update.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_imageconstraint_update title: metalctl_size_imageconstraint_update -sidebar_position: 127 +sidebar_position: 8 --- ## metalctl size imageconstraint update diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_list.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_list.md index dc0621ec..6e1b3eb3 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_list.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_list.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_list title: metalctl_size_list -sidebar_position: 128 +sidebar_position: 7 --- ## metalctl size list diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_reservation.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_reservation.md index 95a11e30..262698da 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_reservation.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_reservation.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_reservation title: metalctl_size_reservation -sidebar_position: 129 +sidebar_position: 8 --- ## metalctl size reservation diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_reservation_apply.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_reservation_apply.md index bed9743c..71a05f2d 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_reservation_apply.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_reservation_apply.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_reservation_apply title: metalctl_size_reservation_apply -sidebar_position: 130 +sidebar_position: 1 --- ## metalctl size reservation apply diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_reservation_create.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_reservation_create.md index 634a4ffb..ebd18720 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_reservation_create.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_reservation_create.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_reservation_create title: metalctl_size_reservation_create -sidebar_position: 131 +sidebar_position: 2 --- ## metalctl size reservation create diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_reservation_delete.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_reservation_delete.md index 3c74d437..19209810 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_reservation_delete.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_reservation_delete.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_reservation_delete title: metalctl_size_reservation_delete -sidebar_position: 132 +sidebar_position: 3 --- ## metalctl size reservation delete diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_reservation_describe.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_reservation_describe.md index 7ac0ef77..f167fa54 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_reservation_describe.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_reservation_describe.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_reservation_describe title: metalctl_size_reservation_describe -sidebar_position: 133 +sidebar_position: 4 --- ## metalctl size reservation describe diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_reservation_edit.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_reservation_edit.md index c47877b0..42c35ee6 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_reservation_edit.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_reservation_edit.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_reservation_edit title: metalctl_size_reservation_edit -sidebar_position: 134 +sidebar_position: 5 --- ## metalctl size reservation edit diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_reservation_list.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_reservation_list.md index 20a375cf..9e2bcbd6 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_reservation_list.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_reservation_list.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_reservation_list title: metalctl_size_reservation_list -sidebar_position: 135 +sidebar_position: 6 --- ## metalctl size reservation list diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_reservation_update.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_reservation_update.md index d6118b0c..ebe6f4bc 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_reservation_update.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_reservation_update.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_reservation_update title: metalctl_size_reservation_update -sidebar_position: 136 +sidebar_position: 7 --- ## metalctl size reservation update diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_reservation_usage.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_reservation_usage.md index ea910c7b..12d3b82f 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_reservation_usage.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_reservation_usage.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_reservation_usage title: metalctl_size_reservation_usage -sidebar_position: 137 +sidebar_position: 8 --- ## metalctl size reservation usage diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_suggest.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_suggest.md index 227541b2..ae167fdc 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_suggest.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_suggest.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_suggest title: metalctl_size_suggest -sidebar_position: 138 +sidebar_position: 9 --- ## metalctl size suggest diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_update.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_update.md index 0446bf24..3a222f68 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_update.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_size_update.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_size_update title: metalctl_size_update -sidebar_position: 139 +sidebar_position: 10 --- ## metalctl size update diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch.md index b8a545cb..7f1317a4 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_switch title: metalctl_switch -sidebar_position: 140 +sidebar_position: 16 --- ## metalctl switch diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_connected-machines.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_connected-machines.md index de9909ec..3ad93d8a 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_connected-machines.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_connected-machines.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_switch_connected-machines title: metalctl_switch_connected-machines -sidebar_position: 141 +sidebar_position: 1 --- ## metalctl switch connected-machines diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_console.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_console.md index a3c03695..c0404b22 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_console.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_console.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_switch_console title: metalctl_switch_console -sidebar_position: 142 +sidebar_position: 2 --- ## metalctl switch console diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_delete.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_delete.md index fbf3f1ca..1694b9a3 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_delete.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_delete.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_switch_delete title: metalctl_switch_delete -sidebar_position: 143 +sidebar_position: 3 --- ## metalctl switch delete diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_describe.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_describe.md index 2014f7ea..4bc0e78e 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_describe.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_describe.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_switch_describe title: metalctl_switch_describe -sidebar_position: 144 +sidebar_position: 4 --- ## metalctl switch describe diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_detail.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_detail.md index 51f9ecd3..8b85e048 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_detail.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_detail.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_switch_detail title: metalctl_switch_detail -sidebar_position: 145 +sidebar_position: 5 --- ## metalctl switch detail diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_edit.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_edit.md index a5519832..29f88569 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_edit.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_edit.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_switch_edit title: metalctl_switch_edit -sidebar_position: 146 +sidebar_position: 6 --- ## metalctl switch edit diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_list.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_list.md index 0f6acc21..e25ba941 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_list.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_list.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_switch_list title: metalctl_switch_list -sidebar_position: 147 +sidebar_position: 7 --- ## metalctl switch list diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_migrate.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_migrate.md index 8a151590..2ee227e5 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_migrate.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_migrate.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_switch_migrate title: metalctl_switch_migrate -sidebar_position: 148 +sidebar_position: 8 --- ## metalctl switch migrate diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_port.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_port.md index 07189394..2185a4ec 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_port.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_port.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_switch_port title: metalctl_switch_port -sidebar_position: 149 +sidebar_position: 9 --- ## metalctl switch port diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_port_describe.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_port_describe.md index a4680392..1eee3d87 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_port_describe.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_port_describe.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_switch_port_describe title: metalctl_switch_port_describe -sidebar_position: 150 +sidebar_position: 1 --- ## metalctl switch port describe diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_port_down.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_port_down.md index de261bc8..88db3f2f 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_port_down.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_port_down.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_switch_port_down title: metalctl_switch_port_down -sidebar_position: 151 +sidebar_position: 2 --- ## metalctl switch port down diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_port_up.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_port_up.md index 8565f2de..d87cd22d 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_port_up.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_port_up.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_switch_port_up title: metalctl_switch_port_up -sidebar_position: 152 +sidebar_position: 3 --- ## metalctl switch port up diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_replace.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_replace.md index 35dfd56e..879c7d27 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_replace.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_replace.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_switch_replace title: metalctl_switch_replace -sidebar_position: 153 +sidebar_position: 10 --- ## metalctl switch replace diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_ssh.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_ssh.md index e2f11667..6381a5a0 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_ssh.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_ssh.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_switch_ssh title: metalctl_switch_ssh -sidebar_position: 154 +sidebar_position: 11 --- ## metalctl switch ssh diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_update.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_update.md index 1a9c26ff..3fb2931e 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_update.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_switch_update.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_switch_update title: metalctl_switch_update -sidebar_position: 155 +sidebar_position: 12 --- ## metalctl switch update diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_tenant.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_tenant.md index 43c1f095..51217d74 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_tenant.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_tenant.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_tenant title: metalctl_tenant -sidebar_position: 156 +sidebar_position: 17 --- ## metalctl tenant diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_tenant_apply.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_tenant_apply.md index 70601278..586138c2 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_tenant_apply.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_tenant_apply.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_tenant_apply title: metalctl_tenant_apply -sidebar_position: 157 +sidebar_position: 1 --- ## metalctl tenant apply diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_tenant_create.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_tenant_create.md index 60775127..339fce5b 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_tenant_create.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_tenant_create.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_tenant_create title: metalctl_tenant_create -sidebar_position: 158 +sidebar_position: 2 --- ## metalctl tenant create diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_tenant_delete.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_tenant_delete.md index 84d434d0..fd80f9f8 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_tenant_delete.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_tenant_delete.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_tenant_delete title: metalctl_tenant_delete -sidebar_position: 159 +sidebar_position: 3 --- ## metalctl tenant delete diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_tenant_describe.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_tenant_describe.md index 681f25ad..4cf984ac 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_tenant_describe.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_tenant_describe.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_tenant_describe title: metalctl_tenant_describe -sidebar_position: 160 +sidebar_position: 4 --- ## metalctl tenant describe diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_tenant_edit.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_tenant_edit.md index 78578de6..aaa17901 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_tenant_edit.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_tenant_edit.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_tenant_edit title: metalctl_tenant_edit -sidebar_position: 161 +sidebar_position: 5 --- ## metalctl tenant edit diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_tenant_list.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_tenant_list.md index 653cc168..b847c89a 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_tenant_list.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_tenant_list.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_tenant_list title: metalctl_tenant_list -sidebar_position: 162 +sidebar_position: 6 --- ## metalctl tenant list diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_tenant_update.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_tenant_update.md index f3ccffaa..a0e1e9da 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_tenant_update.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_tenant_update.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_tenant_update title: metalctl_tenant_update -sidebar_position: 163 +sidebar_position: 7 --- ## metalctl tenant update diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_update.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_update.md index 58e0e06b..7f7959c6 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_update.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_update.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_update title: metalctl_update -sidebar_position: 164 +sidebar_position: 18 --- ## metalctl update diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_update_check.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_update_check.md index 72959973..6ea38746 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_update_check.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_update_check.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_update_check title: metalctl_update_check -sidebar_position: 165 +sidebar_position: 1 --- ## metalctl update check diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_update_do.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_update_do.md index 2e78389e..93f650ca 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_update_do.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_update_do.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_update_do title: metalctl_update_do -sidebar_position: 166 +sidebar_position: 2 --- ## metalctl update do diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_version.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_version.md index 5f0c6f0b..959315f7 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_version.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_version.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_version title: metalctl_version -sidebar_position: 167 +sidebar_position: 19 --- ## metalctl version diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_vpn.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_vpn.md index 0f454201..8f7f2333 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_vpn.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_vpn.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_vpn title: metalctl_vpn -sidebar_position: 168 +sidebar_position: 20 --- ## metalctl vpn diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_vpn_key.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_vpn_key.md index f44f9afd..fb9a73a0 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_vpn_key.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_vpn_key.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_vpn_key title: metalctl_vpn_key -sidebar_position: 169 +sidebar_position: 1 --- ## metalctl vpn key diff --git a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_whoami.md b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_whoami.md index 64e33d66..c1c8f323 100644 --- a/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_whoami.md +++ b/versioned_docs/version-v0.22/08-References/Clients/metalctl/metalctl_whoami.md @@ -1,7 +1,7 @@ --- slug: /references/metalctl_whoami title: metalctl_whoami -sidebar_position: 170 +sidebar_position: 21 --- ## metalctl whoami diff --git a/versioned_docs/version-v0.22/08-References/Deployment/metal-images/ARCHITECTURE.md b/versioned_docs/version-v0.22/08-References/Deployment/metal-images/ARCHITECTURE.md index 0d80f385..e86b9dd2 100644 --- a/versioned_docs/version-v0.22/08-References/Deployment/metal-images/ARCHITECTURE.md +++ b/versioned_docs/version-v0.22/08-References/Deployment/metal-images/ARCHITECTURE.md @@ -1,7 +1,7 @@ --- slug: /references/ARCHITECTURE title: ARCHITECTURE -sidebar_position: 3 +sidebar_position: 1 --- # Architectural Decisions @@ -17,35 +17,12 @@ sidebar_position: 3 * build an image based on the published docker images of OS vendors * add necessary packages and services in a Dockerfile for the OS to provide: * sudo functionality - * a SSH-Server - * the FRR-Suite for BGP (the servers act as a BGP router/speaker) - * yq for reading YAML-Files -* provide a `install.sh` file within the image that will be invoked by the `metal-hammer` - * writes the `/etc/fstab` based on the UUIDs of the connected disks - * setup UEFI-Boot - * create an OS user with sudo rights - * set the SSH public keys that are allowed to log into the system - * sets the hostname - * sets the network configuration of the server (IP-Addresses at loopback device, ASN for BGP) - * sets the token used for phoning home to the metal-api - -The `install.sh` has to be implemented for every OS. Between `install.sh` and the `metal-hammer` component exists this contract: - -* the `metal-hammer` writes the file `/etc/metal/install.yaml` which contains data, that is not known during build time and can be customized by users of the `metal-api` - - ```yaml - --- - hostname: some - ipaddress: 10.0.0.2/32 - asn: 420000001 - sshpublickeys: "" - ``` - -* `install.sh` is expected to create the file `/etc/metal/boot-info.yaml` which contains data, that the `metal-hammer` will use for the `kexec-reboot` of the server. - - ```yaml - --- - initrd: - cmdline: - kernel: - ``` + * an SSH-Server + * the [FRR-Suite](https://frrouting.org/) for BGP (the servers act as a BGP router/speaker) + * [ignition](https://www.flatcar.org/docs/latest/provisioning/ignition/) for userdata execution + * `mdadm` for raid fsl configuration + * `lvm` for volume group fsl provisioning + * `grub` for bootloader installation + * `timesyncd` for NTP time synchronization +* these services will be configured by the [os-installer](https://github.com/metal-stack/os-installer) invoked during machine provisioning by the metal-hammer +* for out-of-tree custom images, build owners might want to provide a `/etc/metal/os-installer.yaml` file within the image that can provide special instructions for the os-installer diff --git a/versioned_docs/version-v0.22/08-References/Deployment/metal-images/IMAGE_STORE.md b/versioned_docs/version-v0.22/08-References/Deployment/metal-images/IMAGE_STORE.md index 347315a7..a0e7ce51 100644 --- a/versioned_docs/version-v0.22/08-References/Deployment/metal-images/IMAGE_STORE.md +++ b/versioned_docs/version-v0.22/08-References/Deployment/metal-images/IMAGE_STORE.md @@ -1,7 +1,7 @@ --- slug: /references/IMAGE_STORE title: IMAGE_STORE -sidebar_position: 3 +sidebar_position: 0 --- # Image store @@ -10,12 +10,12 @@ The metal-images tarballs are stored on . The ta The actual directory layout should look like: ```bash -////img.tar.lz4 -////img.tar.lz4.md5 -////packages.txt +///img.tar.lz4 +///img.tar.lz4.md5 +///packages.txt ``` -Where `` is `/` for the master branch and `/${CI_COMMIT_REF_SLUG}/` for branches and merge requests. +Where `` is `stable` for the master branch, `` for releases and `pull_requests/-` for pull requests. `` is the name of the os in use, some images like `firewall` are derived from another os image (in this case the `ubuntu` image). diff --git a/versioned_docs/version-v0.22/08-References/Deployment/mini-lab/assets/overview.drawio.svg b/versioned_docs/version-v0.22/08-References/Deployment/mini-lab/assets/overview.drawio.svg index 227918ec..377bfcfb 100644 --- a/versioned_docs/version-v0.22/08-References/Deployment/mini-lab/assets/overview.drawio.svg +++ b/versioned_docs/version-v0.22/08-References/Deployment/mini-lab/assets/overview.drawio.svg @@ -1,8 +1,8 @@ linux-desktop linux-desktop - containerlab + containerlab containerlab - kind-cluster + kind-cluster kind-cluster metal control plane metal control plane @@ -16,7 +16,7 @@ leaf02 metal-core metal-core - masterdata-api + masterdata-api masterdata-api auditing @@ -34,21 +34,23 @@ masterdata-... mini-lab mini-lab - docker network 172.17.0.1/16 - docker network 172.17.0.1/16 - Ingress-Controller (NGINX) - Ingress-Controller (... - machine01 + docker network 172.42.0.1/16 + docker network 172.42.0.1/16 + Ingress-Controller (NGINX) + Ingress-C... + machine01 machine01 exit exit leaf01 leaf01 - metal-core + metal-core metal-core veth link veth link - + metal-stack Gateway (Envoy Gateway) + metal-stack Gate... + Text is not SVG - cannot display diff --git a/versioned_docs/version-v0.22/08-References/Deployment/mini-lab/mini-lab.md b/versioned_docs/version-v0.22/08-References/Deployment/mini-lab/mini-lab.md index f1a0c304..c1546918 100644 --- a/versioned_docs/version-v0.22/08-References/Deployment/mini-lab/mini-lab.md +++ b/versioned_docs/version-v0.22/08-References/Deployment/mini-lab/mini-lab.md @@ -20,6 +20,9 @@ This project can also be used as a template for writing your own metal-stack dep - [Known Limitations](#known-limitations) - [Try it out](#try-it-out) - [Power management](#power-management) +- [Development](#development) + - [Release vector](#release-vector) + - [Using local checkouts of dependencies](#using-local-checkouts-of-dependencies) - [Flavors](#flavors) - [Network topology](#network-topology) - [V2 Quickstart](#v2-quickstart) @@ -197,7 +200,7 @@ make power-- ``` ## Development -If you want to contribute to the _metal-stack_ project, you can use the mini-lab as a local development environment. It allows you to quickly test changes to the _metal-stack_ components without needing any external clusters or hardware. +If you want to contribute to the _metal-stack_ project, you can use the mini-lab as a local development environment. It allows you to quickly test changes to the _metal-stack_ components without needing any external clusters or hardware. You can also use it to test changes to the Ansible roles and modules used by the _metal-stack_. ### Release vector @@ -215,7 +218,7 @@ Further overrides can be looked up in `metal-roles` where the mapping is defined ### Using local checkouts of dependencies -By default, the `mini-lab` runs with pre-packaged Ansible roles and modules. +By default, the `mini-lab` runs with pre-packaged Ansible roles and modules. If you want to use local checkouts of dependencies for development, you must start the `mini-lab` with `DEV=true`: ```bash @@ -278,5 +281,5 @@ Password: Gerrit.Guest123! Zitadel Admin: -User: admin@metal-stack.zitadel.172.17.0.1.nip.io +User: admin@metal-stack.auth.172.17.0.1.nip.io Password: Password1! diff --git a/versioned_docs/version-v0.22/08-References/Gardener/gardener-extension-ontap/README.md b/versioned_docs/version-v0.22/08-References/Gardener/gardener-extension-ontap/README.md new file mode 100644 index 00000000..6fdc6f12 --- /dev/null +++ b/versioned_docs/version-v0.22/08-References/Gardener/gardener-extension-ontap/README.md @@ -0,0 +1,68 @@ +--- +slug: /references/README +title: README +sidebar_position: 0 +--- + +# Gardener Extension for ONTAP Documentation + +> Technical background documentation for the extension, ONTAP, and their integration into metal-stack. + +These pages supplement the concise project overview and development instructions in the [repository README](./README.md). They can be read independently as topic-based reference material. + +--- + +## Topics + +| Topic | Content | Start here | +|-------|---------|------------| +| **NetApp ONTAP** | ONTAP concepts, HA pairs, MetroCluster, SVMs, aggregates, LIFs, NVMe/TCP, Trident, and the PVC data path | [`./././ontap-storage.md`](ontap-storage.md) | +| **Gardener Extension for ONTAP** | Activation, inputs, reconciliation, SVM and credential lifecycle, ManagedResources, shoot webhook, and cleanup boundaries | [`./././gardener-extension-ontap.md`](gardener-extension-ontap.md) | + +--- + +## Recommended Reading Paths + +### I want to understand the storage architecture + +1. [`ONTAP Storage`](ontap-storage.md) — from the physical MetroCluster to a project-specific SVM +2. [`Gardener Extension for ONTAP`](gardener-extension-ontap.md) — how the architecture is automated for a shoot cluster + +### I am investigating a provisioning failure + +1. [`Gardener Extension for ONTAP: Reconciliation`](gardener-extension-ontap.md#reconciliation) +2. [`Gardener Extension for ONTAP: State Inspection`](gardener-extension-ontap.md#state-inspection) +3. [`ONTAP Storage: Management and Data Paths`](ontap-storage.md#management-and-data-paths) + +### I am investigating a mount or I/O failure + +1. [`ONTAP Storage: From a PVC to a Volume`](ontap-storage.md#from-a-pvc-to-a-volume) +2. [`ONTAP Storage: Management and Data Paths`](ontap-storage.md#management-and-data-paths) +3. [`Gardener Extension for ONTAP: Shoot Webhook`](gardener-extension-ontap.md#shoot-webhook-and-node-preparation) + +### I am planning maintenance or cleanup + +1. [`ONTAP Storage: Failure Behavior`](ontap-storage.md#failure-behavior) +2. [`Gardener Extension for ONTAP: Delete Lifecycle`](gardener-extension-ontap.md#delete-lifecycle-and-responsibility-boundary) + +--- + +## System Overview + + + +The components have distinct responsibilities: + +| Component | Responsibility | +|-----------|----------------| +| **Cloud API / Metal API** | Detects the ONTAP-enabled cluster configuration and reserves project-specific LIF addresses. | +| **Gardener extension** | Establishes the desired ONTAP and shoot state. | +| **ONTAP MetroCluster** | Stores and replicates data and provides SVMs and network endpoints. | +| **Trident** | Translates Kubernetes storage operations into ONTAP operations. | +| **Kubernetes worker** | Connects the remote block device over NVMe/TCP and mounts it into the workload. | + +--- + +## Documentation Structure + +[`gardener-extension-ontap.md`](gardener-extension-ontap.md) documents the behavior of this repository and links to the relevant source paths. [`ontap-storage.md`](ontap-storage.md) describes the wider platform and storage context in which the extension operates. diff --git a/versioned_docs/version-v0.22/08-References/Gardener/gardener-extension-ontap/assets/ontap-provisioning-and-data-paths.png b/versioned_docs/version-v0.22/08-References/Gardener/gardener-extension-ontap/assets/ontap-provisioning-and-data-paths.png new file mode 100644 index 00000000..6343432a Binary files /dev/null and b/versioned_docs/version-v0.22/08-References/Gardener/gardener-extension-ontap/assets/ontap-provisioning-and-data-paths.png differ diff --git a/versioned_docs/version-v0.22/08-References/Gardener/gardener-extension-ontap/gardener-extension-ontap.md b/versioned_docs/version-v0.22/08-References/Gardener/gardener-extension-ontap/gardener-extension-ontap.md index 68540263..b8b79502 100644 --- a/versioned_docs/version-v0.22/08-References/Gardener/gardener-extension-ontap/gardener-extension-ontap.md +++ b/versioned_docs/version-v0.22/08-References/Gardener/gardener-extension-ontap/gardener-extension-ontap.md @@ -10,12 +10,17 @@ This repository contains the Gardener extension controller for managing the NetA ## Table of Contents +- [Documentation](#documentation) - [Prerequisites](#prerequisites) - [Development Workflow](#development-workflow) - [Test Environment Setup](#test-environment-setup) - [Known Issues](#known-issues) - [TODO List](#todo-list) +## Documentation + +Architecture, reconciliation, credential lifecycle, data paths, and troubleshooting are documented in the [documentation index](./README.md). + ## Prerequisites - A local Gardener setup @@ -310,4 +315,3 @@ spec: - ✅ = Resource exists and is correct - ❌ = Resource missing or not functional - diff --git a/versioned_docs/version-v0.22/08-References/Gardener/gardener-extension-ontap/ontap-storage.md b/versioned_docs/version-v0.22/08-References/Gardener/gardener-extension-ontap/ontap-storage.md new file mode 100644 index 00000000..fbb7a998 --- /dev/null +++ b/versioned_docs/version-v0.22/08-References/Gardener/gardener-extension-ontap/ontap-storage.md @@ -0,0 +1,372 @@ +--- +slug: /references/ontap-storage +title: ontap-storage +sidebar_position: 1 +--- + +# ONTAP Storage + +> How NetApp ONTAP works as a MetroCluster and how it is provided to Kubernetes through Gardener and Trident. + +--- + +## Context + +ONTAP is the platform's persistent, network-attached block storage system. Kubernetes workers do not hold the volume locally. They connect to a block device in the ONTAP system over NVMe/TCP. + +This is the essential difference from local LVM storage: + +| Property | ONTAP | Local LVM | +|------------------------|--------------------------------------|--------------------------------------| +| Storage location | External storage system | Local worker disk | +| Access | NVMe/TCP over the network | Directly on the node | +| Node loss | Data remains in the storage system | Local data can be lost with the node | +| Site protection | Synchronous MetroCluster replication | No cross-site protection | +| Kubernetes integration | NetApp Trident CSI | CSI Driver LVM | + +This page explains ONTAP and the end-to-end data path. The automation is documented separately in [`./././gardener-extension-ontap.md`](gardener-extension-ontap.md). + +--- + +## ONTAP Concepts and Object Model + +ONTAP separates physical capacity, tenants, network endpoints, and the volumes used by Kubernetes. The following objects are important for understanding the platform: + +| Term | Meaning | +|--------------------------------|---------------------------------------------------------------------------------------------| +| **Node / controller** | Physical ONTAP instance that provides disks, network ports, and storage services | +| **HA pair** | Two controllers at one site that can take over for each other if a node fails | +| **ONTAP cluster** | Administrative grouping of the local HA pair | +| **MetroCluster** | Cross-site grouping of two ONTAP clusters with synchronous replication | +| **Aggregate** | ONTAP capacity pool built from the physical disks of a node | +| **SVM** | Storage Virtual Machine; the logical and administrative tenant boundary for a Metal project | +| **Volume** | Logical storage area within an SVM that draws capacity from its assigned aggregates | +| **LIF** | Logical Interface; an IP-based SVM interface for management or data access | +| **NVMe subsystem / namespace** | ONTAP objects through which a block device is made available to an NVMe host | +| **Trident backend** | Connection between Trident in the shoot and the project-specific SVM | + +The simplified hierarchy is: + +```text +MetroCluster +├── ONTAP cluster, site A +│ ├── Controller A +│ ├── Controller B +│ └── Aggregates +└── ONTAP cluster, site B + ├── Controller A + ├── Controller B + └── Aggregates + +Project SVM +├── Management LIF +├── Data LIF 1 +├── Data LIF 2 +├── Volumes +└── NVMe configuration +``` + +An SVM is not separate hardware and does not own exclusive disks. It is a logical view of the cluster resources assigned to it. In this integration, an SVM belongs to a Metal project and can be used by multiple shoots in that project. + +--- + +## Physical Topology + +A MetroCluster consists of two ONTAP clusters at separate sites: + +| Location | Topology | Role | +|----------------------|------------------------------------------|-------------------------------| +| Site A | Two ONTAP controllers as a local HA pair | One MetroCluster site | +| Site B | Two ONTAP controllers as a local HA pair | Second MetroCluster site | +| Third failure domain | Optional ONTAP Mediator | Quorum and switchover support | + +The controllers at a site are connected through a local cluster interconnect. The two sites communicate through redundant inter-site links. These links carry synchronous replication and cross-site MetroCluster metadata. Bandwidth, switch models, and specific network segments depend on the deployment. + +Several management and access networks exist separately: + +- controller and cluster management for administration and the ONTAP REST API, +- intercluster communication between the storage systems, +- BGP-routed SVM LIFs for Trident and the Kubernetes workers, +- BMC access for out-of-band administration. + +This separation is important: Kubernetes data traffic does not use the global cluster management addresses, and MetroCluster replication does not pass through the shoot cluster. + +--- + +## How ONTAP MetroCluster Works + +A MetroCluster spans two sites. At each site, two controllers form a local HA pair. MetroCluster replicates data synchronously between the sites. + +| Layer | Responsibility | +|--------------------------------|--------------------------------------------------------------| +| **Local HA pair** | Handles the failure of a single controller. | +| **MetroCluster between sites** | Maintains a synchronous copy of the data at the second site. | +| **ONTAP Mediator** | Supports the switchover decision if an entire site fails. | + +A project-specific Storage Virtual Machine (SVM) is active at one site. The corresponding MetroCluster sync destination with the `-mc` suffix exists at the other site. Applications do not write to both sides simultaneously: they access the active SVM while ONTAP performs synchronous replication to the other side. + +### Local HA and Cross-Site Replication + +Local HA and MetroCluster address different failure classes: + +- If one controller fails, its partner in the local HA pair takes over. +- If an entire site fails, the previously passive MetroCluster site can take over the storage functions. +- Until a switchover occurs, exactly one side of the SVM remains active and the other side remains the sync destination. + +A successful synchronous write has reached both MetroCluster sites. For replicated writes, the architecture therefore targets an RPO of 0: an acknowledged write should not be missing after the loss of a site. This protects the stored blocks, but it does not replace recovery of the Kubernetes and network paths. + +### ONTAP Mediator + +The ONTAP Mediator runs separately from the two storage sites. It observes both sides and supports the decision to perform an automatic switchover when an entire site fails. This helps prevent both sides from becoming active simultaneously. + +The Mediator does not transfer application data and is not in the I/O path. If the Mediator is unavailable, some failure scenarios can require a manual switchover. + +The active MetroCluster site depends on the current state. When creating a new project SVM, the Gardener extension selects the ONTAP cluster with the lower current total number of volumes. + +--- + +## Failure Behavior + +Three separate layers must work together during failover: + +1. ONTAP performs controller takeover or a MetroCluster switchover. +2. The management and data LIFs must be reachable through the network at the active site. +3. Trident and the Linux NVMe/TCP stack reconnect the volumes in the shoot cluster. + +MetroCluster protects the data and makes it available at the second site. Kubernetes, Trident, and the network then restore workload access. + +| Failure | Primary response | What matters next | +|----------------------------|-----------------------------------------|-----------------------------------------------------------------| +| Single ONTAP controller | Local partner takes over | LIF and NVMe/TCP connections must remain reachable | +| Entire storage site | MetroCluster switchover | BGP routing, LIF reachability, and Trident reconnect | +| Kubernetes worker | Workload starts on another worker | The new worker establishes an NVMe/TCP connection to the volume | +| Management path disruption | Existing I/O can continue independently | New volumes, expansion, and snapshot operations can fail | +| Data path disruption | Worker cannot reach the block device | Inspect the data LIF, TCP 4420, and NVMe session | + +A switchover therefore does not guarantee an interruption-free application. ONTAP, routing, CSI reconnection, Kubernetes scheduling, and the application itself all contribute to the actual recovery time. + +MetroCluster also does not switch automatically to the other site solely because latency has increased. Latency is an operational and diagnostic condition, not an automatic switchover trigger. + +--- + +## SVMs as the Project Boundary + +The SVM is the central handoff point between the platform and ONTAP: + +- It contains the project-specific network endpoints. +- It has its own NVMe configuration. +- It has its own users and roles. +- Trident manages volumes only within this SVM. +- It can draw capacity from every aggregate assigned to it. + +The Gardener extension assigns all available aggregates at the selected ONTAP site to a new SVM. The aggregates remain cluster resources and are not reserved exclusively for the project. If another aggregate is added later, reconciliation can add it to the SVM assignment. + +### Project-Specific, Not Shoot-Specific + +The Cloud API reserves LIF addresses for the Metal project. The extension also derives the SVM name from the project ID. The resulting model is: + +```text +Metal project + | + +--> one project SVM + | +--> one management LIF + | +--> two data LIFs + | + +--> Shoot A --> dedicated SVM user + dedicated Trident backend + | + +--> Shoot B --> dedicated SVM user + dedicated Trident backend +``` + +This model avoids creating an SVM for every shoot. Their lifecycles are not identical, however: a shoot can be deleted while another shoot still requires the project SVM. + +--- + +## How We Use ONTAP + +ONTAP is not provisioned directly for each Kubernetes PVC. Instead, an automated chain connects the project configuration to the mounted block device: + +```text +Metal project + | + v +1 management LIF + 2 data LIFs + | + v +Gardener extension in the seed + | + +--> project-specific SVM in ONTAP + | + +--> Trident + backend + StorageClasses in the shoot + | + v + Application PVC + | + v + ONTAP volume over NVMe/TCP +``` + +### Project-Specific SVM + +The Cloud API reserves three BGP-routed `/32` addresses for an ONTAP-enabled project: + +- one management LIF for ONTAP operations, +- two data LIFs for NVMe/TCP traffic. + +The Gardener extension reads the project ID and these IP addresses from the shoot configuration. If the SVM is missing, the extension creates it, enables NVMe, assigns the ONTAP aggregates, and creates the LIFs. If the SVM already exists, the extension inspects and completes its state. + +The SVM belongs to the Metal project and can be used by multiple ONTAP-enabled shoot clusters in that project. The ONTAP user and corresponding credential Secret are shoot-specific. + +This separation provides two security boundaries: + +- The project determines which SVM contains its volumes. +- Each shoot receives only its own Trident credentials. + +The complete reconciliation and credential logic is described in [`Gardener Extension for ONTAP`](gardener-extension-ontap.md). + +### Trident in the Shoot Cluster + +The extension deploys NetApp Trident and the required resources into the shoot as Gardener `ManagedResource` objects. These include: + +- the Trident operator, controller, and node plugin, +- `TridentBackendConfig` for the project-specific SVM, +- the shoot-specific credential Secret, +- the `ontap-gold` and `ontap-encrypted` StorageClasses, +- snapshot resources, +- a network policy for the management and data LIFs when the `firewall` namespace exists. + +The backend uses the Trident `ontap-san` driver with `sanType: nvme`. A shoot webhook also prepares the Trident node DaemonSet so the `nvme-tcp` kernel module is available on every worker. + +### Management and Data Paths + +Runtime communication is deliberately separated: + +| Source | Destination | Protocol | Purpose | +|---------------------------------|--------------------------|---------------------|------------------------------------------| +| Gardener extension in the seed | ONTAP cluster management | HTTPS / TCP 443 | Manage SVMs, LIFs, aggregates, and users | +| Trident controller in the shoot | SVM management LIF | HTTPS / TCP 443 | Manage volumes and snapshots | +| Kubernetes worker | SVM data LIFs | NVMe/TCP / TCP 4420 | Workload block I/O | + +The management LIF does not carry application data. Conversely, the data LIFs are not used for administrative ONTAP operations. This separation is also the most important starting point for troubleshooting. + +### Why One Management LIF and Two Data LIFs? + +The management LIF provides a stable, project-specific API endpoint for Trident. Trident therefore does not need to use the global ONTAP cluster administrative addresses. + +The data LIFs provide the SVM's NVMe/TCP endpoints. Two LIFs permit multiple network paths and distribute the endpoints across the ONTAP nodes. They are not a substitute for MetroCluster: LIF redundancy protects the access path, while MetroCluster protects the storage site and data copy. + +In production, the three SVM LIFs are announced through BGP as `/32` VIPs. The Trident controller and workers can therefore reach the currently routed endpoints without knowing the internal ONTAP management networks at either site. + +### Which Component Uses Which Address? + +- The Gardener extension connects to the ONTAP cluster management addresses because it manages privileged objects such as SVMs and users. +- Trident connects to the project-specific management LIF because it manages only that SVM's backend. +- The worker connects to the data LIFs because the NVMe/TCP I/O terminates there. + +If a PVC cannot be created, inspect the management path first. If the volume exists but cannot be mounted, focus on the data path and the node. + +### From a PVC to a Volume + +1. An application creates a PVC with `storageClassName: ontap-gold` or `ontap-encrypted`. +2. Kubernetes calls the Trident CSI controller. +3. Trident selects the appropriate storage pool and creates the volume through the SVM management LIF. +4. The Trident node plugin connects the worker to a data LIF over NVMe/TCP. +5. The block device is made available on the worker, formatted with `ext4`, and mounted into the pod. +6. With `ontap-encrypted`, the device is additionally opened with LUKS2 before it is mounted. + +Kubernetes ultimately sees a `PersistentVolume`, and the pod sees a regular mount. Trident and ONTAP encapsulate the SVM, ONTAP volume, NVMe configuration, and session details. + +A simple unencrypted PVC looks like this: + +```yaml +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: app-data +spec: + storageClassName: ontap-gold + accessModes: + - ReadWriteOnce + resources: + requests: + storage: 10Gi +``` + +| StorageClass | Use | +|-------------------|--------------------------------------------------------------------------------------------| +| `ontap-gold` | Thin-provisioned block storage with `ext4`; volume expansion is allowed. | +| `ontap-encrypted` | Client-side LUKS2-encrypted block storage; the application provides the passphrase Secret. | + +> **Important:** With `ontap-encrypted`, ONTAP sees only encrypted blocks. If the LUKS Secret is lost, the data cannot be recovered. + +### Encrypted Storage + +The passphrase is stored in a Secret named `storage-encryption-key` in the PVC namespace: + +```yaml +apiVersion: v1 +kind: Secret +metadata: + name: storage-encryption-key + namespace: application +stringData: + luks-passphrase-name: key-a + luks-passphrase: +``` + +The StorageClass references this Secret for node-stage and node-expand operations. Encryption takes place on the Kubernetes worker: + +```text +Application + | + v +ext4 file system + | + v +LUKS2 device + | + v +NVMe/TCP + | + v +ONTAP sees encrypted blocks +``` + +Secret backup, access control, and tested passphrase rotation therefore belong to the application lifecycle rather than the ONTAP MetroCluster lifecycle. + +### Volume Expansion and Snapshots + +Both StorageClasses allow volume expansion. During expansion, Trident first enlarges the backend volume. The block device, LUKS layer when applicable, and file system are then expanded on the worker. + +The extension also provides the `ontap-snapshot` `VolumeSnapshotClass`. Its `deletionPolicy` is `Delete`: deleting the Kubernetes snapshot object also deletes the corresponding backend snapshot. + +Snapshots and MetroCluster replication solve different problems. MetroCluster protects against storage site failure. A snapshot provides an earlier data state within the storage lifecycle. + +--- + +## The Most Important Operational Boundary + +Deleting a shoot cluster does not automatically remove the project-specific SVM, its LIFs, or the ONTAP volumes. This is intentional because other shoots in the project can still use the SVM. Complete project cleanup must therefore happen separately and in a controlled order. + +A safe project cleanup must answer at least these questions: + +1. Does an ONTAP-enabled shoot still exist in the project? +2. Are any volumes or snapshots still required? +3. Can the project SVM, including its NVMe configuration and LIFs, be removed? +4. Has the MetroCluster sync destination also been cleaned up? +5. Can the three project-specific IP addresses then be released? + +IP addresses must not be released while LIFs with those addresses still exist in ONTAP. Otherwise, orphaned ONTAP objects can block later reuse of an address. + +--- + +## Summary + +- MetroCluster replicates data synchronously between two sites; local HA pairs additionally protect against controller failures. +- Each Metal project has one ONTAP SVM with one management LIF and two data LIFs. +- The Gardener extension manages the ONTAP-side and shoot-side resources. +- Trident translates Kubernetes PVCs into ONTAP volumes. +- Management uses HTTPS on port 443; block I/O uses NVMe/TCP on port 4420. + +--- + +> Back to the [`documentation index`](./README.md) · Implementation details: [`gardener-extension-ontap.md`](gardener-extension-ontap.md) diff --git a/versioned_docs/version-v0.22/08-References/Kubernetes/cluster-api-provider-metal-stack/assets/overview-kamaji.drawio.svg b/versioned_docs/version-v0.22/08-References/Kubernetes/cluster-api-provider-metal-stack/assets/overview-kamaji.drawio.svg new file mode 100644 index 00000000..e69de29b diff --git a/versioned_docs/version-v0.22/08-References/Storage/duros-controller/MULTITENANCY.md b/versioned_docs/version-v0.22/08-References/Storage/duros-controller/MULTITENANCY.md index 8018d3a7..1d2b3dd6 100644 --- a/versioned_docs/version-v0.22/08-References/Storage/duros-controller/MULTITENANCY.md +++ b/versioned_docs/version-v0.22/08-References/Storage/duros-controller/MULTITENANCY.md @@ -1,7 +1,7 @@ --- slug: /references/MULTITENANCY title: MULTITENANCY -sidebar_position: 2 +sidebar_position: 0 --- # Multi tenancy with lightbits storage @@ -20,7 +20,7 @@ Multi tenancy in metal-stack and gardener are based on projects. In metal-stack, Lightbits storage has also the notion of a project, once a cluster is created, a new project is created in the lightos storage API, the project there matches the project from the gardener/metal-stack perspective. For every cluster an authentication token in the JWT format is created, this token is able to create/update/list/delete volumes in the lightos cluster in the given project, resp. lightos project. For every kubernetes cluster, even in the same project, an individual JWT token is created. The token is also set to have a 8 day validity, 1 day before the token will get invalid and the cluster still exists, a new token is issued. -The duros-controller is responsible to create such tokens, it is deployed in the seed's shoot namespace (find details on gardener architecture [here](../../../05-Concepts/01-architecture.mdx)). This namespace is fully managed by the provider and invisible for the cluster user. Once the token has been created, the token is stored in a secret in the actual user cluster alongside with the deployment of the lightbits CSI driver and storage classes. This CSI driver will then be responsible to create/update/delete volumes based on the manifests deployed in the cluster. +The duros-controller is responsible to create such tokens, it is deployed in the seed's shoot namespace (find details on gardener architecture [here](./architecture.md)). This namespace is fully managed by the provider and invisible for the cluster user. Once the token has been created, the token is stored in a secret in the actual user cluster alongside with the deployment of the lightbits CSI driver and storage classes. This CSI driver will then be responsible to create/update/delete volumes based on the manifests deployed in the cluster. ```bash k get sc @@ -79,6 +79,7 @@ metadata: namespace: kube-system resourceVersion: "1837602" uid: 406c3583-d4cd-4a0b-8615-3a6f2b9b7577 + ``` ## Lightbits and NVMEoTCP @@ -125,4 +126,4 @@ nqn.2019-09.com.lightbitslabs:host:shoot--pd76mr--inttest0-group-0-845b8-49r7x.n ## Further improvements -In the upcoming lightos release the performance aspects of multi tenancy are addressed. This is achieved that it will be possible to cap the maximum throughput possible per volume. This will ensure that no single tenant is able to saturate the whole lightos cluster and impact other tenants using this lightos cluster. +In the upcoming lightos release the performance aspects of multi tenancy are addressed. This is achieved that it will be possible to cap the maximum throughput possible per volume. This will ensure that no single tenant is able to saturate the whole lightos cluster and impact other tenants using this lightos cluster. \ No newline at end of file