Skip to content

Roadmap

Steve Speicher edited this page Jan 29, 2018 · 19 revisions

Update: The Helm team now uses github milestones to track the progress of the project.

This is the official roadmap for the Kubernetes Helm project. Minor conversation on the roadmap can be handled on Issue 694. Also roadmap items are tracked via GitHub milestones.

2.x Roadmap

2.3.0 (Open for small additions)

The definitive source of information is the milestone

2.4.0 (Not finalized)

  • Kubernetes 1.6 integration release
  • Pluggable Tiller backends
  • New template functions

Additional 2.x releases

3.x Roadmap

This portion of the roadmap is a projection of things that may be added in the indefinite future, and which will definitely break the SemVer compatibility restraints on the 2.x model. It is here for discussion purposes, and does not reflect a finalized roadmap.


Historical Releases

Below are the Kubernetes Helm releases that have already occurred. They are retained here for record-keeping, and they are arranged newest-to-oldest.

2.0.x Roadmap

The current target release is: v2.0.0

2.0.x Patch Releases

From here, there may be any number of 2.0.x patch-level fixes. Patch releases follow the constraints of SemVer 2: Only bug fixes that do not alter the API, set of commands. Between client and server, any client patch release should be able to interoperate with any tiller patch release.

2.2.0

  • Chart Testing MVP: Create a version of the helm install --test feature that will run tests in the cluster
  • Diff output: helm upgrade --diff can print out a diff view of the changes to be made.
  • Improved developer output: Commands like helm install will show better error messages on parse errors.
  • SSL certificate management: Tiller SSL certificates can be managed

2.1.0

  • Kubernetes 1.5 support
  • Plugins: Implement Git-style shell drop-throughs
  • Helm documentation: Add helm docs command to generate Markdown and Man pages from CLI documentation
  • Namespaces: Allow Tiller to be installed in any namespace (not just kube-system)
  • "Keep" annotation: Allow resource annotations that mark a resource as "keep", to be skipped during helm delete.

2.0.0 Final:

  • Helm is stable, well tested, and documented.

v2.0.0 RC-1:

  • Proto definitions are finalized (no fields may be changed or deleted, no fields added until 2.1 development)
  • ConfigMap storage is stable
  • Tiller is stable
  • Helm is stable
  • The following are considered frozen until 2.1:
    • The cli commands (none may be added, removed, modified; output format should be stable)
    • Proto definitions
    • requirements.yaml, index.yaml, Chart.yaml
    • on-disk layout of charts
    • provenance file format
    • on-disk layout of $HELM_HOME
    • Protocol for chart repositories

v2.0.0 Beta-1:

The focus of the Beta lifecycle is eliminating bugs, increasing stability, and improving documentation. To that end, Beta releases will occur when major improvements/fixes are made.

  • Chart.yaml format is frozen (no add/remove/update of fields)
  • Chart format is finalized (No fields modified between now and 2.1)
  • Index format is finalized (No fields are modified or removed between now and 3.0, additions are okay)
  • CLI names are finalized (No command names are modified or removed between now and 3.0, additions are okay)
  • Template rendering of Go templates is finalized (Built-in variables are final, no functions may be deleted)
  • helm upgrade and helm rollback become stable and predictable
  • Draft of end-to-end documentation is complete

v2.0.0 Alpha-5:

These are "last call" features, that if pushed from Alpha.5 will go to 2.1

  • Rollback and helm rollback features #1004
  • Version compatibility checking between client and server #858 #761
  • Support requirements.yaml #874
  • UX improvements for Helm CLI #1196 #1198 #1199
  • New index.yaml format #1197

2.0.0 Alpha-4:

  • k8s API compatibility checks for charts #1001
  • Binary release of helm client #999
  • Helm can generate.prov file with signature #983
  • helm status includes extended output #993

2.0.0 Alpha-3:

  • ConfigMap-based storage of releases #656
  • Rudimentary support for upgrading a release to a newer chart using helm upgrade RELEASE #690
  • Implementation of namespaces that represents how we are going to do this for 2.0.0
  • Set up official chart repository & publish contribution process #700

2.0.0 Alpha-2:

  • Global variables declared in values.toml files #630
  • Install a chart from a repository (helm install -v myvalues.toml kubernetes-charts/nginx-0.1.0)
  • Ability to test a chart for conformance using helm lint
  • Ability for helm to run as a package service for development using helm serve

2.0.0 Alpha-1:

  • Install Tiller into a running Kubernetes cluster with helm init
  • Locally configured environment with helm init
  • Functional chart format, along with a chart archive format
  • Functional release storage format
  • In-memory storage of releases within Tiller
  • Support for Kubernetes-based tunneling of Helm to Tiller
  • Ability to install a chart using helm install CHART
  • Ability to list releases using helm list
  • Ability to get details of a release using helm get, helm get manifest, and helm get values
  • Ability to manage upstream repos with helm repo add, helm repo delete, helm repo list, and helm update
  • Ability to do a rudimentary search of package repos using helm search and fetch a package using helm fetch
  • Ability to create and package charts with helm create and helm package