J'ai défini un graphique parent appelé base-microservice et est disponible sur mycompany.github.com/pages/base-microservice
La structure est la suivante:
base-microservice
- templates
- deployment.yaml
- ingress.yaml
- service.yaml
- Chart.yaml
- values.yaml
- index.yaml
- base-microservice-0.1.0.tgz
Je voudrais définir un graphique personnalisé qui hérite du graphique parent.
La structure est la suivante:
customapp-service
- customapp
- Chart.yaml
- charts
- requirements.yaml
- values.yaml
- src
requirements.yaml est le suivant:
dependencies:
- name: base-microservice
repository: https://mycompany.github.com/pages/base-microservice
version: 0.1.0
Quand je fais
helm install --repo https://mycompany.github.com/pages/base-microservice --name customapp --values customapp/values.yaml
Il crée et déploie le microservice de base au lieu de customapp .. en d'autres termes, mon Chart.yaml et values.yaml dans le graphique d'application personnalisé ne remplacent pas ce qui a été défini dans celui de base ..
Merci de savoir comment structurer l'application?
Vous voudrez peut-être lire la page de document Sous-graphiques et valeurs globales dans le référentiel de Helm. Il couvre la création d'un sous-graphique, l'ajout de valeurs et d'un modèle au sous-graphique, la substitution de valeurs à partir d'un graphique parent, les valeurs du graphique global et le partage de modèles avec des sous-graphiques. Il semble que vous vouliez l'exemple dans Overriding Values from a Parent Chart . Notez que toutes les valeurs transmises du parent au sous-graphique sont imbriquées sous une clé YAML du même nom que le sous-graphique. --set
la syntaxe est le même concept, il suffit de préfixer la clé avec le nom du sous-diagramme (--set subchartname.subchartkey=myvalue
.
En outre, docs.helm.sh a une bonne documentation consolidée de Helm, et la section Portée, dépendances et valeurs d'Intro To Charts donne plus de contexte au cas d'utilisation ci-dessus ainsi qu'à d'autres.