diff --git a/docusaurus.config.js b/docusaurus.config.js index b20dec7729..3bf760fddc 100644 --- a/docusaurus.config.js +++ b/docusaurus.config.js @@ -7,7 +7,7 @@ const darkTheme = themes.dracula; /** @type {import('@docusaurus/types').Config} */ const config = { - title: 'Replicated Docs', + title: 'Replicated', tagline: 'Technical documentation for Replicated vendors and their enterprise end-customers.', url: 'https://docs.replicated.com', baseUrl: '/', @@ -29,7 +29,7 @@ const config = { docs: { routeBasePath: '/', // Serve the docs at the site's root sidebarPath: require.resolve('./sidebars.js'), - breadcrumbs: false, + breadcrumbs: true, editUrl: 'https://github.com/replicatedhq/replicated-docs/edit/main/', admonitions: { keywords: ['note','important', 'tip', 'info', 'caution', 'danger'], @@ -50,7 +50,36 @@ const config = { }), ], ], - + plugins: [ + [ + '@docusaurus/plugin-content-docs', + { + id: 'installer', + path: 'installer', + routeBasePath: 'installer', + sidebarPath: './sidebarInstaller.js', + breadcrumbs: true, + editUrl: 'https://github.com/replicatedhq/replicated-docs/edit/main/', + // Versioning configuration + lastVersion: 'current', // Make 3.0.0 the default version + includeCurrentVersion: true, // Include the "next" version from installer/ folder + versions: { + current: { + label: 'Embedded Cluster 3.0.0', + path: 'v3', + banner: 'none', + badge: false, + }, + '2.0.0': { + label: 'Embedded Cluster 2.13.3', + path: 'v2', + banner: 'unmaintained', + badge: false, + }, + }, + }, + ], + ], scripts: [ { src: @@ -136,7 +165,8 @@ const config = { }, { type: 'doc', - docId: 'vendor/embedded-overview', + docId: 'v3-placeholder', + docsPluginId: 'installer', label: 'Embedded Cluster', }, { @@ -173,9 +203,19 @@ const config = { }, { type: 'dropdown', - label: 'Developer tools', + label: 'Reference', position: 'left', items: [ + { + type: 'doc', + docId: 'reference/custom-resource-about', + label: 'Custom resources', + }, + { + type: 'doc', + docId: 'reference/template-functions-about', + label: 'Template functions', + }, { type: 'doc', docId: 'reference/kots-cli-getting-started', diff --git a/installer/v3-placeholder.md b/installer/v3-placeholder.md new file mode 100644 index 0000000000..aeb4c25e02 --- /dev/null +++ b/installer/v3-placeholder.md @@ -0,0 +1 @@ +# v3 placeholder \ No newline at end of file diff --git a/docs/reference/embedded-cluster-admin-console.mdx b/installer_versioned_docs/version-2.0.0/embedded-cluster-admin-console.mdx similarity index 100% rename from docs/reference/embedded-cluster-admin-console.mdx rename to installer_versioned_docs/version-2.0.0/embedded-cluster-admin-console.mdx diff --git a/docs/reference/embedded-cluster-completion.mdx b/installer_versioned_docs/version-2.0.0/embedded-cluster-completion.mdx similarity index 100% rename from docs/reference/embedded-cluster-completion.mdx rename to installer_versioned_docs/version-2.0.0/embedded-cluster-completion.mdx diff --git a/docs/reference/embedded-cluster-enable-ha.mdx b/installer_versioned_docs/version-2.0.0/embedded-cluster-enable-ha.mdx similarity index 100% rename from docs/reference/embedded-cluster-enable-ha.mdx rename to installer_versioned_docs/version-2.0.0/embedded-cluster-enable-ha.mdx diff --git a/docs/reference/embedded-cluster-install.mdx b/installer_versioned_docs/version-2.0.0/embedded-cluster-install.mdx similarity index 96% rename from docs/reference/embedded-cluster-install.mdx rename to installer_versioned_docs/version-2.0.0/embedded-cluster-install.mdx index f68e5b75ff..9a7e481900 100644 --- a/docs/reference/embedded-cluster-install.mdx +++ b/installer_versioned_docs/version-2.0.0/embedded-cluster-install.mdx @@ -1,7 +1,7 @@ -import ProxyLimitations from "../partials/embedded-cluster/_proxy-install-limitations.mdx" -import ProxyRequirements from "../partials/embedded-cluster/_proxy-install-reqs.mdx" -import ProxyEnvVars from "../partials/embedded-cluster/_proxy-env-vars.mdx" -import DeprecatedPrivateCa from "../partials/embedded-cluster/_deprecated-private-ca.mdx" +import ProxyLimitations from "../../docs/partials/embedded-cluster/_proxy-install-limitations.mdx" +import ProxyRequirements from "../../docs/partials/embedded-cluster/_proxy-install-reqs.mdx" +import ProxyEnvVars from "../../docs/partials/embedded-cluster/_proxy-env-vars.mdx" +import DeprecatedPrivateCa from "../../docs/partials/embedded-cluster/_deprecated-private-ca.mdx" # install diff --git a/docs/reference/embedded-cluster-join-print-command.mdx b/installer_versioned_docs/version-2.0.0/embedded-cluster-join-print-command.mdx similarity index 100% rename from docs/reference/embedded-cluster-join-print-command.mdx rename to installer_versioned_docs/version-2.0.0/embedded-cluster-join-print-command.mdx diff --git a/docs/reference/embedded-cluster-join.mdx b/installer_versioned_docs/version-2.0.0/embedded-cluster-join.mdx similarity index 100% rename from docs/reference/embedded-cluster-join.mdx rename to installer_versioned_docs/version-2.0.0/embedded-cluster-join.mdx diff --git a/docs/reference/embedded-cluster-reset.mdx b/installer_versioned_docs/version-2.0.0/embedded-cluster-reset.mdx similarity index 100% rename from docs/reference/embedded-cluster-reset.mdx rename to installer_versioned_docs/version-2.0.0/embedded-cluster-reset.mdx diff --git a/docs/reference/embedded-cluster-restore.mdx b/installer_versioned_docs/version-2.0.0/embedded-cluster-restore.mdx similarity index 100% rename from docs/reference/embedded-cluster-restore.mdx rename to installer_versioned_docs/version-2.0.0/embedded-cluster-restore.mdx diff --git a/docs/reference/embedded-cluster-shell.mdx b/installer_versioned_docs/version-2.0.0/embedded-cluster-shell.mdx similarity index 100% rename from docs/reference/embedded-cluster-shell.mdx rename to installer_versioned_docs/version-2.0.0/embedded-cluster-shell.mdx diff --git a/docs/reference/embedded-cluster-support-bundle.mdx b/installer_versioned_docs/version-2.0.0/embedded-cluster-support-bundle.mdx similarity index 100% rename from docs/reference/embedded-cluster-support-bundle.mdx rename to installer_versioned_docs/version-2.0.0/embedded-cluster-support-bundle.mdx diff --git a/docs/reference/embedded-cluster-update.mdx b/installer_versioned_docs/version-2.0.0/embedded-cluster-update.mdx similarity index 100% rename from docs/reference/embedded-cluster-update.mdx rename to installer_versioned_docs/version-2.0.0/embedded-cluster-update.mdx diff --git a/docs/reference/embedded-cluster-version.mdx b/installer_versioned_docs/version-2.0.0/embedded-cluster-version.mdx similarity index 100% rename from docs/reference/embedded-cluster-version.mdx rename to installer_versioned_docs/version-2.0.0/embedded-cluster-version.mdx diff --git a/docs/reference/embedded-config.mdx b/installer_versioned_docs/version-2.0.0/embedded-config.mdx similarity index 99% rename from docs/reference/embedded-config.mdx rename to installer_versioned_docs/version-2.0.0/embedded-config.mdx index 8596011fe1..15ac79ea76 100644 --- a/docs/reference/embedded-config.mdx +++ b/installer_versioned_docs/version-2.0.0/embedded-config.mdx @@ -1,4 +1,4 @@ -import DoNotDowngrade from "../partials/embedded-cluster/_warning-do-not-downgrade.mdx" +import DoNotDowngrade from "../../docs/partials/embedded-cluster/_warning-do-not-downgrade.mdx" # Embedded Cluster Config diff --git a/docs/vendor/embedded-disaster-recovery.mdx b/installer_versioned_docs/version-2.0.0/embedded-disaster-recovery.mdx similarity index 100% rename from docs/vendor/embedded-disaster-recovery.mdx rename to installer_versioned_docs/version-2.0.0/embedded-disaster-recovery.mdx diff --git a/docs/enterprise/embedded-manage-nodes.mdx b/installer_versioned_docs/version-2.0.0/embedded-manage-nodes.mdx similarity index 98% rename from docs/enterprise/embedded-manage-nodes.mdx rename to installer_versioned_docs/version-2.0.0/embedded-manage-nodes.mdx index dd5805538f..69fb03d267 100644 --- a/docs/enterprise/embedded-manage-nodes.mdx +++ b/installer_versioned_docs/version-2.0.0/embedded-manage-nodes.mdx @@ -1,5 +1,5 @@ -import HaArchitecture from "../partials/embedded-cluster/_multi-node-ha-arch.mdx" -import ShellCommand from "../partials/embedded-cluster/_shell-command.mdx" +import HaArchitecture from "../../docs/partials/embedded-cluster/_multi-node-ha-arch.mdx" +import ShellCommand from "../../docs/partials/embedded-cluster/_shell-command.mdx" # Access and manage embedded clusters diff --git a/docs/vendor/embedded-overview.mdx b/installer_versioned_docs/version-2.0.0/embedded-overview.mdx similarity index 99% rename from docs/vendor/embedded-overview.mdx rename to installer_versioned_docs/version-2.0.0/embedded-overview.mdx index 26e4222f1e..77f1a8aeaa 100644 --- a/docs/vendor/embedded-overview.mdx +++ b/installer_versioned_docs/version-2.0.0/embedded-overview.mdx @@ -1,5 +1,5 @@ -import EmbeddedCluster from "../partials/embedded-cluster/_definition.mdx" -import HaArchitecture from "../partials/embedded-cluster/_multi-node-ha-arch.mdx" +import EmbeddedCluster from "../../docs/partials/embedded-cluster/_definition.mdx" +import HaArchitecture from "../../docs/partials/embedded-cluster/_multi-node-ha-arch.mdx" # Embedded Cluster overview diff --git a/docs/enterprise/embedded-tls-certs.mdx b/installer_versioned_docs/version-2.0.0/embedded-tls-certs.mdx similarity index 100% rename from docs/enterprise/embedded-tls-certs.mdx rename to installer_versioned_docs/version-2.0.0/embedded-tls-certs.mdx diff --git a/docs/vendor/embedded-troubleshooting.mdx b/installer_versioned_docs/version-2.0.0/embedded-troubleshooting.mdx similarity index 96% rename from docs/vendor/embedded-troubleshooting.mdx rename to installer_versioned_docs/version-2.0.0/embedded-troubleshooting.mdx index 6c1a8faa25..fda8dbb6ba 100644 --- a/docs/vendor/embedded-troubleshooting.mdx +++ b/installer_versioned_docs/version-2.0.0/embedded-troubleshooting.mdx @@ -1,6 +1,6 @@ -import SupportBundleIntro from "../partials/support-bundles/_ec-support-bundle-intro.mdx" -import EmbeddedClusterSupportBundle from "../partials/support-bundles/_generate-bundle-ec.mdx" -import ShellCommand from "../partials/embedded-cluster/_shell-command.mdx" +import SupportBundleIntro from "../../docs/partials/support-bundles/_ec-support-bundle-intro.mdx" +import EmbeddedClusterSupportBundle from "../../docs/partials/support-bundles/_generate-bundle-ec.mdx" +import ShellCommand from "../../docs/partials/embedded-cluster/_shell-command.mdx" import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; diff --git a/docs/vendor/embedded-using.mdx b/installer_versioned_docs/version-2.0.0/embedded-using.mdx similarity index 97% rename from docs/vendor/embedded-using.mdx rename to installer_versioned_docs/version-2.0.0/embedded-using.mdx index bcefc3f41b..74fa000c83 100644 --- a/docs/vendor/embedded-using.mdx +++ b/installer_versioned_docs/version-2.0.0/embedded-using.mdx @@ -1,6 +1,6 @@ -import UpdateOverview from "../partials/embedded-cluster/_update-overview.mdx" -import EcConfig from "../partials/embedded-cluster/_ec-config.mdx" -import ShellCommand from "../partials/embedded-cluster/_shell-command.mdx" +import UpdateOverview from "../../docs/partials/embedded-cluster/_update-overview.mdx" +import EcConfig from "../../docs/partials/embedded-cluster/_ec-config.mdx" +import ShellCommand from "../../docs/partials/embedded-cluster/_shell-command.mdx" # Configure Embedded Cluster diff --git a/docs/enterprise/installing-embedded-air-gap.mdx b/installer_versioned_docs/version-2.0.0/installing-embedded-air-gap.mdx similarity index 95% rename from docs/enterprise/installing-embedded-air-gap.mdx rename to installer_versioned_docs/version-2.0.0/installing-embedded-air-gap.mdx index d6f8ff581a..4b0c4f172b 100644 --- a/docs/enterprise/installing-embedded-air-gap.mdx +++ b/installer_versioned_docs/version-2.0.0/installing-embedded-air-gap.mdx @@ -1,8 +1,8 @@ -import UpdateAirGapAdm from "../partials/embedded-cluster/_update-air-gap-admin-console.mdx" -import UpdateAirGapCli from "../partials/embedded-cluster/_update-air-gap-cli.mdx" -import UpdateAirGapOverview from "../partials/embedded-cluster/_update-air-gap-overview.mdx" -import DoNotDowngrade from "../partials/embedded-cluster/_warning-do-not-downgrade.mdx" -import Prerequisites from "../partials/install/_ec-prereqs.mdx" +import UpdateAirGapAdm from "../../docs/partials/embedded-cluster/_update-air-gap-admin-console.mdx" +import UpdateAirGapCli from "../../docs/partials/embedded-cluster/_update-air-gap-cli.mdx" +import UpdateAirGapOverview from "../../docs/partials/embedded-cluster/_update-air-gap-overview.mdx" +import DoNotDowngrade from "../../docs/partials/embedded-cluster/_warning-do-not-downgrade.mdx" +import Prerequisites from "../../docs/partials/install/_ec-prereqs.mdx" # Air gap installation with Embedded Cluster diff --git a/docs/enterprise/installing-embedded-automation.mdx b/installer_versioned_docs/version-2.0.0/installing-embedded-automation.mdx similarity index 94% rename from docs/enterprise/installing-embedded-automation.mdx rename to installer_versioned_docs/version-2.0.0/installing-embedded-automation.mdx index 422b1d37f7..7aff906b8c 100644 --- a/docs/enterprise/installing-embedded-automation.mdx +++ b/installer_versioned_docs/version-2.0.0/installing-embedded-automation.mdx @@ -1,6 +1,6 @@ -import ConfigValuesExample from "../partials/configValues/_configValuesExample.mdx" -import ConfigValuesProcedure from "../partials/configValues/_config-values-procedure.mdx" -import ConfigValuesRequirements from "../partials/configValues/_requirements.mdx" +import ConfigValuesExample from "../../docs/partials/configValues/_configValuesExample.mdx" +import ConfigValuesProcedure from "../../docs/partials/configValues/_config-values-procedure.mdx" +import ConfigValuesRequirements from "../../docs/partials/configValues/_requirements.mdx" # Automate installation with Embedded Cluster diff --git a/docs/enterprise/installing-embedded-requirements.mdx b/installer_versioned_docs/version-2.0.0/installing-embedded-requirements.mdx similarity index 88% rename from docs/enterprise/installing-embedded-requirements.mdx rename to installer_versioned_docs/version-2.0.0/installing-embedded-requirements.mdx index 3d7508ba9b..6db6c11aec 100644 --- a/docs/enterprise/installing-embedded-requirements.mdx +++ b/installer_versioned_docs/version-2.0.0/installing-embedded-requirements.mdx @@ -1,7 +1,7 @@ -import EmbeddedClusterRequirements from "../partials/embedded-cluster/_requirements.mdx" -import EmbeddedClusterPortRequirements from "../partials/embedded-cluster/_port-reqs.mdx" -import FirewallOpeningsIntro from "../partials/install/_firewall-openings-intro.mdx" -import FirewallOpeningsEc from "../partials/install/_firewall-openings-embedded-cluster.mdx" +import EmbeddedClusterRequirements from "../../docs/partials/embedded-cluster/_requirements.mdx" +import EmbeddedClusterPortRequirements from "../../docs/partials/embedded-cluster/_port-reqs.mdx" +import FirewallOpeningsIntro from "../../docs/partials/install/_firewall-openings-intro.mdx" +import FirewallOpeningsEc from "../../docs/partials/install/_firewall-openings-embedded-cluster.mdx" # Embedded Cluster installation requirements diff --git a/docs/enterprise/installing-embedded.mdx b/installer_versioned_docs/version-2.0.0/installing-embedded.mdx similarity index 98% rename from docs/enterprise/installing-embedded.mdx rename to installer_versioned_docs/version-2.0.0/installing-embedded.mdx index dafb7f5da4..10f19171de 100644 --- a/docs/enterprise/installing-embedded.mdx +++ b/installer_versioned_docs/version-2.0.0/installing-embedded.mdx @@ -1,4 +1,4 @@ -import Prerequisites from "../partials/install/_ec-prereqs.mdx" +import Prerequisites from "../../docs/partials/install/_ec-prereqs.mdx" # Online installation with Embedded Cluster diff --git a/docs/enterprise/updating-embedded.mdx b/installer_versioned_docs/version-2.0.0/updating-embedded.mdx similarity index 86% rename from docs/enterprise/updating-embedded.mdx rename to installer_versioned_docs/version-2.0.0/updating-embedded.mdx index ce34166f40..41cfb98177 100644 --- a/docs/enterprise/updating-embedded.mdx +++ b/installer_versioned_docs/version-2.0.0/updating-embedded.mdx @@ -1,7 +1,8 @@ -import UpdateAirGapAdm from "../partials/embedded-cluster/_update-air-gap-admin-console.mdx" -import UpdateAirGapCli from "../partials/embedded-cluster/_update-air-gap-cli.mdx" -import UpdateAirGapOverview from "../partials/embedded-cluster/_update-air-gap-overview.mdx" -import Overview from "../partials/embedded-cluster/_update-overview.mdx" +import UpdateAirGapAdm from "../../docs/partials/embedded-cluster/_update-air-gap-admin-console.mdx" +import UpdateAirGapCli from "../../docs/partials/embedded-cluster/_update-air-gap-cli.mdx" +import UpdateAirGapOverview from "../../docs/partials/embedded-cluster/_update-air-gap-overview.mdx" +import DoNotDowngrade from "../../docs/partials/embedded-cluster/_warning-do-not-downgrade.mdx" +import Overview from "../../docs/partials/embedded-cluster/_update-overview.mdx" # Perform updates in embedded clusters diff --git a/installer_versioned_sidebars/version-2.0.0-sidebars.json b/installer_versioned_sidebars/version-2.0.0-sidebars.json new file mode 100644 index 0000000000..02c2eea51c --- /dev/null +++ b/installer_versioned_sidebars/version-2.0.0-sidebars.json @@ -0,0 +1,40 @@ +{ + "installerSidebar": [ + "embedded-overview", + "embedded-using", + "embedded-config", + { + "type": "category", + "label": "Install with Embedded Cluster", + "items": [ + "installing-embedded-requirements", + "installing-embedded", + "installing-embedded-air-gap", + "installing-embedded-automation" + ] + }, + "embedded-manage-nodes", + "updating-embedded", + "embedded-troubleshooting", + "embedded-tls-certs", + "embedded-disaster-recovery", + { + "type": "category", + "label": "Embedded Cluster Commands", + "items": [ + "embedded-cluster-admin-console", + "embedded-cluster-completion", + "embedded-cluster-enable-ha", + "embedded-cluster-install", + "embedded-cluster-join", + "embedded-cluster-join-print-command", + "embedded-cluster-reset", + "embedded-cluster-restore", + "embedded-cluster-shell", + "embedded-cluster-support-bundle", + "embedded-cluster-update", + "embedded-cluster-version" + ] + } + ] +} diff --git a/installer_versions.json b/installer_versions.json new file mode 100644 index 0000000000..ca7ffcdaa9 --- /dev/null +++ b/installer_versions.json @@ -0,0 +1,3 @@ +[ + "2.0.0" +] \ No newline at end of file diff --git a/sidebarCompatibilityMatrix.js b/sidebarCompatibilityMatrix.js new file mode 100644 index 0000000000..2dd355bf43 --- /dev/null +++ b/sidebarCompatibilityMatrix.js @@ -0,0 +1,22 @@ +// sidebar heading is set in src/utils/sidebarProductFromPath.js in SIDEBAR_CONFIG + +module.exports = { + compatibilityMatrixSidebar: [ + "vendor/testing-about", + "vendor/testing-supported-clusters", + "vendor/testing-how-to", + "vendor/testing-vm-create", + "vendor/testing-ingress", + "vendor/testing-network-policy", + "vendor/testing-cluster-addons", + "vendor/testing-ci-cd", + { + type: "category", + label: "Manage cost and usage", + items: [ + "vendor/testing-pricing", + "vendor/compatibility-matrix-usage", + ], + }, + ], +}; \ No newline at end of file diff --git a/sidebarEnterprisePortal.js b/sidebarEnterprisePortal.js new file mode 100644 index 0000000000..9430f1e1b4 --- /dev/null +++ b/sidebarEnterprisePortal.js @@ -0,0 +1,12 @@ +// sidebar heading is set in src/utils/sidebarProductFromPath.js in SIDEBAR_CONFIG + +module.exports = { + enterprisePortalSidebar: [ + "vendor/enterprise-portal-about", + "vendor/enterprise-portal-configure", + "vendor/enterprise-portal-invite", + "vendor/enterprise-portal-self-serve-signup", + "vendor/enterprise-portal-access", + "vendor/enterprise-portal-use", + ], +}; \ No newline at end of file diff --git a/sidebarHelm.js b/sidebarHelm.js new file mode 100644 index 0000000000..effd545ec3 --- /dev/null +++ b/sidebarHelm.js @@ -0,0 +1,11 @@ +// sidebar heading is set in src/utils/sidebarProductFromPath.js in SIDEBAR_CONFIG +module.exports = { + helmSidebar: [ + "vendor/helm-install-overview", + "vendor/helm-install-values-schema", + "vendor/install-with-helm", + "vendor/helm-install-airgap", + "vendor/using-third-party-registry-proxy", + "vendor/helm-install-troubleshooting", + ], + }; \ No newline at end of file diff --git a/sidebarInstaller.js b/sidebarInstaller.js new file mode 100644 index 0000000000..108acff285 --- /dev/null +++ b/sidebarInstaller.js @@ -0,0 +1,6 @@ +// sidebar heading is set in src/utils/sidebarProductFromPath.js in SIDEBAR_CONFIG +module.exports = { + installerSidebar: [ + "v3-placeholder", + ], +}; diff --git a/sidebarKots.js b/sidebarKots.js new file mode 100644 index 0000000000..a8a4483bc0 --- /dev/null +++ b/sidebarKots.js @@ -0,0 +1,170 @@ +// sidebar heading is set in src/utils/sidebarProductFromPath.js in SIDEBAR_CONFIG +module.exports = { + kotsSidebar: [ + "intro-kots", + { + type: "category", + label: "Configure KOTS", + items: [ + { + type: "category", + label: "Configure the HelmChart Custom Resource", + items: [ + "vendor/helm-native-about", + "vendor/helm-native-v2-using", + "vendor/helm-packaging-airgap-bundles", + "vendor/helm-optional-value-keys", + "vendor/helm-v2-migrate", + ], + }, + { + type: "category", + label: "Customize the Admin Console and Download Portal", + items: [ + "vendor/admin-console-customize-app-icon", + "vendor/admin-console-adding-buttons-links", + "vendor/admin-console-port-forward", + "vendor/admin-console-prometheus-monitoring", + ], + }, + { + type: "category", + label: "Configure the Admin Console Config Screen", + items: [ + "vendor/config-screen-about", + "vendor/admin-console-customize-config-screen", + "vendor/config-screen-map-inputs", + "vendor/config-screen-conditional", + ], + }, + { + type: "category", + label: "Manage Resources and Objects", + items: [ + "vendor/admin-console-display-app-status", + { + type: "category", + label: "Conditionally Deploy Resources", + items: [ + "vendor/packaging-include-resources", + "vendor/tutorial-adding-db-config", + ], + }, + "vendor/resources-annotations-templating", + "vendor/orchestrating-resource-deployment", + "vendor/database-config-adding-options", + "vendor/packaging-cleaning-up-jobs", + "vendor/packaging-ingress", + ], + }, + { + type: "category", + label: "Manage KOTS", + items: [ + "vendor/packaging-kots-versions", + "vendor/packaging-rbac", + "vendor/packaging-air-gap-excluding-minio", + ], + }, + { + type: "category", + label: "Distribute Kubernetes Operators with KOTS", + items: [ + "vendor/operator-packaging-about", + "vendor/operator-defining-additional-images", + "vendor/operator-referencing-images", + "vendor/operator-defining-additional-namespaces", + ], + }, + ], + }, + { + type: "category", + label: "Install in Existing Clusters with KOTS", + items: [ + "enterprise/installing-overview", + "enterprise/installing-general-requirements", + "enterprise/installing-existing-cluster", + "enterprise/installing-existing-cluster-airgapped", + "enterprise/installing-existing-cluster-automation", + "enterprise/installing-stateful-component-requirements", + ], + }, + { + type: "category", + label: "Perform Updates in Existing Cluster KOTS Installations", + items: [ + "enterprise/updating-app-manager", + "enterprise/updating-apps", + "enterprise/updating-patching-with-kustomize", + ], + }, + { + type: "category", + label: "Configure Local Image Registries", + items: [ + "enterprise/image-registry-settings", + "enterprise/image-registry-rate-limits", + ], + }, + "enterprise/updating-licenses", + { + type: "category", + label: "Perform Backup and Restore with Snapshots", + items: [ + "vendor/snapshots-overview", + { + type: "category", + label: "Enable and Configure Snapshots", + items: [ + "vendor/snapshots-configuring-backups", + "reference/custom-resource-backup", + "vendor/snapshots-hooks", + ], + }, + { + type: "category", + label: "Configure Backup Storage for Snaphots", + items: [ + "enterprise/snapshots-velero-cli-installing", + "enterprise/snapshots-configuring-hostpath", + "enterprise/snapshots-configuring-nfs", + "enterprise/snapshots-storage-destinations", + "enterprise/snapshots-velero-installing-config", + ], + }, + "enterprise/snapshots-creating", + "enterprise/snapshots-restoring-full", + "enterprise/snapshots-updating-with-admin-console", + "enterprise/snapshots-troubleshooting-backup-restore", + ], + }, + { + type: "category", + label: "Manage Admin Console User Access", + items: [ + "enterprise/auth-changing-passwords", + "enterprise/auth-identity-provider", + "enterprise/auth-configuring-rbac", + ], + }, + { + type: "category", + label: "Monitor Applications with Prometheus", + items: [ + "enterprise/monitoring-applications", + "enterprise/monitoring-access-dashboards", + ], + }, + "enterprise/status-viewing-details", + "enterprise/delete-admin-console", + { + type: "category", + label: "Use a GitOps Workflow", + items: [ + "enterprise/gitops-workflow", + "enterprise/gitops-managing-secrets", + ], + }, + ], + }; \ No newline at end of file diff --git a/sidebarKurl.js b/sidebarKurl.js new file mode 100644 index 0000000000..bcb6478932 --- /dev/null +++ b/sidebarKurl.js @@ -0,0 +1,40 @@ +// sidebar heading is set in src/utils/sidebarProductFromPath.js in SIDEBAR_CONFIG +module.exports = { + kurlSidebar: [ + "vendor/kurl-about", + { + type: "category", + label: "Configure kURL Installers", + items: [ + "vendor/packaging-embedded-kubernetes", + "vendor/packaging-installer-storage", + "vendor/installer-history", + "vendor/kurl-nodeport-services", + ], + }, + { + type: "category", + label: "Install with kURL", + items: [ + "enterprise/installing-kurl-requirements", + "enterprise/installing-kurl", + "enterprise/installing-kurl-airgap", + "enterprise/installing-kurl-automation", + ], + }, + "enterprise/cluster-management-add-nodes", + { + type: "category", + label: "Perform Updates with kURL", + items: [ + "enterprise/updating-kurl-about", + "enterprise/updating-kurl", + ], + }, + "vendor/packaging-using-tls-certs", + "enterprise/updating-tls-cert", + "enterprise/image-registry-kurl", + "enterprise/monitoring-external-prometheus", + "vendor/kurl-reset", + ], + }; \ No newline at end of file diff --git a/sidebarProxyRegistry.js b/sidebarProxyRegistry.js new file mode 100644 index 0000000000..2fc0cd7ee0 --- /dev/null +++ b/sidebarProxyRegistry.js @@ -0,0 +1,20 @@ +// sidebar heading is set in src/utils/sidebarProductFromPath.js in SIDEBAR_CONFIG +module.exports = { + proxyRegistrySidebar: [ + "vendor/private-images-about", + "vendor/packaging-private-images", + "vendor/helm-image-registry", + "vendor/private-images-kots", + "vendor/private-images-tags-digests", + "vendor/packaging-public-images", + { + type: "category", + label: "Replicated Private Registry", + items: [ + "vendor/private-images-replicated", + "vendor/packaging-private-registry-security", + ], + }, + "vendor/tutorial-ecr-private-images", + ], + }; \ No newline at end of file diff --git a/sidebarReplicatedSdk.js b/sidebarReplicatedSdk.js new file mode 100644 index 0000000000..ee9af0164e --- /dev/null +++ b/sidebarReplicatedSdk.js @@ -0,0 +1,11 @@ +// sidebar heading is set in src/utils/sidebarProductFromPath.js in SIDEBAR_CONFIG +module.exports = { + replicatedSdkSidebar: [ + "vendor/replicated-sdk-overview", + "vendor/replicated-sdk-installing", + "vendor/replicated-sdk-airgap", + "vendor/replicated-sdk-development", + "vendor/replicated-sdk-customizing", + "reference/replicated-sdk-apis", + ], + }; \ No newline at end of file diff --git a/sidebarSecurityCenter.js b/sidebarSecurityCenter.js new file mode 100644 index 0000000000..ecdc75a3ec --- /dev/null +++ b/sidebarSecurityCenter.js @@ -0,0 +1,6 @@ +// sidebar heading is set in src/utils/sidebarProductFromPath.js in SIDEBAR_CONFIG +module.exports = { + securityCenterSidebar: [ + "vendor/security-center-about", + ], + }; \ No newline at end of file diff --git a/sidebarTroubleshoot.js b/sidebarTroubleshoot.js new file mode 100644 index 0000000000..748775b227 --- /dev/null +++ b/sidebarTroubleshoot.js @@ -0,0 +1,47 @@ +// sidebar heading is set in src/utils/sidebarProductFromPath.js in SIDEBAR_CONFIG +module.exports = { + troubleshootSidebar: [ + "vendor/preflight-support-bundle-about", + { + type: "category", + label: "Preflight checks", + items: [ + "vendor/preflight-defining", + "vendor/preflight-examples", + "vendor/preflight-running", + "vendor/preflight-host-preflights", + ], + }, + { + type: "category", + label: "Support bundles", + items: [ + "vendor/support-bundle-customizing", + "vendor/support-bundle-examples", + "vendor/support-online-support-bundle-specs", + "vendor/support-modular-support-bundle-specs", + { + type: "category", + label: "Generate support bundles", + items: [ + "vendor/support-bundle-generating", + "vendor/support-bundle-embedded", + "enterprise/troubleshooting-an-app", + "vendor/support-host-support-bundles", + ], + }, + "vendor/support-inspecting-support-bundles", + "vendor/support-enabling-direct-bundle-uploads", + ], + }, + "vendor/preflight-sb-helm-templates-about", + { + type: "category", + label: "Troubleshoot custom resources", + items: [ + "reference/custom-resource-preflight", + "reference/custom-resource-redactor", + ], + }, + ], + }; \ No newline at end of file diff --git a/sidebarVendorPortal.js b/sidebarVendorPortal.js new file mode 100644 index 0000000000..3048ce0c31 --- /dev/null +++ b/sidebarVendorPortal.js @@ -0,0 +1,111 @@ +// sidebar heading is set in src/utils/sidebarProductFromPath.js in SIDEBAR_CONFIG +module.exports = { + vendorPortalSidebar: [ + { + type: "category", + label: "Vendor Portal Teams and Accounts", + items: [ + "vendor/vendor-portal-creating-account", + "vendor/team-management", + "vendor/team-management-github-username", + { + type: "category", + label: "Configure Role-based Access Control", + items: [ + "vendor/team-management-rbac-configuring", + "vendor/team-management-rbac-resource-names", + ], + }, + { + type: "category", + label: "Configure Authentication", + items: [ + "vendor/team-management-two-factor-auth", + "vendor/team-management-google-auth", + "vendor/team-management-saml-auth", + "vendor/team-management-scim-provisioning", + ], + }, + "vendor/team-management-slack-config", + "vendor/replicated-api-tokens", + ], + }, + { + type: "category", + label: "Applications", + items: [ + "vendor/vendor-portal-manage-app", + "vendor/vendor-portal-application-settings", + ], + }, + { + type: "category", + label: "Channels and releases", + items: [ + "vendor/releases-about", + "vendor/releases-creating-channels", + "vendor/releases-creating-releases", + "vendor/releases-creating-cli", + "vendor/helm-install-release", + "vendor/releases-sharing-license-install-script", + "reference/linter", + ], + }, + { + type: "category", + label: "Customers and licenses", + items: [ + "vendor/licenses-about", + "vendor/releases-creating-customer", + "vendor/licenses-adding-custom-fields", + "vendor/licenses-install-types", + "vendor/releases-share-download-portal", + "vendor/licenses-about-types", + "vendor/licenses-download", + { + type: "category", + label: "Query license entitlements", + items: [ + "vendor/licenses-using-builtin-fields", + "vendor/licenses-reference-sdk", + "vendor/licenses-reference-helm", + "vendor/licenses-referencing-fields", + "vendor/licenses-reference-kots-runtime", + "vendor/licenses-verify-fields-sdk-api", + ], + }, + ], + }, + { + type: "category", + label: "Custom domains", + items: ["vendor/custom-domains", "vendor/custom-domains-using"], + }, + { + type: "category", + label: "Insights and telemetry", + items: [ + "vendor/instance-insights-event-data", + "vendor/insights-app-status", + "vendor/custom-metrics", + "vendor/telemetry-air-gap", + "vendor/customer-adoption", + "vendor/customer-reporting", + "vendor/instance-insights-details", + { + type: "category", + label: "Event Notifications (Beta)", + items: [ + "vendor/event-notifications", + "vendor/event-notifications-create", + "vendor/event-notifications-manage", + "vendor/event-notifications-webhooks", + ], + }, + "vendor/instance-notifications-config", + "vendor/instance-data-export", + ], + }, + "vendor/support-submit-request", + ], +}; diff --git a/sidebars.js b/sidebars.js index d3e43d3425..9568593697 100644 --- a/sidebars.js +++ b/sidebars.js @@ -11,6 +11,18 @@ // @ts-check +// Import modular sidebars +const vendorPlatformSidebar = require('./sidebarVendorPortal'); +const enterprisePortalSidebar = require('./sidebarEnterprisePortal'); +const securityCenterSidebar = require('./sidebarSecurityCenter'); +const compatibilityMatrixSidebar = require('./sidebarCompatibilityMatrix'); +const kotsSidebar = require('./sidebarKots'); +const kurlSidebar = require('./sidebarKurl'); +const helmInstallationsSidebar = require('./sidebarHelm'); +const replicatedSdkSidebar = require('./sidebarReplicatedSdk'); +const preflightSupportSidebar = require('./sidebarTroubleshoot'); +const proxyRegistrySidebar = require('./sidebarProxyRegistry'); + // @type {import('@docusaurus/plugin-content-docs').SidebarsConfig} const sidebars = { // By default, Docusaurus generates a sidebar from the docs folder structure @@ -60,546 +72,131 @@ const sidebars = { }, { type: "category", - label: "Labs", + label: "Add Replicated to CI/CD Workflows", items: [ - { - type: "link", - href: "https://play.instruqt.com/embed/replicated/tracks/distributing-with-replicated?token=em_VHOEfNnBgU3auAnN", - label: "Distributing Your Application with Replicated", - }, - { - type: "link", - href: "https://play.instruqt.com/embed/replicated/tracks/delivering-as-an-appliance?token=em_lUZdcv0LrF6alIa3", - label: "Delivering Your Application as a Kubernetes Appliance", - }, - { - type: "link", - href: "https://play.instruqt.com/embed/replicated/tracks/avoiding-installation-pitfalls?token=em_gJjtIzzTTtdd5RFG", - label: "Avoiding Installation Pitfalls", - }, - { - type: "link", - href: "https://play.instruqt.com/embed/replicated/tracks/closing-information-gap?token=em_MO2XXCz3bAgwtEca", - label: "Closing the Support Information Gap", - }, - { - type: "link", - href: "https://play.instruqt.com/embed/replicated/tracks/protecting-your-assets?token=em_7QjY34G_UHKoREBd", - label: "Protecting Your Assets", - }, + "vendor/ci-overview", + "vendor/ci-workflows", + "vendor/ci-workflows-github-actions", ], }, + // { + // type: "category", + // label: "Labs", + // items: [ + // { + // type: "link", + // href: "https://play.instruqt.com/embed/replicated/tracks/distributing-with-replicated?token=em_VHOEfNnBgU3auAnN", + // label: "Distributing Your Application with Replicated", + // }, + // { + // type: "link", + // href: "https://play.instruqt.com/embed/replicated/tracks/delivering-as-an-appliance?token=em_lUZdcv0LrF6alIa3", + // label: "Delivering Your Application as a Kubernetes Appliance", + // }, + // { + // type: "link", + // href: "https://play.instruqt.com/embed/replicated/tracks/avoiding-installation-pitfalls?token=em_gJjtIzzTTtdd5RFG", + // label: "Avoiding Installation Pitfalls", + // }, + // { + // type: "link", + // href: "https://play.instruqt.com/embed/replicated/tracks/closing-information-gap?token=em_MO2XXCz3bAgwtEca", + // label: "Closing the Support Information Gap", + // }, + // { + // type: "link", + // href: "https://play.instruqt.com/embed/replicated/tracks/protecting-your-assets?token=em_7QjY34G_UHKoREBd", + // label: "Protecting Your Assets", + // }, + // ], + // }, // PRODUCT DOCS { type: "html", value: "