hashicorp / hashicorp/vault-helm

Stardardization of naming conventions for labels and resource names

Open
#265 0 comments 0 reactions 0 assignees View on GitHub
chart enhancement
Dominant language
Shell
Stars
1.3k
Forks
898
Avg merge
3d 1h
Merged PRs (30d)
1

Description

### Issue1: Chart.yaml
Ref. https://helm.sh/docs/topics/charts/
An issue request to update appVersion in Chart.yaml so that APP VERSION is listed
```
helm list --namespace vault
NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION
vault vault 1 2020-04-14 16:30:40.1957995 +0200 CEST deployed vault-0.5.0
```

### Issue2: Standard labels convention
An issue request to add these labels in ALL resources, including :

* ClusterRole
* ClusterRoleBinding
* Deployment
* MutatingWebhookConfiguration
* Service
* ServiceAccount
* ConfigMap
* PodDisruptionBudget
* RoleBinding
* StatefulSet

#### Standard labels
```
app.kubernetes.io/name: {{ include "vault.name" . }}-#thesuffix#
app.kubernetes.io/description: {{ include "vault.description" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
app.kubernetes.io/version: {{ .Release.Version }}
app.kubernetes.io/component: "vault-helm"
app.kubernetes.io/managed-by: "https://github.com/hashicorp/vault-helm"
app.kubernetes.io/part-of=vault
app.kubernetes.io/vendor=Hashicorp
helm.sh/chart: {{ include "vault.chart" . }}
```
#### Example in the comment areas for "extraLabels" i values.yaml
```
customerdomain.com/app-role="vaultRole"
customerdomain.com/contacts="FirstName LastName Or EmailAddress"
customerdomain.com/environment="prod Or staging Or test Or dev"
customerdomain.com/team=services
customerdomain.com/tier="backend Or frontend Or cache"
```

### Issue3: Update Suffix on resource names
An issue request to add suffix on ALL resources names **metadata.name**

| Template File | Resource | Current | New |
| ------ | ------ | ------ | ------ |
| server-disruptionbudget.yaml | PodDisruptionBudget | vault | vault-pdb |
| injector-serviceaccount.yaml | ServiceAccount | vault-agent-injector | vault-agent-injector-sa
| server-serviceaccount.yaml | ServiceAccount | vault | vault-sa |
| server-config-configmap.yaml | ConfigMap | vault-config | vault-cfm |
| injector-clusterrole.yaml | ClusterRole | vault-agent-injector-clusterrole | vault-agent-injector-clr |
| injector-clusterrolebinding.yaml | ClusterRoleBinding | vault-agent-injector-binding | vault-agent-injector-clrb |
| server-clusterrolebinding.yaml | ClusterRoleBinding | vault-server-binding | vault-server-clrb |
| server-discovery-role.yaml | Role | vault-discovery-role | vault-discovery-rle |
| server-discovery-rolebinding.yaml | RoleBinding | vault-discovery-rolebinding | vault-discovery-rleb |
| injector-service.yaml | Service | vault-agent-injector-svc | vault-agent-injector-svc |
| server-ha-active-service.yaml | Service | vault-active | vault-active-svc |
| server-ha-standby-service.yaml | Service | vault-standby | vault-standby-svc |
| server-headless-service.yaml | Service | vault-internal | vault-internal-svc |
| server-service.yaml | Service | vault | vault-svc |
| ui-service.yaml | Service | vault-ui | vault-ui-svc |
| injector-deployment.yaml | Deployment | vault-agent-injector | vault-agent-injector-dpl |
| injector-mutating-webhook.yaml | MutatingWebhookConfiguration | vault-agent-injector-cfg | vault-agent-injector-mwc |

Contributor guide

Open the contributing guide

Research direction

Start with Chart.yaml and the listed templates, including server-disruptionbudget.yaml, injector-serviceaccount.yaml, server-serviceaccount.yaml, and the remaining resource files in the naming table. Review how metadata labels and names are currently defined across all listed resources. Done means appVersion appears in helm list output, standard labels are present on every named resource, and the requested name suffixes are applied consistently.

Written by the indexing model from the issue text.

Assessment

Tech stack
helm, kubernetes, yaml
Domain
devops, infrastructure
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.