note on naming of resources

Signed-off-by: Ryan Dawson <ryan.dawson@alfresco.com>
pull/4633/head
Ryan Dawson 7 years ago
parent e55cc79da3
commit 22c9b0c8a4

@ -73,7 +73,7 @@ Blocks (such as control structures) may be indented to indicate flow of the temp
``` ```
{{ if $foo -}} {{ if $foo -}}
{{- with .Bar }}Hello{{ end -}} {{- with .Bar }}Hello{{ end -}}
{{- end -}} {{- end -}}
``` ```
However, since YAML is a whitespace-oriented language, it is often not possible for code indentation to follow that convention. However, since YAML is a whitespace-oriented language, it is often not possible for code indentation to follow that convention.
@ -132,6 +132,43 @@ metadata:
``` ```
## Resource Naming in Templates
Hard-coding the `name:` into a resource is usually considered to be bad practice.
Names should be unique to a release. So we might want to generate a name field
by inserting the release name - for example:
```yaml
apiVersion: v1
kind: Service
metadata:
name: {{ .Release.Name }}-myservice
```
Or if there is only one resource of this kind then full template name (which includes the release name):
```yaml
apiVersion: v1
kind: Service
metadata:
name: {{ template "fullname" . }}
```
However, there may be cases where it is known that there won't be naming conflicts from a fixed name.
In these cases a fixed name might make it easier for an application to find a resource such as a Service.
If the option for fixed names is needed then one way to manage this might be to make the setting of the name explicit by using a service.name value from the values.yaml if provided:
```yaml
apiVersion: v1
kind: Service
metadata:
{{- if .Values.service.name }}
name: {{ .Values.service.name }}
{{- else }}
name: {{ template "fullname" . }}
{{- end }}
```
## Comments (YAML Comments vs. Template Comments) ## Comments (YAML Comments vs. Template Comments)
Both YAML and Helm Templates have comment markers. Both YAML and Helm Templates have comment markers.
@ -180,7 +217,7 @@ readable than other YAML representations.
For example, this YAML is closer to the normal YAML method of expressing lists: For example, this YAML is closer to the normal YAML method of expressing lists:
```yaml ```yaml
arguments: arguments:
- "--dirname" - "--dirname"
- "/foo" - "/foo"
``` ```

Loading…
Cancel
Save