Skip to content

Commit 4e1df6a

Browse files
Merge pull request #90 from xueli181114/HYPERFLEET-794
HYPERFLEET-794 - chore: standardize appVersion and image.tag handling
2 parents 34ae499 + 42c24f2 commit 4e1df6a

5 files changed

Lines changed: 21 additions & 9 deletions

File tree

Makefile

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -259,13 +259,15 @@ test-helm: ## Test Helm charts (lint, template, validate)
259259
helm lint charts/ \
260260
--set image.registry=quay.io \
261261
--set image.repository=openshift-hyperfleet/hyperfleet-api \
262+
--set image.tag=test \
262263
--set 'adapters.cluster=["validation"]' \
263264
--set 'adapters.nodepool=["validation"]'
264265
@echo ""
265266
@echo "Testing template rendering with default values..."
266267
helm template test-release charts/ \
267268
--set image.registry=quay.io \
268269
--set image.repository=openshift-hyperfleet/hyperfleet-api \
270+
--set image.tag=test \
269271
--set 'adapters.cluster=["validation"]' \
270272
--set 'adapters.nodepool=["validation"]' > /dev/null
271273
@echo "Default values template OK"
@@ -274,6 +276,7 @@ test-helm: ## Test Helm charts (lint, template, validate)
274276
helm template test-release charts/ \
275277
--set image.registry=quay.io \
276278
--set image.repository=openshift-hyperfleet/hyperfleet-api \
279+
--set image.tag=test \
277280
--set 'adapters.cluster=["validation"]' \
278281
--set 'adapters.nodepool=["validation"]' \
279282
--set database.postgresql.enabled=false \
@@ -285,6 +288,7 @@ test-helm: ## Test Helm charts (lint, template, validate)
285288
helm template test-release charts/ \
286289
--set image.registry=quay.io \
287290
--set image.repository=openshift-hyperfleet/hyperfleet-api \
291+
--set image.tag=test \
288292
--set 'adapters.cluster=["validation"]' \
289293
--set 'adapters.nodepool=["validation"]' \
290294
--set autoscaling.enabled=true \
@@ -296,6 +300,7 @@ test-helm: ## Test Helm charts (lint, template, validate)
296300
helm template test-release charts/ \
297301
--set image.registry=quay.io \
298302
--set image.repository=openshift-hyperfleet/hyperfleet-api \
303+
--set image.tag=test \
299304
--set 'adapters.cluster=["validation"]' \
300305
--set 'adapters.nodepool=["validation"]' \
301306
--set podDisruptionBudget.enabled=true \
@@ -306,6 +311,7 @@ test-helm: ## Test Helm charts (lint, template, validate)
306311
helm template test-release charts/ \
307312
--set image.registry=quay.io \
308313
--set image.repository=openshift-hyperfleet/hyperfleet-api \
314+
--set image.tag=test \
309315
--set 'adapters.cluster=["validation"]' \
310316
--set 'adapters.nodepool=["validation"]' \
311317
--set serviceMonitor.enabled=true \
@@ -316,6 +322,7 @@ test-helm: ## Test Helm charts (lint, template, validate)
316322
helm template test-release charts/ \
317323
--set image.registry=quay.io \
318324
--set image.repository=openshift-hyperfleet/hyperfleet-api \
325+
--set image.tag=test \
319326
--set 'adapters.cluster=["validation"]' \
320327
--set 'adapters.nodepool=["validation"]' \
321328
--set auth.enableJwt=false \
@@ -335,6 +342,7 @@ test-helm: ## Test Helm charts (lint, template, validate)
335342
helm template test-release charts/ \
336343
--set image.registry=quay.io \
337344
--set image.repository=openshift-hyperfleet/hyperfleet-api \
345+
--set image.tag=test \
338346
--set 'adapters.cluster=["validation"]' \
339347
--set 'adapters.nodepool=["validation"]' \
340348
--set database.pgbouncer.enabled=true > /dev/null
@@ -344,6 +352,7 @@ test-helm: ## Test Helm charts (lint, template, validate)
344352
helm template test-release charts/ \
345353
--set image.registry=quay.io \
346354
--set image.repository=openshift-hyperfleet/hyperfleet-api \
355+
--set image.tag=test \
347356
--set-json 'adapters.cluster=["validation","dns","pullsecret","hypershift"]' \
348357
--set-json 'adapters.nodepool=["validation","hypershift"]' > /dev/null
349358
@echo "Full adapter config template OK"

