* 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>
10 KiB
Helm Dashboard Features Overview
General Layout and Navigation
Shutting down the app
If you run the tool locally, you can shutdown the running process. This is useful when you can't find the console where you started it, or when it was started without console.
To close Helm-dashboard, click on the button in the rightmost corner of the screen. Once you click on it, your Helm-dashboard will be shut down.
Releases Management Section
Switching Clusters
When started as local binary, the tool reads the list of available cluster connections from kubectl config file. Those connections are displayed on the left side of the screen.
If you want to switch to a different cluster, simply click on the corresponding cluster as shown in the figure. You can read here to learn on how to configure access to multiple clusters.
Reset Cache
The "Reset Cache" feature in Helm Dashboard clears the cached data and fetches the latest information from the backend or data source. It ensures that the dashboard displays up-to-date data and reflects any recent changes or updates.

Repository
Essentially, a repository is a location where charts are gathered and can be shared. If you want to learn more about repositories, click here. You can find the repository in the home section, as depicted in the figure.

You can add the repository by clicking on 'Add Repository', as shown in the figure.

Installed Releases List
A release is an installation of your Helm chart deployed in your Kubernetes Cluster. That means every time that you
install or upgrade a Helm chart, it creates a new release revision that coexists with other releases. You
can filter releases based on namespaces or search for release names

The squares represent k8s resources installed by the release. Hover over each square to view a tooltip with details.
Yellow indicates "pending," green signifies a healthy state, and red indicates an unhealthy state.

It indicates the version of chart that corresponds to this release.

A revision is linked to a release to track the number of updates/changes that release encounters.

Namespaces are a way to organize clusters into virtual sub-clusters — they can be helpful when different teams or
projects share a Kubernetes cluster. Any number of namespaces are supported within a cluster, each logically separated
from others but with the ability to communicate with each other.

Updated" refers to the amount of time that has passed since the last revision of the release. Whenever you install or
upgrade the release, a new revision is created. You can think of it as the "age" of the latest revision.

Indication of upgrade possible/repo suggested.

Release details
This indicates the status of the deployed release, and 'Age' represents the amount of time that has passed since the
creation of the revision until now.

You can use the Upgrade/Downgrade button to switch to different release versions, as shown in the figure.

Confirm the upgrade settings and configuration and click on confirm button to continue

Once the upgrade is done, your release will show the status

It executes the test scripts or commands within the deployed application's environment and displays the results

The Helm Dashboard provides basic information about your Helm releases, including revision number, deployment date, release message, cluster details, and deployment status.

Resource Tab
In the Resources tab of the Helm Dashboard, you can view the kind (type), name, status, and any associated messages for your Kubernetes resources.

Manifest Tab
Text: The Manifests tab displays the textual representation of the Kubernetes manifests associated with your Helm release. It provides the YAML or JSON configuration files that define the desired state of the resources deployed in your cluster.

Diff with Previous: The "Diff with Previous" feature allows you to compare the current version of the manifests with the previous version. It highlights the differences between the two versions, making it easier to identify the changes made in the deployment.

Diff with Specific: The "Diff with Specific" option enables you to compare the current version of the manifests with a specific past version. It allows you to select a particular revision and view the differences between that revision and the current one.

Values Tab
Text: The Values tab displays the textual representation of the values file associated with your Helm chart. It shows the YAML or JSON file that contains the configuration values used during the deployment of the chart.

Diff: The "Diff" feature allows you to compare the current values with the previous values used in a previous deployment. It highlights any differences between the two versions, making it easier to identify changes made to the configuration.

Text Tab
Text: The Notes tab displays any accompanying notes or documentation related to the Helm chart.

Diff with previous: The "Diff" feature is not typically available in the Notes tab. This tab is primarily meant for viewing the static text-based notes associated with the chart and doesn't involve comparisons or tracking changes like in the Manifests or Values tabs.

Diff with Specific Version: Similar to the previous point, the ability to view a diff with a specific version of the notes is not a standard feature in the Notes section of the Helm Dashboard. The Notes section usually presents the information for the specific version of the Helm chart that is currently deployed.

Execute Helm tests
For all the release(s) (installed helm charts), you can execute helm tests for that release. For the tests to execute successfully, you need to have existing tests for that helm chart.
You can execute helm test for the specific release as below:

The result of executed helm test for the release will be displayed as below:

Scanner Integrations
Upon startup, Helm Dashboard detects the presence of Trivy and Checkov scanners. When available, these scanners are offered on k8s resources page, as well as install/upgrade preview page.
You can request scanning of the specific k8s resource in your cluster:

If you want to validate the k8s manifest prior to installing/reconfiguring a Helm chart, look for "Scan for Problems"
button at the bottom of the dialog:

Repository Section
Essentially, a repository is a location where charts are gathered and can be shared over network. If you want to learn more about Helm chart repositories, click here.
You can access the repository management area of Helm Dashboard in the main navigation section, as depicted in the figure.
You can add the repository by clicking on 'Add Repository' button on the left, as shown in the figure.

After completing that step, enter the following data: the repository name and its URL. You can also add the username and
password, although this is optional.

Updating means refreshing your repository. You can update your repository as shown in the figure.

If you want to remove your repository from the Helm dashboard, click on the 'Remove' button as shown in the figure.

Use the filter option to find the desired chart quicker from the list of charts.

If you want to install a particular chart, simply hover the pointer over the chart name and an 'Install' button will
appear, as shown in the figure.

Support for Local Charts
Local Helm chart is a directory with specially named files and a Chart.yaml file, which you can install via Helm,
without the need to publish the chart into Helm repository. Chart developers might want to experiment with the chart
locally, before uploading into public repository. Also, a proprietary application might only use non-published chart as
an approach to deploy the software.
For all the above use-cases, you may use Helm Dashboard UI, specifying the location of your local chart folders via
special --local-chart command-line parameter. The parameter might be specified multiple times, for example:
helm-dashboard --local-chart=/opt/charts/my-private-app --local-chart=/home/dev/sources/app/chart
When valid local chart sources specified, the repository list would contain a surrogate [local] entry, with those
charts listed inside. All the chart operations are normal: installing, reconfiguring and upgrading.



