General Conventions

This part of the Best Practices Guide explains general conventions.

Chart Names

Chart names should be lower case letters and numbers. Words may be separatedwith dashes (-):

Examples:

  1. drupal
  2. nginx-lego
  3. aws-cluster-autoscaler

Neither uppercase letters nor underscores should be used in chart names. Dotsshould not be used in chart names.

The directory that contains a chart MUST have the same name as the chart. Thus,the chart nginx-lego MUST be created in a directory called nginx-lego/. Thisis not merely a stylistic detail, but a requirement of the Helm Chart format.

Version Numbers

Wherever possible, Helm uses SemVer 2 to represent versionnumbers. (Note that Docker image tags do not necessarily follow SemVer, and arethus considered an unfortunate exception to the rule.)

When SemVer versions are stored in Kubernetes labels, we conventionally alterthe + character to an _ character, as labels do not allow the + sign as avalue.

Formatting YAML

YAML files should be indented using two spaces (and never tabs).

Usage of the Words Helm and Chart

There are a few conventions for using the words Helm and helm.

  • Helm refers to the project as a whole
  • helm refers to the client-side command
  • The term chart does not need to be capitalized, as it is not a proper noun
  • However, Chart.yaml does need to be capitalized because the file name is case sensitiveWhen in doubt, use Helm (with an uppercase ‘H’).