charts/Chart.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ name: hyperfleet-api
33
description: HyperFleet API - Cluster Lifecycle Management Service
44
type: application
55
version: 1.0.0
6-
appVersion: "1.0.0"
6+
appVersion: "0.0.0-dev"
77
maintainers:
88
- name: HyperFleet Team
99
email: hyperfleet-team@redhat.com

charts/templates/_helpers.tpl

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -36,9 +36,7 @@ Common labels
3636
{{- define "hyperfleet-api.labels" -}}
3737
helm.sh/chart: {{ include "hyperfleet-api.chart" . }}
3838
{{ include "hyperfleet-api.selectorLabels" . }}
39-
{{- if .Chart.AppVersion }}
40-
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
41-
{{- end }}
39+
app.kubernetes.io/version: {{ .Values.image.tag | default .Chart.AppVersion | quote }}
4240
app.kubernetes.io/managed-by: {{ .Release.Service }}
4341
{{- end }}
4442

@@ -66,12 +64,17 @@ Create the name of the service account to use
6664
Validate required values that must not remain as placeholders.
6765
*/}}
6866
{{- define "hyperfleet-api.validateValues" -}}
69-
{{- if eq .Values.image.registry "CHANGE_ME" -}}
67+
{{- $registry := trim (toString .Values.image.registry) -}}
68+
{{- if or (not $registry) (eq $registry "CHANGE_ME") -}}
7069
{{- fail "image.registry must be set to actual container registry via --set image.registry=XXX. See docs/deployment.md for examples" -}}
7170
{{- end -}}
72-
{{- if eq .Values.image.repository "CHANGE_ME" -}}
71+
{{- $repository := trim (toString .Values.image.repository) -}}
72+
{{- if or (not $repository) (eq $repository "CHANGE_ME") -}}
7373
{{- fail "image.repository must be set (e.g. --set image.repository=openshift-hyperfleet/hyperfleet-api). See docs/deployment.md for examples" -}}
7474
{{- end -}}
75+
{{- if not (trim (toString .Values.image.tag)) -}}
76+
{{- fail "image.tag must be set (e.g. --set image.tag=abc1234)" -}}
77+
{{- end -}}
7578
{{- end }}
7679

7780
{{/*

charts/templates/deployment.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ spec:
4747
command: ['sh', '-c', 'until nc -z {{ include "hyperfleet-api.fullname" . }}-postgresql {{ .Values.database.postgresql.port }}; do echo waiting for postgresql; sleep 2; done']
4848
{{- end }}
4949
- name: db-migrate
50-
image: "{{ .Values.image.registry }}/{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}"
50+
image: "{{ .Values.image.registry }}/{{ .Values.image.repository }}:{{ .Values.image.tag }}"
5151
imagePullPolicy: {{ .Values.image.pullPolicy }}
5252
command: ["/app/hyperfleet-api", "migrate"]
5353
env:
@@ -65,7 +65,7 @@ spec:
6565
- name: {{ .Chart.Name }}
6666
securityContext:
6767
{{- toYaml .Values.securityContext | nindent 10 }}
68-
image: "{{ .Values.image.registry }}/{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}"
68+
image: "{{ .Values.image.registry }}/{{ .Values.image.repository }}:{{ .Values.image.tag }}"
6969
imagePullPolicy: {{ .Values.image.pullPolicy }}
7070
workingDir: /app
7171
# Simple command - configuration via ConfigMap and environment variables

charts/values.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ image:
77
registry: CHANGE_ME # Set to your actual container registry (e.g. quay.io)
88
repository: CHANGE_ME # e.g. openshift-hyperfleet/hyperfleet-api
99
pullPolicy: Always
10-
tag: ""
10+
tag: "" # Required — no default. Set via --set image.tag=<version>
1111

1212
imagePullSecrets: []
1313
nameOverride: ""

0 commit comments

Comments
 (0)