diff --git a/Makefile b/Makefile index a4b652b..cd58ab3 100644 --- a/Makefile +++ b/Makefile @@ -160,12 +160,41 @@ helm-template: helm-version## Generate Helm templates. helm-install: helm-version## Install Helm chart. helm install khook helm/khook \ --namespace kagent \ - --create-namespace + --create-namespace \ + --set image.registry=$(DOCKER_REGISTRY) \ + --set image.repository=$(DOCKER_REPO)/$(DOCKER_IMAGE) \ + --set image.tag=$(VERSION) .PHONY: helm-upgrade helm-upgrade: helm-version## Upgrade Helm chart. helm upgrade khook helm/khook \ - --namespace kagent + --namespace kagent \ + --set image.registry=$(DOCKER_REGISTRY) \ + --set image.repository=$(DOCKER_REPO)/$(DOCKER_IMAGE) \ + --set image.tag=$(VERSION) + +.PHONY: build-deploy +build-deploy: docker-build helm-deploy ## Build Docker image and deploy via Helm. + @echo "Built and deployed image: $(IMG)" + +.PHONY: helm-deploy +helm-deploy: helm-version ## Deploy or upgrade Helm chart. + @if helm status khook --namespace kagent >/dev/null 2>&1; then \ + echo "Upgrading existing release..."; \ + helm upgrade khook helm/khook \ + --namespace kagent \ + --set image.registry=$(DOCKER_REGISTRY) \ + --set image.repository=$(DOCKER_REPO)/$(DOCKER_IMAGE) \ + --set image.tag=$(VERSION); \ + else \ + echo "Installing new release..."; \ + helm install khook helm/khook \ + --namespace kagent \ + --create-namespace \ + --set image.registry=$(DOCKER_REGISTRY) \ + --set image.repository=$(DOCKER_REPO)/$(DOCKER_IMAGE) \ + --set image.tag=$(VERSION); \ + fi .PHONY: helm-uninstall helm-uninstall: helm-version## Uninstall Helm chart. diff --git a/helm/khook/templates/deployment.yaml b/helm/khook/templates/deployment.yaml index 2749b83..ddc9cb6 100644 --- a/helm/khook/templates/deployment.yaml +++ b/helm/khook/templates/deployment.yaml @@ -28,7 +28,7 @@ spec: - name: manager securityContext: {{- toYaml .Values.securityContext | nindent 10 }} - image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}" + image: "{{- if .Values.image.registry }}{{ .Values.image.registry }}/{{- end }}{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}" imagePullPolicy: {{ .Values.image.pullPolicy }} command: - /manager diff --git a/helm/khook/values.yaml b/helm/khook/values.yaml index b253e70..fbe6e81 100644 --- a/helm/khook/values.yaml +++ b/helm/khook/values.yaml @@ -2,9 +2,11 @@ replicaCount: 1 image: - repository: otomato/khook + registry: cr.kagent.dev + repository: kagent-dev/khook pullPolicy: IfNotPresent - tag: "latest" + # tag will default to Chart.AppVersion if not specified + tag: "" imagePullSecrets: [] nameOverride: ""