-
Epic
-
Resolution: Unresolved
-
Undefined
-
None
-
None
-
Helm IDE Tooling
-
False
-
False
-
To Do
-
0% To Do, 0% In Progress, 100% Done
Problem:
The level of support for Helm in different IDEs is sparse.
- VSCode is providing along with the Visual Studio Code Kubernetes Tools plugin a set of capabilities:
- Browse Helm repos and install charts into your Kubernetes cluster.
- Intellisense for Kubernetes resources and Helm charts and templates.
- Create Helm charts using scaffolding and snippets.
- IntelliJ: A tool exists as part of the Kubernetes plugin (https://www.jetbrains.com/help/idea/kubernetes.html#helm)
- Eclipse: nothing particularly standing out
Most of these are providing help when you want to bootstrap a new Helm template, when you want to preview/explore a rendered chart. There is also basic lint capabilities (the ones from helm lint).
In most of the discussion we had with developers, we understand that creating an Helm chart is usually done by starting from an existing deployment. Once the application is up, configured and manifests are behaving the right way, the developers would like to "Export in a configurable way" their application, so that it can start to be:
- templatized: so the application can be configured for different environments
- added to a gitops flow to ease deployment
- shared: on a helm chart repository
There is a whole "developer lifecycle" around doing these activities, so how can we help a developer to properly start his journey on templatizing his application by using Helm?
Also another aspect is on making sure that an helm chart gets properly authored. According to studies, 70% of the helm charts available on ArtifactHub are unsecured. (reference: https://thenewstack.io/applying-kubernetes-security-best-practices-to-helm-charts/).
In OpenShift's world, we also have constraints that are reinforced and which need to be taken into consideration when authoring an Helm Chart. The tooling should be helping the developers to right an Helm chart, "the right way".
There are tools that are checking Helm Chart which would be of great interest if the information they are provided were given at the time of writing the Helm Chart:
- our own helm-chart-verifier
- https://github.com/armosec/kubescape
- https://github.com/stackrox/kube-linter
- https://hub.datree.io/helm-plugin
Goal:
The goals of the IDE tooling we would be looking in those two folds:
- Build an Helm Chart from an existing deployment.
- Securing/Validating an Helm Chart for OpenShift readiness.
Why is it important?
This step is an important step for the customers into how they can package their applications for kubernetes and make that reusable across different environments - so it can get easily integrated into gitops experiences.
We would like to measure the success of this plugin by:
- number of Helm charts created
- number of helm chart pushed to a repository/registry
- number of helm chart validated/secured
Use cases
Acceptance criteria
Dependencies (External/Internal)
Design Artifacts
Exploration
Note
- is documented by
-
RHDEVDOCS-3580 [H] Add a link from Helm section of OCP docs to IDE docs
- Closed
- relates to
-
HELM-6 Generate chart from a deployed app on the cluster
- Closed