Tengo pocas dependencias como esta
dependencies:
- name: some-chart
version: "1.2.3"
repository: "file://../some-chart"
Y instalo mi gráfico así
helm install my-chart .
Sin embargo, agrega gráficos dependientes de mi nombre de versión. Entonces, por ejemplo, el pod del servidor 0 se implementa así
my-chart-some-chart-server-0
Si solo instalo el gráfico dependiente por sí solo, por ejemplo helm install some-chart ../some-chart, implementa 'servidor-0' así
some-chart-server-0
¿Existe alguna manera de implementar gráficos dependientes sin agregar el nombre de la versión como se esperaba?
------------------------------------
Ha pasado algún tiempo pero esta puede ser información importante para otros usuarios -
Como ha explicado David, esto no se puede cambiar con el timón y vienede las plantillas.
Si puedes encontrar lo siguiente en las plantillas
{{- if .Values.fullnameOverride -}}
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}}
entonces puedes usar fullnameOverride según tus necesidades.
Puedes anular los valores de la dependencia agregando en el archivo value.yaml del padre (my-chart) lo siguiente:
some-chart:
fullnameOverride: some-chart
Como resultado, el nombre del gráfico principal (mi-gráfico) se eliminará de los nombres de los recursos y verá su pod de servidor-0 como algún-servidor-de-gráficos-0 en lugar de como mi-gráfico-algunos. -chart-server-0.
------------------------------------
Esta convención de nomenclatura forma parte de las plantillas. Helm no lo agrega por sí solo y no puedes cambiarlo.sin cambiar las plantillas (ni realizar un posprocesamiento complejo).
Si ejecuta helm create, creará una gran cantidad de infraestructura para usted. Cosas como la implementación generalmente tienen nombre
name: {{ include "<CHARTNAME>.fullname" . }}
Esa plantilla, a su vez, también forma parte del archivo _helpers.tpl generado (ligeramente recortado)
{{- define "<CHARTNAME>.fullname" -}}
{{- $name := default .Chart.Name .Values.nameOverride }}
{{- if contains $name .Release.Name }}
{{- .Release.Name | trunc 63 | trimSuffix "-" }}
{{- else }}
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }}
{{- end }}
{{- end }}
Entonces, si instalas some-chart ../some-chart, el nombre de la versión (el primer argumento de some-chart) coincide con el nombre del gráfico y obtendrás el mensaje "corto" forma de solo el nombre de la versión; pero si instala other-chart ../some-chart, obtendrá el formato de lanzamiento-nombre-nombre-sufijo del gráfico.
Esto no tiene nada que ver con que sea una dependencia, solo el nombre que estás usando para instalar la versión. Comparar:
helm install some-chart ../some-chart # using its "normal" name
helm install foo ../some-chart # using some other name
helm install my-chart . # "normal" name of parent, not dependency
helm install some-chart . # "normal" name of dependency, not parent
Este último caso debería ser interesante: si su gráfico principal utilizaEs la misma convención, en realidad verá nombres como algún-gráfico-mi-implementación-de-gráfico, pero la dependencia de algún-gráfico verá que los nombres de la versión y del gráfico coinciden, por lo que dentro de esa dependencia solo verá algún-gráfico-foo .