61 lines
2.1 KiB
YAML
61 lines
2.1 KiB
YAML
{{- define "common.task-helm-upgrade-from-source" }}
|
|
{{- $common := dict "Values" .Values.common -}}
|
|
{{- $noCommon := omit .Values "common" -}}
|
|
{{- $overrides := dict "Values" $noCommon -}}
|
|
{{- $noValues := omit . "Values" -}}
|
|
{{- with merge $noValues $overrides $common -}}
|
|
apiVersion: tekton.dev/v1
|
|
kind: Task
|
|
metadata:
|
|
name: helm-upgrade-from-source
|
|
namespace: {{ .Release.Namespace }}
|
|
spec:
|
|
description: These tasks will install / upgrade a helm chart into your Kubernetes
|
|
/ OpenShift Cluster using Helm
|
|
params:
|
|
- description: The directory in source that contains the helm chart
|
|
name: charts_dir
|
|
type: string
|
|
- default: v1.0.0
|
|
description: The helm release version in semantic versioning format
|
|
name: release_version
|
|
type: string
|
|
- default: helm-release
|
|
description: The helm release name
|
|
name: release_name
|
|
type: string
|
|
- default: ""
|
|
description: The helm release namespace
|
|
name: release_namespace
|
|
type: string
|
|
- default: ""
|
|
description: 'Specify the values you want to overwrite, comma separated: autoscaling.enabled=true,replicas=1'
|
|
name: overwrite_values
|
|
type: string
|
|
- default: values.yaml
|
|
description: The values file to be used
|
|
name: values_file
|
|
type: string
|
|
- default: {{ .Values.quayHostname }}/{{ .Values.organizationName }}/k8s-helm:latest
|
|
description: helm image to be used
|
|
name: helm_image
|
|
type: string
|
|
- default: ""
|
|
description: Extra parameters passed for the helm upgrade command
|
|
name: upgrade_extra_params
|
|
type: string
|
|
steps:
|
|
- image: $(params.helm_image)
|
|
name: upgrade
|
|
script: |
|
|
echo current installed helm releases
|
|
helm list --namespace "$(params.release_namespace)"
|
|
|
|
echo installing helm chart...
|
|
helm upgrade --install --wait --values "$(params.charts_dir)/$(params.values_file)" --namespace "$(params.release_namespace)" --version "$(params.release_version)" "$(params.release_name)" "$(params.charts_dir)" --debug --set "$(params.overwrite_values)" $(params.upgrade_extra_params)
|
|
workingDir: /workspace/source
|
|
workspaces:
|
|
- name: source
|
|
{{- end }}
|
|
{{- end }}
|