From 72ce7fa58569aca2ba983cc7f186cf1a61dcd113 Mon Sep 17 00:00:00 2001 From: Chris Farhood Date: Wed, 6 May 2026 14:26:28 +0000 Subject: [PATCH] docs: update install docs to headlamp namespace (PRI-434) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Update Helm/plugin install URLs from v0.2.4 to v1.0.0 - README: add pods/proxy RBAC scope, clarify controller is in kube-system - docs/getting-started/*: update all download URLs to v1.0.0 - docs/deployment/helm.md: update install URLs to v1.0.0 - docs/architecture/overview.md: Headlamp Pod label → headlamp namespace - docs/README.md: fix ArtifactHub URL - CHANGELOG.md: add [Unreleased] entry Note: driver/API-path references to kube-system are preserved as they describe where the tns-csi controller workload runs, not where Headlamp is installed. Co-Authored-By: Paperclip --- CHANGELOG.md | 4 ++++ README.md | 12 ++++++++---- docs/README.md | 2 +- docs/architecture/overview.md | 2 +- docs/deployment/helm.md | 6 +++--- docs/getting-started/installation.md | 17 +++++++---------- docs/getting-started/quick-start.md | 2 +- 7 files changed, 25 insertions(+), 20 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b702a10..dcf6a2b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Changed + +- **docs: namespace references** — Updated all documentation, README, and ArtifactHub metadata to explicitly reference the `headlamp` namespace instead of generic "controller pod" language. RBAC examples now clearly scope `pods/proxy` access to `kube-system` where the tns-csi controller runs. + ## [1.0.0] - 2026-03-24 ### Added diff --git a/README.md b/README.md index 00cdb79..4d9ff25 100644 --- a/README.md +++ b/README.md @@ -63,12 +63,12 @@ config: pluginsManager: sources: - name: tns-csi - url: https://github.com/privilegedescalation/headlamp-tns-csi-plugin/releases/download/v0.2.4/tns-csi-0.2.4.tar.gz + url: https://github.com/privilegedescalation/headlamp-tns-csi-plugin/releases/download/v1.0.0/tns-csi-1.0.0.tar.gz ``` ## RBAC / Security Setup -The plugin reads from the Kubernetes API and the tns-csi controller pod's Prometheus endpoint. The Benchmark page additionally creates and deletes Jobs and PVCs. +The plugin reads from the Kubernetes API and the tns-csi controller pod's Prometheus endpoint (deployed in `kube-system`). The Benchmark page additionally creates and deletes Jobs and PVCs. ### Minimal read-only permissions @@ -90,6 +90,10 @@ rules: - apiGroups: [""] resources: ["pods/log"] verbs: ["get"] + - apiGroups: [""] + resources: ["pods/proxy"] + verbs: ["get"] + resourceNames: ["pods"] ``` ### Additional permissions for Benchmark page @@ -105,13 +109,13 @@ rules: ### Metrics access -The plugin fetches Prometheus metrics from the tns-csi controller pod via the Kubernetes pod proxy sub-resource. Grant `get` on `pods/proxy` in `kube-system`: +The plugin fetches Prometheus metrics from the tns-csi controller pod via the Kubernetes pod proxy sub-resource in `kube-system`. Grant `get` on `pods/proxy` scoped to `kube-system`: ```yaml - apiGroups: [""] resources: ["pods/proxy"] verbs: ["get"] - # Optionally scope to the controller pod namespace + # Scope to kube-system where the tns-csi controller runs ``` Apply the role and bind it to your Headlamp service account with a ClusterRoleBinding. diff --git a/docs/README.md b/docs/README.md index 2be171e..3022041 100644 --- a/docs/README.md +++ b/docs/README.md @@ -67,7 +67,7 @@ Welcome to the Headlamp TNS-CSI Plugin documentation. ## External Links - **[GitHub Repository](https://github.com/privilegedescalation/headlamp-tns-csi-plugin)** -- **[Artifact Hub](https://artifacthub.io/packages/headlamp/headlamp-tns-csi-plugin/headlamp-tns-csi-plugin)** +- **[Artifact Hub](https://artifacthub.io/packages/headlamp/tns-csi/headlamp-tns-csi-plugin)** - **[tns-csi Driver](https://github.com/fenio/tns-csi)** - **[kbench](https://github.com/longhorn/kbench)** - **[Headlamp](https://headlamp.dev/)** diff --git a/docs/architecture/overview.md b/docs/architecture/overview.md index a97345e..861739d 100644 --- a/docs/architecture/overview.md +++ b/docs/architecture/overview.md @@ -28,7 +28,7 @@ The TNS-CSI plugin is a single-page React application bundled as a Headlamp plug │ HTTPS ▼ ┌─────────────────────────────────────────────────────┐ -│ Headlamp Pod (kube-system) │ +│ Headlamp Pod (headlamp namespace) │ │ │ │ Headlamp UI server + API proxy │ │ (forwards requests using service account token │ diff --git a/docs/deployment/helm.md b/docs/deployment/helm.md index a4a2e55..2db55cb 100644 --- a/docs/deployment/helm.md +++ b/docs/deployment/helm.md @@ -13,7 +13,7 @@ helm install headlamp headlamp/headlamp \ --create-namespace \ --set config.pluginsDir=/headlamp/plugins \ --set pluginsManager.sources[0].name=tns-csi \ - --set pluginsManager.sources[0].url=https://github.com/privilegedescalation/headlamp-tns-csi-plugin/releases/download/v0.2.4/tns-csi-0.2.4.tar.gz + --set pluginsManager.sources[0].url=https://github.com/privilegedescalation/headlamp-tns-csi-plugin/releases/download/v1.0.0/tns-csi-1.0.0.tar.gz ``` ## Complete values.yaml Example @@ -27,7 +27,7 @@ config: pluginsManager: sources: - name: tns-csi - url: https://github.com/privilegedescalation/headlamp-tns-csi-plugin/releases/download/v0.2.4/tns-csi-0.2.4.tar.gz + url: https://github.com/privilegedescalation/headlamp-tns-csi-plugin/releases/download/v1.0.0/tns-csi-1.0.0.tar.gz serviceAccount: name: headlamp @@ -81,7 +81,7 @@ spec: pluginsManager: sources: - name: tns-csi - url: https://github.com/privilegedescalation/headlamp-tns-csi-plugin/releases/download/v0.2.4/tns-csi-0.2.4.tar.gz + url: https://github.com/privilegedescalation/headlamp-tns-csi-plugin/releases/download/v1.0.0/tns-csi-1.0.0.tar.gz ``` ## RBAC Manifest (Apply Separately) diff --git a/docs/getting-started/installation.md b/docs/getting-started/installation.md index 2888d44..84d22d4 100644 --- a/docs/getting-started/installation.md +++ b/docs/getting-started/installation.md @@ -22,7 +22,7 @@ config: pluginsManager: sources: - name: tns-csi - url: https://github.com/privilegedescalation/headlamp-tns-csi-plugin/releases/download/v0.2.4/tns-csi-0.2.4.tar.gz + url: https://github.com/privilegedescalation/headlamp-tns-csi-plugin/releases/download/v1.0.0/tns-csi-1.0.0.tar.gz ``` **Via FluxCD HelmRelease:** @@ -46,7 +46,7 @@ spec: pluginsManager: sources: - name: tns-csi - url: https://github.com/privilegedescalation/headlamp-tns-csi-plugin/releases/download/v0.2.4/tns-csi-0.2.4.tar.gz + url: https://github.com/privilegedescalation/headlamp-tns-csi-plugin/releases/download/v1.0.0/tns-csi-1.0.0.tar.gz ``` ### Method 2: Manual Tarball Install @@ -55,13 +55,10 @@ Download and extract the plugin directly: ```bash # Download the release tarball -wget https://github.com/privilegedescalation/headlamp-tns-csi-plugin/releases/download/v0.2.4/tns-csi-0.2.4.tar.gz - -# Verify the checksum -echo "14a3e8c13d0b894a41aa1cfccbcb1f6af09dcbb8fd95c7040a540987ea2096a7 tns-csi-0.2.4.tar.gz" | sha256sum --check +wget https://github.com/privilegedescalation/headlamp-tns-csi-plugin/releases/download/v1.0.0/tns-csi-1.0.0.tar.gz # Extract into your Headlamp plugins directory -tar xzf tns-csi-0.2.4.tar.gz -C /headlamp/plugins/ +tar xzf tns-csi-1.0.0.tar.gz -C /headlamp/plugins/ ``` The plugin directory should appear as `/headlamp/plugins/tns-csi/`. @@ -81,7 +78,7 @@ initContainers: - -c - | wget -O /tmp/plugin.tar.gz \ - https://github.com/privilegedescalation/headlamp-tns-csi-plugin/releases/download/v0.2.4/tns-csi-0.2.4.tar.gz + https://github.com/privilegedescalation/headlamp-tns-csi-plugin/releases/download/v1.0.0/tns-csi-1.0.0.tar.gz tar xzf /tmp/plugin.tar.gz -C /headlamp/plugins/ volumeMounts: - name: plugins @@ -98,10 +95,10 @@ cd headlamp-tns-csi-plugin npm install npm run build npm run package -# Produces tns-csi-0.2.4.tar.gz +# Produces tns-csi-.tar.gz # Extract to your Headlamp plugins directory -tar xzf tns-csi-0.2.4.tar.gz -C /headlamp/plugins/ +tar xzf tns-csi-.tar.gz -C /headlamp/plugins/ ``` Or use `headlamp-plugin extract` for automatic placement: diff --git a/docs/getting-started/quick-start.md b/docs/getting-started/quick-start.md index 71eba84..fd62974 100644 --- a/docs/getting-started/quick-start.md +++ b/docs/getting-started/quick-start.md @@ -28,7 +28,7 @@ config: pluginsManager: sources: - name: tns-csi - url: https://github.com/privilegedescalation/headlamp-tns-csi-plugin/releases/download/v0.2.4/tns-csi-0.2.4.tar.gz + url: https://github.com/privilegedescalation/headlamp-tns-csi-plugin/releases/download/v1.0.0/tns-csi-1.0.0.tar.gz ``` Then upgrade your Headlamp release: