gpt4 book ai didi

charts - 如何从子图表获取基本chart.yaml版本

转载 作者:行者123 更新时间:2023-12-02 12:32:43 25 4
gpt4 key购买 nike

我有一个总括图,它有一个几乎所有子图DeploymentConfig的模板。我如何从子图中获取基本图表版本。

可能的解决方案是覆盖子图表chart.yaml版本,但是我也尝试这样做而没有成功。

我在基础图表上尝试了_helpers.tpl
并在我的_deployment-config.yaml的基础图表​​上进行定义

{{- define "bitcore.deployment" -}}
{{- $common := dict "Values" .Values.bitcore -}}
{{- $noCommon := omit .Values "bitcore" -}}
{{- $overrides := dict "Values" $noCommon -}}
{{- $noValues := omit . "Values" -}}
{{- with merge $noValues $overrides $common -}}
apiVersion: apps.openshift.io/v1
kind: DeploymentConfig
metadata:
annotations:
openshift.io/generated-by: OpenShiftNewApp
labels:
app: ## here i need base chart version ##
name: {{ .Chart.Name }}
spec:
replicas: {{ .Values.replicaCount }}
selector:
app: {{ .Chart.Name }}
deploymentconfig: {{ .Chart.Name }}
strategy:
activeDeadlineSeconds: 21600
recreateParams:
timeoutSeconds: 600
resources: {}
type: Recreate
template:
metadata:
annotations:
openshift.io/generated-by: OpenShiftNewApp
labels:
app: {{ .Chart.Name }}
deploymentconfig: {{ .Chart.Name }}
test: required
spec:
containers:
- image: "{{ .Values.image.repository }}:xy"
imagePullPolicy: {{ .Values.global.image.pullPolicy }}
env:
- name: BIT_CORE_RUNTIME_PROFILE
value: '{{ required "Please provide runtime profile" .Values.global.runtimeProfile }}'
- name: JAVA_OPTS
value: '{{ required "Please provide Java Ops." .Values.global.javaOpts }}'
livenessProbe:
httpGet:
path: management/health
port: 1489
initialDelaySeconds: 30
periodSeconds: 60
timeoutSeconds: 10
successThreshold: 1
failureThreshold: 10
name: {{ .Chart.Name }}
ports:
- containerPort: 1480
protocol: TCP
readinessProbe:
httpGet:
path: management/health
port: 1489
initialDelaySeconds: 10
timeoutSeconds: 10
periodSeconds: 60
successThreshold: 1
failureThreshold: 10
resources:
{{- toYaml .Values.global.resources | nindent 12 }}
volumeMounts:
- mountPath: /logs
name: {{ .Chart.Name }}-volume-1
terminationMessagePath: /dev/termination-log
dnsPolicy: ClusterFirst
restartPolicy: Always
securityContext: {}
terminationGracePeriodSeconds: 30
volumes:
- name: {{ .Chart.Name }}-volume-1
emptyDir: {}
test: false
{{- end -}}
{{- end -}}

我期望使用复杂的版本(7.0.0-snapshot-dev-872),但是我得到了0.1.0的子图表版本

最佳答案

我认为您无法在任何地方以任何方式访问 super 图表的.Chart。毕竟,子图应该仍然可以独立运行。

使用 Helm 2最好的办法是将版本放入.Values.global部分。

在 Helm 2中,您必须将其写入生成版本的脚本中的顶级values.yaml中,因为那里没有任何代码。我相信在 Helm 3中应该可以通过脚本生成值。

关于charts - 如何从子图表获取基本chart.yaml版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57674245/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com