Update chart to use workflow-controller v2.2.1, bump chart version to v0.3.0

This commit is contained in:
Jesse Suen 2018-11-29 15:16:59 -08:00
parent b487b6c107
commit 8af4ee0943
No known key found for this signature in database
GPG key ID: 95AE9BEA7206422B
13 changed files with 35 additions and 77 deletions

View file

@ -5,7 +5,7 @@ workflowNamespace: default
argo:
imagesNamespace: argoproj
enableWebConsole: false
installMinio: true
minioBucketName: argo-artifacts
useReleaseAsInstanceID: true

View file

@ -1,4 +1,4 @@
apiVersion: v1
description: A Helm chart for Kubernetes
name: argo
version: 0.2.1
version: 0.3.0

View file

@ -22,7 +22,6 @@ Fields to note:
* `controller.instanceID.useReleaseName`: If set to true then chart set controller instance id to release name
* `controller.instanceID.explicitID`: Allows customization of an instance id for the workflow controller to monitor
* `controller.workflowNamespaces`: This is a list of namespaces where workflows will be ran
* `ui.enableWebConsole`: Enables ability to SSH into pod using web UI
* `minio.install`: If this is true, we'll install [minio](https://github.com/kubernetes/charts/tree/master/stable/minio) and build out the artifactRepository section in workflow controller config map.
* `artifactRepository.s3.accessKeySecret` and `artifactRepository.s3.secretKeySecret` These by default link to minio default credentials stored in the secret deployed by the minio chart.

View file

@ -1,14 +1,11 @@
1. Make sure Workflow CRD is created by running:
echo '{"apiVersion": "apiextensions.k8s.io/v1beta1","kind": "CustomResourceDefinition", "metadata": {"name": "workflows.argoproj.io"},
"spec": {"group": "argoproj.io","names":
{"kind": "Workflow","listKind": "WorkflowList","plural": "workflows","shortNames": ["wf"],"singular": "workflow"}, "scope": "Namespaced","version": "v1alpha1"}}' \
| kubectl create -f -
2. Get Argo UI external IP/domain by running:
1. Get Argo UI external IP/domain by running:
kubectl --namespace {{ .Release.Namespace }} get services -o wide | grep {{ .Release.Name }}-{{ .Values.uiName }}
2. Submit the hello-world workflow by running:
argo submit https://raw.githubusercontent.com/argoproj/argo/master/examples/hello-world.yaml --watch
{{ if .Values.minio.install }}
3. Access Minio UI and create bucket '{{ .Values.minio.defaultBucket.name }}'. Minio UI is available on port 9000 and available via external URL. URL might be retrieved using following

View file

@ -14,23 +14,3 @@ We truncate at 63 chars because some Kubernetes name fields are limited to this
{{- $name := default .Chart.Name .Values.nameOverride -}}
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}}
{{- end -}}
{{- define "workflow-crd-json" }}
{
"apiVersion": "apiextensions.k8s.io/v1beta1",
"kind": "CustomResourceDefinition",
"metadata": {
"name": "workflows.argoproj.io"
},
"spec": {
"group": "argoproj.io",
"names": {
"kind": "Workflow",
"plural": "workflows",
"shortNames": ["wf"]
},
"scope": "Namespaced",
"version": "v1alpha1"
}
}
{{- end}}

View file

@ -1,19 +0,0 @@
{{- define "workflow-crd-json" }}
{
"apiVersion": "apiextensions.k8s.io/v1beta1",
"kind": "CustomResourceDefinition",
"metadata": {
"name": "workflows.argoproj.io"
},
"spec": {
"group": "argoproj.io",
"names": {
"kind": "Workflow",
"plural": "workflows",
"shortNames": ["wf"]
},
"scope": "Namespaced",
"version": "v1alpha1"
}
}
{{- end}}

View file

@ -1,19 +0,0 @@
apiVersion: batch/v1
kind: Job
metadata:
name: {{ .Release.Name }}-apply-workflow-crd
annotations:
helm.sh/hook: pre-install
helm.sh/hook-delete-policy: hook-succeeded
spec:
backoffLimit: 5
activeDeadlineSeconds: 100
template:
spec:
serviceAccountName: {{ .Values.init.serviceAccount | quote }}
containers:
- name: kubectl-apply
image: lachlanevenson/k8s-kubectl
command: ["/bin/sh"]
args: ["-c", 'echo ''{{- include "workflow-crd-json" .}}'' | kubectl apply -f -']
restartPolicy: Never

View file

@ -24,7 +24,10 @@ spec:
env:
- name: IN_CLUSTER
value: "true"
{{- if .Values.ui.enableWebConsole }}
- name: ENABLE_WEB_CONSOLE
value: "true"
{{- end }}
- name: ARGO_NAMESPACE
valueFrom:
fieldRef:
apiVersion: v1
fieldPath: metadata.namespace
- name: BASE_HREF
value: /

View file

@ -15,6 +15,7 @@ rules:
- watch
- update
- patch
- delete
- apiGroups:
- ""
resources:
@ -34,9 +35,11 @@ rules:
- argoproj.io
resources:
- workflows
- workflows/finalizers
verbs:
- get
- list
- watch
- update
- patch
- delete

View file

@ -31,4 +31,3 @@ data:
endpoint: {{ .Values.artifactRepository.s3.endpoint | default (printf "%s-%s" .Release.Name "minio:9000") }}
insecure: {{ .Values.artifactRepository.s3.insecure }}
{{- end}}
executorImage: "{{ .Values.images.namespace }}/{{ .Values.images.executor }}:{{ .Values.images.tag }}"

View file

@ -26,6 +26,8 @@ spec:
args:
- "--configmap"
- "{{ .Release.Name }}-{{ .Values.controller.name}}-configmap"
- "--executor-image"
- "{{ .Values.images.namespace }}/{{ .Values.images.executor }}:{{ .Values.images.tag }}"
- "--loglevel"
- "{{ .Values.controller.logging.level }}"
- "--gloglevel"

View file

@ -0,0 +1,15 @@
apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:
name: workflows.argoproj.io
annotations:
helm.sh/hook: crd-install
spec:
group: argoproj.io
version: v1alpha1
scope: Namespaced
names:
kind: Workflow
plural: workflows
shortNames:
- wf

View file

@ -3,7 +3,7 @@ images:
controller: workflow-controller
ui: argoui
executor: argoexec
tag: v2.1.1
tag: v2.2.1
crdVersion: v1alpha1
@ -35,8 +35,6 @@ ui:
# optional map of annotations to be applied to the ui Pods
podAnnotations: {}
name: ui
# Enables ability to SSH into pod using web UI
enableWebConsole: false
serviceType: ClusterIP
servicePort: 80
serviceAccount: argo-ui