Helm is both "package manager" and "templating engine" - probably the best package manager but horrible template engine

This page summarizes the projects mentioned and recommended in the original post on reddit.com/r/kubernetes

Our great sponsors
  • InfluxDB - Build time-series-based applications quickly and at scale.
  • Zigi - The context switching struggle is real
  • SonarQube - Static code analysis for 29 languages.
  • Scout APM - Truly a developer’s best friend
  • cdk8s

    Define Kubernetes native apps and abstractions using object-oriented programming

    I hate this templating idea and it caused me so my issues in my day-to-day operation. I talk about that with a friend and he suggested me this project: https://github.com/cdk8s-team/cdk8s which can generate the YAMLs from code instead of the horrible templating engine. Their package manager is garbage though, so you probably still need helm to deploy. I probably will research more solutions, but just wanted to say that dont take Helm as the "textbook" solution and use it because everyone else does. Criticize everything, and I hope I had to read this kind of post to see that I am not just making those stuff up, and there are other solutions.

  • kube2pulumi

    Upgrade your Kubernetes YAML to a modern language

    Do you mean kube2pulumi (https://github.com/pulumi/kube2pulumi) ? Because it seems very small compared to other solutions.

  • InfluxDB

    Build time-series-based applications quickly and at scale.. InfluxDB is the Time Series Data Platform where developers build real-time applications for analytics, IoT and cloud-native services in less time with less code.

  • helmfile

    Deploy Kubernetes Helm Charts

    I always felt like dependencies in helm are for very simple non-coupled packages. I many times use Helmfile (https://github.com/roboll/helmfile) to manage dependencies instead of banging my head with vanilla Helm.

  • Pulumi

    Pulumi - Universal Infrastructure as Code. Your Cloud, Your Language, Your Way 🚀

  • cue

    The new home of the CUE language! Validate and define text-based and dynamic configuration

    One promising project - a little rough around the edges but one of their primary design focuses has been templating for k8s: cuelang

  • helm

    The Kubernetes Package Manager

  • devspace-demo

    A demo trialing the basic operation of Devspace

  • Zigi

    The context switching struggle is real. Zigi makes context switching a thing of the past. It monitors Jira and GitHub updates, pings you when PRs need approval and lets you take fast actions - all directly from Slack!

  • ketch

    Ketch is an application delivery framework that facilitates the deployment and management of applications on Kubernetes using a simple command line interface

    An idea may be to look at something like Ketch, and potentially combine it with Pulumi, TF, or others. Here is an example

  • adeploy

    Universal deployment tool for Kubernetes that supports rendering and deployment of lightweight Jinja templated k8s manifests as well as complex Helm charts.

    We created adeploy, which is using Jinja Templating to render Manifests out of a set of template files and variables. We added some functions i.e. to set versions, create labels, include files or to handle secret creation using gopass and support to run in CI/CD without re-creating secrets. Source + (some) docs: https://github.com/awesome-it/adeploy

  • carvel-kapp-controller

    Continuous delivery and package management for Kubernetes.

    We use kapp-controller when applying our charts (it uses helm template instead of helm install) so we can be very rigorous about what fields are changeable (like through pod autoscaling) and what are not (securitycontext, etc.)

  • helm-x

    Treat any Kustomization or K8s manifests directory as a Helm chart

    TLDR Use cdk8s + helm-x to be able to deploy cdk8s manifests as helm charts, with all the benifits of helm.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts