Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion docs/AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ Use `make docs` when you are only editing `docs/fern/` config. Use `make docs-wa
## Rules that bite if you miss them

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ha, I like the candor.


- **Navigation is the build.** Fern only builds pages listed in `docs/fern/versions/latest.yml`. A `.mdx` not in the nav is **not built** (404, not indexed) — that is how unready features are gated. Do **not** use `hidden: true` for gating (it still builds/serves the page).
- **Gated (unready) features** stay in the repo but out of the nav: `auth/`, `customizer/`, `safe-synthesizer/`, `set-up/` + `helm/`, `evaluator/benchmarks/`, and a few individual pages. Ready-to-paste nav blocks for re-publishing are in `docs/fern/gated-nav.yml`. To publish one: move its block into `latest.yml`, re-add inbound links, run `make docs-check && make docs-broken-links`.
- **Gated (unready) features** stay in the repo but out of the nav: `auth/`, `customizer/`, `safe-synthesizer/`, `evaluator/benchmarks/`, and a few individual pages. Ready-to-paste nav blocks for re-publishing are in `docs/fern/gated-nav.yml`. To publish one: move its block into `latest.yml`, re-add inbound links, run `make docs-check && make docs-broken-links`.
- **Don't link into gated pages.** A link from a published page into a gated page is a dead link. `make docs-check` fails on it; `make docs-fix-links` delinks it to plain text. (Replaces the old MkDocs `hide_unready_docs` auto-delinking.)
- **Internal links** use canonical nav URLs like `/documentation/get-started/core-concepts/workspaces`, not relative `.md`/source paths. `make docs-broken-links` is the check.
- **No `{{variable}}` substitutions.** Fern has no substitution step; product names are inlined as literal text. (Prompt-template tokens like `` `{{input}}` `` inside backticks are real content — leave them.)
Expand Down
2 changes: 1 addition & 1 deletion docs/auth/authentication/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ Start here — register an OAuth application in your IdP and configure NeMo Plat
- [OIDC Setup](/documentation/access-control/authentication/oidc-setup) — Step-by-step: register an app, configure NeMo Platform, verify login.
- [Azure AD (Entra ID)](/documentation/access-control/authentication/providers/azure-ad-entra-id) — Azure-specific walkthrough (app registration, scopes, claim mapping).
- [Generic OIDC Provider](/documentation/access-control/authentication/providers/generic-oidc) — Checklist for any OIDC-compliant IdP.
- [IdP Integration References](/documentation/access-control/authentication/idp-integration) — Provider manifests and runnable reference bundles under `contrib/auth/*`.
- IdP Integration References - provider manifests and runnable reference bundles under `contrib/auth/*`.

## Log In and Make API Calls

Expand Down
8 changes: 8 additions & 0 deletions docs/cli/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -109,6 +109,14 @@ nemo models --help
nemo models list --help
```

### Reading Documentation

Use `nemo docs` to read bundled documentation from the CLI:

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does it do PR reviews? #FeatureRequest


```bash
nemo docs set-up/helm/install
```

### Local Setup

```bash
Expand Down
4 changes: 3 additions & 1 deletion docs/cli/reference.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ Command-line interface for NeMo Platform.
**Getting started:**
- Browse documentation with **`nemo docs --list`**
- Run local platform services with **`nemo services run --help`**
- Deploy to Kubernetes with **`nemo docs set-up/helm/install`**

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Feels a little off, it tells you about the deployment, doesn't actually do the deployment.


**Examples:**

Expand Down Expand Up @@ -593,6 +594,7 @@ Read NeMo Platform documentation.

```shell
nemo docs get-started/setup
nemo docs set-up/helm/install
nemo docs --list
nemo docs cli/configuration
```
Expand All @@ -605,7 +607,7 @@ nemo docs [OPTIONS] [PATH]

**Arguments:**

* `<PATH>`: Path to a doc topic (e.g., get-started/setup). Omit to see available topics.
* `<PATH>`: Path to a doc topic (e.g., get-started/setup or set-up/helm/install). Omit to see available topics.

**Options:**

Expand Down
2 changes: 1 addition & 1 deletion docs/fern/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,7 @@ Fern groups endpoints by their OpenAPI tag in the sidebar (Customizer, Evaluator

Some features are not shipped yet and must be **fully excluded from the build** — not just hidden from the sidebar. Fern's `hidden: true` still builds and serves the page (reachable by direct URL and indexable), so it is **not** used for this. Instead, the gated pages are simply **left out of `versions/latest.yml`**: Fern only builds pages referenced in the navigation, so an omitted page is never built (it 404s and is not indexed). This matches the old MkDocs `hide_unready_docs` hook, which dropped the same files from the build.

The gated `.mdx` files stay in the repo so they remain maintained. The gated trees today are: `auth/`, `customizer/`, `safe-synthesizer/`, `set-up/` + `helm/`, `evaluator/benchmarks/`, plus individual pages (`evaluator/metrics/{job-management,results}`, `run-inference/tutorials/deploy-models`, `example-applications/`, `troubleshooting/{cluster-setup,customizer}`, `get-started/quickstart`).
The gated `.mdx` files stay in the repo so they remain maintained. The gated trees today are: `auth/`, `customizer/`, `safe-synthesizer/`, `evaluator/benchmarks/`, plus individual pages (`evaluator/metrics/{job-management,results}`, `run-inference/tutorials/deploy-models`, `example-applications/`, `troubleshooting/{cluster-setup,customizer}`, `get-started/quickstart`).

Inbound links from visible pages into gated pages are **delinked to plain text** (not rewritten URLs), since the target is not built — otherwise they would be broken links.

Expand Down
36 changes: 0 additions & 36 deletions docs/fern/gated-nav.yml
Original file line number Diff line number Diff line change
Expand Up @@ -77,42 +77,6 @@
path: ../../safe-synthesizer/tutorials/index.mdx
- page: Safe Synthesizer 101
path: ../../safe-synthesizer/tutorials/safe-synthesizer-101.mdx
- section: Self-Managed Deployment
contents:
- page: Helm Reference
path: ../../helm/index.mdx
- page: Config Reference
path: ../../set-up/config-reference.mdx
- page: Backup and Restore
path: ../../set-up/helm/backup-and-restore.mdx
- page: Database Setup
path: ../../set-up/helm/database-setup.mdx
- page: File Storage
path: ../../set-up/helm/file-storage.mdx
- page: Overview
path: ../../set-up/helm/index.mdx
- page: Ingress
path: ../../set-up/helm/ingress.mdx
- page: Install
path: ../../set-up/helm/install.mdx
- page: Multinode Networking
path: ../../set-up/helm/multinode-networking.mdx
- page: OpenShift
path: ../../set-up/helm/openshift.mdx
- page: Persistent Volumes
path: ../../set-up/helm/persistent-volumes.mdx
- page: Prerequisites
path: ../../set-up/helm/prerequisites.mdx
- page: About
path: ../../set-up/index.mdx
- page: Jobs
path: ../../set-up/manage-jobs.mdx
- page: Milvus
path: ../../set-up/milvus.mdx
- page: Observability
path: ../../set-up/opentelemetry.mdx
- page: Security
path: ../../set-up/security.mdx
- section: evaluator
contents:
- page: Agentic Benchmarks
Expand Down
49 changes: 49 additions & 0 deletions docs/fern/versions/latest.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,55 @@ navigation:
path: ../../get-started/concepts/projects.mdx
- page: Workspaces
path: ../../get-started/concepts/workspaces.mdx
- section: Self-Managed Deployment
slug: self-managed-deployment
contents:
- section: Setup
slug: setup
path: ../../set-up/index.mdx
contents:
- section: Helm
slug: helm
path: ../../set-up/helm/index.mdx
contents:
- page: Prerequisites
path: ../../set-up/helm/prerequisites.mdx
- page: Install
path: ../../set-up/helm/install.mdx
- page: Database Setup
path: ../../set-up/helm/database-setup.mdx
- page: Persistent Volumes
path: ../../set-up/helm/persistent-volumes.mdx
- page: File Storage
path: ../../set-up/helm/file-storage.mdx
- page: Ingress
path: ../../set-up/helm/ingress.mdx
- page: Multinode Networking
path: ../../set-up/helm/multinode-networking.mdx
- page: OpenShift
slug: openshift
path: ../../set-up/helm/openshift.mdx
- page: Backup and Restore
path: ../../set-up/helm/backup-and-restore.mdx
- page: Jobs
slug: jobs
path: ../../set-up/manage-jobs.mdx
- page: Milvus
path: ../../set-up/milvus.mdx
- page: Observability
slug: observability
path: ../../set-up/opentelemetry.mdx
- page: Security
path: ../../set-up/security.mdx
- section: Helm
slug: helm
contents:
- page: Helm Reference
slug: helm-reference
path: ../../helm/index.mdx
- page: Config Reference
slug: config-reference
path: ../../set-up/config-reference.mdx
- section: Access Control
slug: access-control
path: ../../auth/index.mdx
Expand Down
2 changes: 1 addition & 1 deletion docs/helm/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ description: ""
```
![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square)

For deployment guide, see [Admin Setup](/documentation/self-managed-deployment/setup/about) in the NeMo Platform documentation.
For deployment guide, see [Self-Managed Deployment](/documentation/self-managed-deployment/setup) in the NeMo Platform documentation.

## Values

Expand Down
2 changes: 1 addition & 1 deletion docs/set-up/config-reference.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ platform:
loopback_address:
# Global image pull secrets for the platform
image_pull_secrets: []
# Docker registry for NeMo Platform images (e.g., 'nvcr.io/nvidia/nemo-microservices'). | default: 'my-registry'
# Docker registry for NeMo Platform images (e.g., 'nvcr.io/nvidia/nemo-platform'). | default: 'my-registry'
image_registry: my-registry
# Default tag for NeMo Platform images. | default: 'local'
image_tag: local
Expand Down
8 changes: 5 additions & 3 deletions docs/set-up/helm/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,9 @@ description: ""
---
<a id="nemo-platform-setup"></a>

The NeMo Platform is bundled in an all-in-one Helm chart that supports end-to-end microservice deployment. Use the following guides to build and manage a complete data flywheel with the NeMo Platform on your Kubernetes either on-prem or in the cloud.
NeMo Platform is bundled in an all-in-one Helm chart for self-managed Kubernetes deployments. Use these guides to deploy the platform on local clusters such as minikube and kind, managed clusters such as EKS, AKS, GKE, and OKE, or on-prem Kubernetes.

Start with [Prerequisites](/documentation/self-managed-deployment/setup/helm/prerequisites), then follow [Install](/documentation/self-managed-deployment/setup/helm/install). The install guide pins the chart with `NMP_HELM_CHART_VERSION` and uses the `nvidia/nemo-platform` NGC org for chart and image access.

<Cards>

Expand All @@ -15,7 +17,7 @@ Review the prerequisites for installing the NeMo Platform Helm Chart.
<small><span class="md-tag">cluster-admin</span></small>

</Card>
<Card title="Install }" href="/documentation/self-managed-deployment/setup/helm/install">
<Card title="Install" href="/documentation/self-managed-deployment/setup/helm/install">

Install the NeMo Platform using the Helm chart.

Expand Down Expand Up @@ -57,7 +59,7 @@ Configure high-performance east-west networking (EFA, InfiniBand, TCP-XO, SR-IOV
<small><span class="md-tag">cluster-admin</span> <span class="md-tag">cloud</span></small>

</Card>
<Card title="OpenShift" href="/documentation/self-managed-deployment/setup/helm/open-shift">
<Card title="OpenShift" href="/documentation/self-managed-deployment/setup/helm/openshift">

Install with OpenShift-compatible configuration.

Expand Down
7 changes: 3 additions & 4 deletions docs/set-up/helm/ingress.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ description: ""

The NeMo Platform Helm chart can expose the API service externally using **Kubernetes Ingress**, the **Gateway API HTTPRoute**, or on OpenShift an **OpenShift Route**. Choose one based on your cluster.

**Prerequisites:** Complete [Prerequisites](/documentation/self-managed-deployment/setup/helm/prerequisites) and [Install](/documentation/self-managed-deployment/setup/helm/install) (or [OpenShift](/documentation/self-managed-deployment/setup/helm/open-shift)) so the platform is installed. Ensure your cluster has an [Ingress](https://kubernetes.io/docs/concepts/services-networking/ingress/) controller (e.g. Traefik, OpenShift IngressController) or a [Gateway API](https://gateway-api.sigs.k8s.io/) Gateway configured.
**Prerequisites:** Complete [Prerequisites](/documentation/self-managed-deployment/setup/helm/prerequisites) and [Install](/documentation/self-managed-deployment/setup/helm/install) (or [OpenShift](/documentation/self-managed-deployment/setup/helm/openshift)) so the platform is installed. Ensure your cluster has an [Ingress](https://kubernetes.io/docs/concepts/services-networking/ingress/) controller (e.g. Traefik, OpenShift IngressController) or a [Gateway API](https://gateway-api.sigs.k8s.io/) Gateway configured.

## Kubernetes Ingress

Expand Down Expand Up @@ -93,8 +93,8 @@ For all options (`targetPort`, `annotations`, `labels`), see the [NeMo Platform

## Related

- [Install](/documentation/self-managed-deployment/setup/helm/install) Install steps and upgrade commands
- [OpenShift](/documentation/self-managed-deployment/setup/helm/open-shift) — OpenShift: security context, and optional Route (`openshiftRoute.enabled`), Ingress, or HTTPRoute
- [Install](/documentation/self-managed-deployment/setup/helm/install) - Install steps and upgrade commands
- [OpenShift](/documentation/self-managed-deployment/setup/helm/openshift) - OpenShift: security context, and optional Route (`openshiftRoute.enabled`), Ingress, or HTTPRoute

## Cloud Provider Specific Ingress

Expand Down Expand Up @@ -156,4 +156,3 @@ On GKE, use the built-in [GCE Ingress controller](https://cloud.google.com/kuber
```

3. Install or upgrade with your values file. To verify, check that a load balancer was provisioned with `kubectl get ingress -n <namespace>`.

Loading
Loading