Uploaded image for project: 'Helm'
  1. Helm
  2. HELM-275

Helm IDE Tooling

XMLWordPrintable

    • Icon: Epic Epic
    • Resolution: Unresolved
    • Icon: Undefined Undefined
    • None
    • None
    • Helm
    • 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:

      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

              Unassigned Unassigned
              slemeur@redhat.com Stevan Le Meur
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Created:
                Updated: