Files
privilegedescalation-engineer[bot] b0110e474c chore: remove E2E testing infrastructure (#50)
* docs: update install docs to headlamp namespace (PRI-434)

- 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 <noreply@paperclip.ing>

* chore: remove E2E testing infrastructure

- Delete e2e/ directory (auth.setup.ts, tns-csi.spec.ts)
- Delete playwright.config.ts
- Delete scripts/deploy-e2e-headlamp.sh
- Delete scripts/teardown-e2e-headlamp.sh
- Delete .github/workflows/e2e.yaml
- Remove e2e script from package.json
- Remove @playwright/test dependency from package.json

Context: [PRI-1133](/PRI/issues/PRI-1133) — full E2E purge across org.

Co-Authored-By: Paperclip <noreply@paperclip.ing>

* fix: update pnpm-lock.yaml after E2E deletion

Remove @playwright/test dependencies after E2E infrastructure cleanup.
Resolves ERR_PNPM_OUTDATED_LOCKFILE on PR.

Co-Authored-By: Paperclip <noreply@paperclip.ing>

---------

Co-authored-by: Chris Farhood <chris@farhood.org>
Co-authored-by: Paperclip <noreply@paperclip.ing>
2026-05-11 20:11:07 +00:00

3.3 KiB

Installation Guide

Installation Methods

The plugin is published on Artifact Hub.

Via Headlamp UI:

  1. Navigate to Settings → Plugins → Catalog
  2. Search for "TNS CSI" or "TrueNAS"
  3. Click Install
  4. Refresh the page

Via Helm values:

config:
  pluginsDir: /headlamp/plugins

pluginsManager:
  sources:
    - name: tns-csi
      url: https://github.com/privilegedescalation/headlamp-tns-csi-plugin/releases/download/v1.0.0/tns-csi-1.0.0.tar.gz

Via FluxCD HelmRelease:

apiVersion: helm.toolkit.fluxcd.io/v2
kind: HelmRelease
metadata:
  name: headlamp
  namespace: <your-namespace>
spec:
  chart:
    spec:
      chart: headlamp
      sourceRef:
        kind: HelmRepository
        name: headlamp
  values:
    config:
      pluginsDir: /headlamp/plugins
    pluginsManager:
      sources:
        - name: tns-csi
          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

Download and extract the plugin directly:

# Download the release tarball
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-1.0.0.tar.gz -C /headlamp/plugins/

The plugin directory should appear as /headlamp/plugins/tns-csi/.

Restart Headlamp (or the pod) after extracting.

Method 3: Sidecar Container

For Headlamp deployments where you prefer managing plugins as container init sidecars:

initContainers:
  - name: install-tns-csi-plugin
    image: alpine:3
    command:
      - sh
      - -c
      - |
        wget -O /tmp/plugin.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
        mountPath: /headlamp/plugins

Method 4: Build from Source

For development or to test unreleased changes:

git clone https://github.com/privilegedescalation/headlamp-tns-csi-plugin.git
cd headlamp-tns-csi-plugin
npm install
npm run build
npm run package
# Produces tns-csi-<version>.tar.gz

# Extract to your Headlamp plugins directory
tar xzf tns-csi-<version>.tar.gz -C /headlamp/plugins/

Or use headlamp-plugin extract for automatic placement:

npx @kinvolk/headlamp-plugin extract . /headlamp/plugins

Post-Installation

After installing the plugin:

  1. Configure RBAC — see RBAC Permissions
  2. Verify the plugin loads — refresh browser and look for "TrueNAS (tns-csi)" in the sidebar
  3. Check the Overview page — driver health card should show tns-csi status

Upgrading

To upgrade to a new version, repeat the installation method you used. The new tarball replaces the old plugin directory.

For Plugin Manager installs, the catalog will show available updates.

Uninstalling

Remove the plugin directory from your Headlamp plugins directory:

rm -rf /headlamp/plugins/tns-csi/

Or via the Headlamp UI: Settings → Plugins → tns-csi → Uninstall.