helm-dashboard

command module
v0.0.8 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 4, 2022 License: Apache-2.0 Imports: 5 Imported by: 0

README

Helm Dashboard

A simplified way of working with Helm.

Screenshot

What it Does?

The Helm Dashboard plugin offers a UI-driven way to view the installed Helm charts, see their revision history and corresponding k8s resources. Also, you can perform simple actions like roll back to a revision or upgrade to newer version.

This project is part of Komodor's vision of helping Kubernetes users to navigate and troubleshoot their clusters.

Installing

To install it, simply run Helm command:

helm plugin install https://github.com/komodorio/helm-dashboard.git

To update the plugin to the latest version, run:

helm plugin update dashboard

To uninstall, run:

helm plugin uninstall dashboard

Running

To use the plugin, your machine needs to have working helm and also kubectl commands.

After installing, start the UI by running:

helm dashboard

The command above will launch the local Web server and will open the UI in new browser tab. The command will hang waiting for you to terminate it in command-line or web UI.

By default, the web server is only available locally. You can change that by specifying HD_BIND environment variable to the desired value. For example, 0.0.0.0 would bind to all IPv4 addresses or [::0] would be all IPv6 addresses.

If your port 8080 is busy, you can specify a different port to use via HD_PORT environment variable.

If you don't want browser tab to automatically open, set HD_NOBROWSER=1 in your environment variables.

If you want to increase the logging verbosity and see all the debug info, set DEBUG=1 environment variable.

Support Channels

We have two main channels for supporting the Helm Dashboard users: Slack community for general conversations and GitHub issues for real bugs.

Roadmap & Ideas

First Public Version
  • CLI launcher

  • Web Server with REST API

  • Listing the installed applications

  • View k8s resources created by the application (describe, status)

  • Viewing revision history for application

  • View manifest diffs between revisions, also changelogs etc

  • Analytics reporting (telemetry)

  • Rollback to a revision

  • Check for repo updates & upgrade flow

  • Uninstalling the app completely

  • Switch clusters

  • Show manifest/describe upon clicking on resource

  • Helm Plugin Packaging

  • Styled properly

Further Ideas
  • solve umbrella-chart case
  • use --dry-run instead of template
  • Have cleaner idea on the web API structure
  • Recognise & show ArgoCD-originating charts/objects, those helm ls does not show
  • Recognise the revisions that are rollbacks by their description and mark in timeline
Topic "Validating Manifests"
  • Validate manifests before deploy and get better errors
  • See if we can build in Chechov or Validkube validation
Iteration "Value Setting"
  • Setting parameter values and installing
  • Reconfiguring the application
Iteration "Repo View"
  • Browsing repositories
  • Adding new repository
  • Installing new app from repo

Local Dev Testing

Prerequisites: helm and kubectl binaries installed and operational.

There is a need to build binary for plugin to function, run:

go build -o bin/dashboard .

To install, checkout the source code and run from source dir:

helm plugin install .

Local installation of plugin just creates a symlink, so making the changes and rebuilding the binary would not require to reinstall a plugin.

To use the plugin, run in your terminal:

helm dashboard

Then, use the web UI.

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
pkg

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL