From 380c13e11b826414e8ba412014bbfda4be0e8eaa Mon Sep 17 00:00:00 2001 From: mayor Date: Mon, 3 Aug 2026 19:07:02 -0400 Subject: [PATCH 1/5] docs(enterprise-portal): document namespace prop for HelmInstallAssets Co-Authored-By: Claude Opus 4.8 --- docs/vendor/enterprise-portal-v2-content.mdx | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/docs/vendor/enterprise-portal-v2-content.mdx b/docs/vendor/enterprise-portal-v2-content.mdx index 8d4c5d4160..6721b015df 100644 --- a/docs/vendor/enterprise-portal-v2-content.mdx +++ b/docs/vendor/enterprise-portal-v2-content.mdx @@ -351,7 +351,7 @@ Props: `installType` (`"linux"` or `"helm"`). **``**: Renders the full Linux/Embedded Cluster installation command sequence. Adapts to the customer's selected version and network availability. For air gap installations, includes an optional toggle for private registry image relocation. When enabled, the customer enters their registry hostname and the commands update to include image pull, tag, and push steps targeting that registry. Props: `stepNumber` (optional, starting step number). -**``**: Renders the full Helm installation command sequence. Props: `stepNumber` (optional), `charts` (optional, comma-separated list of chart names to include), `exclude` (optional, comma-separated list of chart names to hide). +**``**: Renders the full Helm installation command sequence. Props: `stepNumber` (optional), `charts` (optional, comma-separated list of chart names to include), `exclude` (optional, comma-separated list of chart names to hide), `namespace` (optional, string; when set, the generated install command includes `--namespace ` so the app installs into that namespace. When omitted, the install uses the default namespace). When a customer selects limited or no registry access, `` automatically includes browser download links for the Helm chart tarballs needed for their install. A download link for the preflight plugin binary is always included, regardless of registry access settings. No additional configuration is required. @@ -395,6 +395,22 @@ For applications with multiple Helm charts, you can control which charts appear The `charts` and `exclude` props accept comma-separated chart names. Use `charts` to include only the listed charts, or `exclude` to show all charts except the listed ones. +#### Installing into a specific namespace + +By default, `` generates an install command that uses the default namespace. If your application always installs into a fixed namespace, set the `namespace` prop to add `--namespace ` to the generated command: + +```markdown + +``` + +To set a default namespace while letting individual customers override it, reference a custom license field with a fallback: + +```markdown + +``` + +This installs into `salt-os` for most customers, but a customer whose license defines a `helm_namespace` custom field installs into that namespace instead. For more on custom license fields, see [Entitlements](#entitlements). + **``**: Wraps content in a numbered step container. ```markdown From 556cf370aafbbaa65cd4a92e52e9ab0e311cba2e Mon Sep 17 00:00:00 2001 From: mayor Date: Mon, 3 Aug 2026 20:18:37 -0400 Subject: [PATCH 2/5] docs(enterprise-portal): generalize namespace example (remove customer name) Co-Authored-By: Claude Opus 4.8 --- docs/vendor/enterprise-portal-v2-content.mdx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/vendor/enterprise-portal-v2-content.mdx b/docs/vendor/enterprise-portal-v2-content.mdx index 6721b015df..e18f3b6a92 100644 --- a/docs/vendor/enterprise-portal-v2-content.mdx +++ b/docs/vendor/enterprise-portal-v2-content.mdx @@ -400,16 +400,16 @@ The `charts` and `exclude` props accept comma-separated chart names. Use `charts By default, `` generates an install command that uses the default namespace. If your application always installs into a fixed namespace, set the `namespace` prop to add `--namespace ` to the generated command: ```markdown - + ``` To set a default namespace while letting individual customers override it, reference a custom license field with a fallback: ```markdown - + ``` -This installs into `salt-os` for most customers, but a customer whose license defines a `helm_namespace` custom field installs into that namespace instead. For more on custom license fields, see [Entitlements](#entitlements). +This installs into `my-namespace` for most customers, but a customer whose license defines a `helm_namespace` custom field installs into that namespace instead. For more on custom license fields, see [Entitlements](#entitlements). **``**: Wraps content in a numbered step container. From 3f1be61797a32052d1a200202743f1bc7bfcfb98 Mon Sep 17 00:00:00 2001 From: mayor Date: Mon, 3 Aug 2026 22:55:02 -0400 Subject: [PATCH 3/5] docs(enterprise-portal): document namespace prop on all Helm instruction components Covers HelmInstallAssets, HelmAirgapInstallAssets, and HelmUpdateAssets after the prop was extended to be comprehensive/unified across the Helm commands. Co-Authored-By: Claude Opus 4.8 --- docs/vendor/enterprise-portal-v2-content.mdx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/vendor/enterprise-portal-v2-content.mdx b/docs/vendor/enterprise-portal-v2-content.mdx index e18f3b6a92..39c3c483cf 100644 --- a/docs/vendor/enterprise-portal-v2-content.mdx +++ b/docs/vendor/enterprise-portal-v2-content.mdx @@ -357,7 +357,7 @@ When a customer selects limited or no registry access, `` a **``**: Linux air gap installation commands. Shows an unavailable notice if the air gap bundle is not yet built. Props: `stepNumber`. -**``**: Helm air gap installation commands. Props: `stepNumber`, `registryAvailability`, `charts` (optional), `exclude` (optional). +**``**: Helm air gap installation commands. Props: `stepNumber`, `registryAvailability`, `charts` (optional), `exclude` (optional), `namespace` (optional, string; when set, the generated install command includes `--namespace ` so the app installs into that namespace. When omitted, the install uses the default namespace). When a customer selects limited or no registry access, `` automatically includes browser download links for Helm chart tarballs. These links are also shown in the update flow for customers in the same registry mode. @@ -397,7 +397,7 @@ The `charts` and `exclude` props accept comma-separated chart names. Use `charts #### Installing into a specific namespace -By default, `` generates an install command that uses the default namespace. If your application always installs into a fixed namespace, set the `namespace` prop to add `--namespace ` to the generated command: +By default, the Helm instruction components generate commands that use the default namespace. If your application always installs into a fixed namespace, set the `namespace` prop on ``, ``, or `` to add `--namespace ` to the generated install and upgrade commands: ```markdown @@ -465,7 +465,7 @@ The download components gate themselves on the same entitlements, so a customer **``**: Renders Linux/Embedded Cluster upgrade instructions for the customer's current instance. For air gap upgrades, includes a registry hostname input for image relocation when the customer uses a private registry. Props: `stepNumber`. -**``**: Renders Helm upgrade instructions. Props: `stepNumber`, `charts` (optional), `exclude` (optional). +**``**: Renders Helm upgrade instructions. Props: `stepNumber`, `charts` (optional), `exclude` (optional), `namespace` (optional, string; when set, the generated upgrade command includes `--namespace ` so the upgrade targets that namespace. When omitted, the upgrade uses the default namespace). **``**: Conditionally shows content based on the customer's current version. Lets you show different upgrade instructions depending on which version the customer is upgrading *from*. From 3adae71499999d42b62560f42286136ff34397aa Mon Sep 17 00:00:00 2001 From: mayor Date: Thu, 6 Aug 2026 13:05:56 -0400 Subject: [PATCH 4/5] docs(enterprise-portal): trim inline namespace prop descriptions; note no --create-namespace --- docs/vendor/enterprise-portal-v2-content.mdx | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/docs/vendor/enterprise-portal-v2-content.mdx b/docs/vendor/enterprise-portal-v2-content.mdx index 39c3c483cf..bd42bee4e2 100644 --- a/docs/vendor/enterprise-portal-v2-content.mdx +++ b/docs/vendor/enterprise-portal-v2-content.mdx @@ -351,13 +351,13 @@ Props: `installType` (`"linux"` or `"helm"`). **``**: Renders the full Linux/Embedded Cluster installation command sequence. Adapts to the customer's selected version and network availability. For air gap installations, includes an optional toggle for private registry image relocation. When enabled, the customer enters their registry hostname and the commands update to include image pull, tag, and push steps targeting that registry. Props: `stepNumber` (optional, starting step number). -**``**: Renders the full Helm installation command sequence. Props: `stepNumber` (optional), `charts` (optional, comma-separated list of chart names to include), `exclude` (optional, comma-separated list of chart names to hide), `namespace` (optional, string; when set, the generated install command includes `--namespace ` so the app installs into that namespace. When omitted, the install uses the default namespace). +**``**: Renders the full Helm installation command sequence. Props: `stepNumber` (optional), `charts` (optional, comma-separated list of chart names to include), `exclude` (optional, comma-separated list of chart names to hide), `namespace` (optional, adds `--namespace ` to the generated install commands). When a customer selects limited or no registry access, `` automatically includes browser download links for the Helm chart tarballs needed for their install. A download link for the preflight plugin binary is always included, regardless of registry access settings. No additional configuration is required. **``**: Linux air gap installation commands. Shows an unavailable notice if the air gap bundle is not yet built. Props: `stepNumber`. -**``**: Helm air gap installation commands. Props: `stepNumber`, `registryAvailability`, `charts` (optional), `exclude` (optional), `namespace` (optional, string; when set, the generated install command includes `--namespace ` so the app installs into that namespace. When omitted, the install uses the default namespace). +**``**: Helm air gap installation commands. Props: `stepNumber`, `registryAvailability`, `charts` (optional), `exclude` (optional), `namespace` (optional, adds `--namespace ` to the generated install commands). When a customer selects limited or no registry access, `` automatically includes browser download links for Helm chart tarballs. These links are also shown in the update flow for customers in the same registry mode. @@ -411,6 +411,8 @@ To set a default namespace while letting individual customers override it, refer This installs into `my-namespace` for most customers, but a customer whose license defines a `helm_namespace` custom field installs into that namespace instead. For more on custom license fields, see [Entitlements](#entitlements). +The generated commands do not include `--create-namespace`, so the target namespace must already exist in the customer's cluster before they run the install command. + **``**: Wraps content in a numbered step container. ```markdown @@ -465,7 +467,7 @@ The download components gate themselves on the same entitlements, so a customer **``**: Renders Linux/Embedded Cluster upgrade instructions for the customer's current instance. For air gap upgrades, includes a registry hostname input for image relocation when the customer uses a private registry. Props: `stepNumber`. -**``**: Renders Helm upgrade instructions. Props: `stepNumber`, `charts` (optional), `exclude` (optional), `namespace` (optional, string; when set, the generated upgrade command includes `--namespace ` so the upgrade targets that namespace. When omitted, the upgrade uses the default namespace). +**``**: Renders Helm upgrade instructions. Props: `stepNumber`, `charts` (optional), `exclude` (optional), `namespace` (optional, adds `--namespace ` to the generated upgrade commands). **``**: Conditionally shows content based on the customer's current version. Lets you show different upgrade instructions depending on which version the customer is upgrading *from*. From a67ecc54a0808488e12dc922bb837be46f93ae29 Mon Sep 17 00:00:00 2001 From: mayor Date: Thu, 6 Aug 2026 18:51:57 -0400 Subject: [PATCH 5/5] docs(enterprise-portal): align namespace docs with backend generator behavior Match the full-stack namespace implementation (vandoor #10306): namespace is an install-time prop on HelmInstallAssets/HelmAirgapInstallAssets only; upgrades auto-target the persisted install namespace (no prop on HelmUpdateAssets); install adds --create-namespace; per-customer namespaces use the {{entitlements.helm_namespace}} template form; invalid values surface a preview error (DNS-1123). --- docs/vendor/enterprise-portal-v2-content.mdx | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/docs/vendor/enterprise-portal-v2-content.mdx b/docs/vendor/enterprise-portal-v2-content.mdx index bd42bee4e2..423e43a12d 100644 --- a/docs/vendor/enterprise-portal-v2-content.mdx +++ b/docs/vendor/enterprise-portal-v2-content.mdx @@ -397,21 +397,23 @@ The `charts` and `exclude` props accept comma-separated chart names. Use `charts #### Installing into a specific namespace -By default, the Helm instruction components generate commands that use the default namespace. If your application always installs into a fixed namespace, set the `namespace` prop on ``, ``, or `` to add `--namespace ` to the generated install and upgrade commands: +By default, the Helm instruction components generate commands that install into the default namespace. To install into a specific namespace, set the `namespace` prop on `` or ``: ```markdown ``` -To set a default namespace while letting individual customers override it, reference a custom license field with a fallback: +The generated install command adds `--namespace my-namespace --create-namespace`, so the namespace is created if it does not already exist. You do not set a namespace on ``. Upgrades automatically target the namespace the customer installed into. + +To let each customer's namespace come from their license, reference a custom license field with a template expression: ```markdown - + ``` -This installs into `my-namespace` for most customers, but a customer whose license defines a `helm_namespace` custom field installs into that namespace instead. For more on custom license fields, see [Entitlements](#entitlements). +A customer whose license defines a `helm_namespace` custom field installs into that namespace. A customer without it installs into the default namespace. For more on custom license fields, see [Entitlements](#entitlements). -The generated commands do not include `--create-namespace`, so the target namespace must already exist in the customer's cluster before they run the install command. +Namespace values are validated as DNS-1123 labels, so an invalid value surfaces an error in the portal preview instead of silently installing into the default namespace. **``**: Wraps content in a numbered step container.