mirror of
https://github.com/komodorio/helm-dashboard.git
synced 2026-03-24 11:48:04 +00:00
* Correct path to static dir * Add UI build to makefile * Fix docker build * describe now works * Installed page - revision view - implement url consistent state logic (#403) * refactor * refactor * Fix/responsive and small stylings (#404) * add user defined (#405) * Fix/modal loading button (#406) * add repo to url (#407) * Fix/resources table badges (#408) * filters is now good * fix * test results fix * fix * fixes - error modal, uninstall modals, typees * fixes * bug fix * Helm dashboard v2 (#402) * missing config (#409) * fixes * fixes * Fix/minor responsiveness (#410) * installed release page * default helm icon * guard * refactor * refactor * refactor * key * refactor * fixes * fixes to install * install, add, upgrade, reconfigure now works * latest ver fix * Revision page ui fixes (#411) * link color * Add-repository-link (#412) * empty badge fix * diff fix in install repo * removed console.log * unique key in helathstatus * Cosmetics * Goreleaser upgraded * Another way to fix it * refactor * refactor * chart install fix (#413) * more maintailable * loading, empty space and default namespace * typed * loading diff state is shared * modal height fix * upgrade and add repo connected * add repo suggestion data connected to modal * removed console.log * Chart install fix (#414) * refactor: fix text align uninstall * install modal values big fix * refactor * no changes in diff msg * refactor * sorted versions * typography changes * refactor * refactor * refactor * migrate to sb 7 (#416) * Chart install fix (#415) * Add troubleshoot in komodor (#417) * status style * fix * fixes * delete now reload the page correclty * navigate after add repo fix * Chart install fix (#419) * refactor * refactor * Fix revision age (#420) * refactor * fixed redirects and nav links selected ui (#421) * test modal ui fixes * arrows fix * loading ui (#422) * test dialog now shows errors * fixed rollback diff, redirect after rollback, and debouncing before refetching chart values after changing user defined values (#423) * everything is working besides install chart * install chart should work now * no need for this anymore * styling and naming * improvements * navigation fix * flow fixes * top bar pixel perfect * onClose is optional * ts optional * pixel perfect - clusters, box shadow, error modal * installed page pixel perfect * fixes * need to fix this naming * rollback logic is now good * buttons now similiar to the old app * pass release instead of release date (#426) * repository page style fixes * rounded input * colors like in the old app * more rounding * colors * colors * Cosmetics * drop-shadow cause the dropdown to swallowed * smaller text * fixes (#428) * fixes * describe fix * Fix/lint (#431) * style fixes * fix * describe panel style fixes * diff when repo is available * diff style fixes * fixes to install dialog * specific version should be latests revision * refactor * fixes * fixes * cause troubles * Fixes (#434) * fix * dont fetch if repo not available * tag should not be visible * custom-shdaow fixes * space and shadow like in the old app * refactor (#435) * describe display logic aligned with the old app * style fix * action button style fix * selected revision default logic fix * font fix * style fixes * shutdown button fix * latest revision is now consistent in dev and prod * namespace should be empty on install * fix for current version on install * sorting fix * checkmark should be displayed in options - install * state jump fix * local charts (#436) * Several more fixes (#438) * api docs (#439) * html remove diff2html dep (#437) * Refactor * refactor * Adding storybook for StatusLabel component (#441) * refactor (#442) * we need the css * add prettier (#440) * add prettier * refactor * refactor * Fix reconfigure issue (#443) * first diff fetch fix * missing dep in hooks (#444) * namespace should be from query * triggering diff rerender by listening to loading * missing uservalues * no need for auto retry * we should work against latest revision * refactor * Fix build merge * refactor * refactor * fix * refactor * refactor * age tooltip * prettier fix * fix bug (#447) * Add eslint now (#449) * repo install chart now works as expected * release modal and eslint working good now * we should fetch when return to the initial value * Tailwind theme reorganized (#446) * install release code is like reading a story ! * namespace is not needed for chart values * install repo chart is now like reading a story :) * Fix/filternamesapce (#451) * not needed dep * prettier fix * namespace fix * add debounce (#452) * namespace filter fix * now namespace filter behaves like in the old app * more linter rules and configurations * intial value should be empty * no need to keep filters on cluster change * we don't want to keep tab state between pages * button should be disabled when loading * prettier fix * initial value we're not presented * navigation fix * namespace should always be empty * supporting pre selected namespaces * lint adjustments * Refactor stories fodler (#450) * refactor * refactor * if no user values, use the release values * Adding layer to base style (#456) * Extract duplicate type to types file (#453) * Refactor callApi into direct usage of apiService (#454) * Remove scanners from backend * Give some room for multiple HealthStatus (#458) * refactor: add dynamic api docs (#460) * remove scanners from openapi * was loading forever * fix * Extract defined values from the Modals (#461) * refactor (#462) * fix chart with no repo diff flow * naming fix * crypto UUID not available through https * revert * Update analytics.js with UUID fallback * Cosmetics * repo fetch fix * not need to depened on versions * forgot to push * revert * was causing infinite loop * COsmetics --------- Co-authored-by: Nir Parisian <nir.parisian@gmail.com> Co-authored-by: dav-sap <davidsaper@gmail.com> Co-authored-by: chad11111 <chad1111@tutanota.com> Co-authored-by: IdanSchiller <58664272+IdanSchiller@users.noreply.github.com> Co-authored-by: dav-sap <16819417+dav-sap@users.noreply.github.com> Co-authored-by: rotembm12 <46103618+rotembm12@users.noreply.github.com> Co-authored-by: naorzr <naorzruk@gmail.com> Co-authored-by: Gary Gensler <127234894+chad11111@users.noreply.github.com> Co-authored-by: Tamir Abutbul <1tamir198@gmail.com> Co-authored-by: Nir Parisian <nir2002@users.noreply.github.com>
154 lines
6.4 KiB
Markdown
154 lines
6.4 KiB
Markdown
<p align="center">
|
|
<picture>
|
|
<source media="(prefers-color-scheme: dark)" srcset="pkg/dashboard/static/logo-header-inverted.svg">
|
|
<source media="(prefers-color-scheme: light)" srcset="pkg/dashboard/static/logo-header.svg#gh-light-mode-only">
|
|
<img alt="Helm Dashboard" src="pkg/dashboard/static/logo-header.svg#gh-light-mode-only">
|
|
</picture>
|
|
</p>
|
|
|
|
<p align="center">A simplified way of working with Helm.</p>
|
|
|
|
|
|
 [](https://github.com/komodorio/helm-dashboard/issues)    [](https://github.com/komodorio/helm-dashboard/releases)  [](https://github.com/komodorio/helm-dashboard) [](https://codecov.io/gh/komodorio/helm-dashboard)
|
|
|
|
<kbd>[<img src="images/screenshot.png" style="width: 100%; border: 1px solid silver;" border="1" alt="Screenshot">](images/screenshot.png)</kbd>
|
|
|
|
|
|
## Description
|
|
|
|
_Helm Dashboard_ is an **open-source project** which 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](https://komodor.com/?utm_campaign=Helm-Dash&utm_source=helm-dash-gh) vision of
|
|
helping Kubernetes users to navigate and troubleshoot their clusters, the project is **NOT** an official project by the [helm team](https://helm.sh/).
|
|
|
|
Key capabilities of the tool:
|
|
|
|
- See all installed charts and their revision history
|
|
- See manifest diff of the past revisions
|
|
- Browse k8s resources resulting from the chart
|
|
- Easy rollback or upgrade version with a clear and easy manifest diff
|
|
- Integration with popular problem scanners
|
|
- Easy switch between multiple clusters
|
|
- Can be used locally, or installed into Kubernetes cluster
|
|
- Does not require Helm or Kubectl installed
|
|
|
|
All the features of the tool can be discovered via our [features overview page](FEATURES.md).
|
|
|
|
## Setup
|
|
|
|
### Standalone Binary
|
|
|
|
Since version 1.0, the recommended install method is to just use standalone binary. It does not require Helm or kubectl to be installed.
|
|
|
|
Download the appropriate [release package](https://github.com/komodorio/helm-dashboard/releases) for your platform, unpack it and just run `dashboard` binary from it.
|
|
|
|
### Using Helm plugin manager
|
|
|
|
To install dashboard as Helm plugin, simply run Helm command:
|
|
|
|
```shell
|
|
helm plugin install https://github.com/komodorio/helm-dashboard.git
|
|
```
|
|
|
|
To update the plugin to the latest version, run:
|
|
|
|
```shell
|
|
helm plugin update dashboard
|
|
```
|
|
|
|
To uninstall, run:
|
|
|
|
```shell
|
|
helm plugin uninstall dashboard
|
|
```
|
|
|
|
To use the plugin, your machine needs to have working `helm` and also `kubectl` commands. Helm version 3.4.0+ is required.
|
|
|
|
After installing, start the UI by running:
|
|
|
|
```shell
|
|
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.
|
|
|
|
You can see the list of available command-line flags by running `helm dashboard --help`.
|
|
|
|
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.
|
|
This can also be specified using flag `--bind <host>`, for example `--bind=0.0.0.0` or `--bind 0.0.0.0`.
|
|
|
|
> Precedence order: flag `--bind=<host>` > env `HD_BIND=<host>` > default value `localhost`
|
|
|
|
If your port 8080 is busy, you can specify a different port to use via `--port <number>` command-line flag.
|
|
|
|
If you need to limit the operations to a specific namespace, please use `--namespace=...` in your command-line. You can specify multiple namespaces, separated by commas.
|
|
|
|
If you don't want browser tab to automatically open, add `--no-browser` flag in your command line.
|
|
|
|
If you want to increase the logging verbosity and see all the debug info, use the `--verbose` flag.
|
|
|
|
> Disclaimer: For the sake of improving the project quality, there is user analytics collected by the tool. You can disable this collecting with `--no-analytics` option. The collection is done via DataDog RUM and Heap Analytics. Only the anonymous data is collected, no sensitive information is used.
|
|
|
|
### Deploying Helm Dashboard on Kubernetes
|
|
|
|
The official helm chart is [available here](https://github.com/komodorio/helm-charts/blob/master/charts/helm-dashboard)
|
|
|
|
## Support Channels
|
|
|
|
We have two main channels for supporting the Helm Dashboard
|
|
users: [Slack community](https://komodorkommunity.slack.com) for general conversations
|
|
and [GitHub issues](https://github.com/komodorio/helm-dashboard/issues) for real bugs.
|
|
|
|
## Contributing
|
|
|
|
Kindly read our [Contributing Guide](CONTRIBUTING.md) to learn and understand about our development process, how to propose bug fixes and improvements, and how to build and test your changes to Helm Dashboard. <br>
|
|
|
|
## Contributors
|
|
|
|
<a href="https://github.com/komodorio/helm-dashboard/graphs/contributors">
|
|
<img src="https://contrib.rocks/image?repo=komodorio/helm-dashboard" />
|
|
</a>
|
|
|
|
## Local Dev Testing
|
|
|
|
Prerequisites, binaries installed and operational:
|
|
|
|
- [Go](https://go.dev/doc/install)
|
|
|
|
There is a need to build binary for plugin to function, run:
|
|
|
|
### Linux
|
|
|
|
```shell
|
|
go build -o bin/dashboard .
|
|
```
|
|
|
|
### Windows
|
|
|
|
```bat
|
|
go build -o bin\dashboard.exe .
|
|
```
|
|
|
|
You can just run the `dashboard` or `dashboard.exe` binary directly, it will just work.
|
|
|
|
To install, checkout the source code and run from source dir:
|
|
|
|
```shell
|
|
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:
|
|
|
|
```shell
|
|
helm dashboard
|
|
```
|
|
|
|
Then, use the web UI.
|