diff --git a/stable/concourse/Chart.yaml b/stable/concourse/Chart.yaml index b47317c008..a7035fc361 100644 --- a/stable/concourse/Chart.yaml +++ b/stable/concourse/Chart.yaml @@ -1,5 +1,6 @@ name: concourse -version: 0.3.2 +version: 0.4.0 +appVersion: 3.3.2 description: Concourse is a simple and scalable CI system. icon: https://avatars1.githubusercontent.com/u/7809479 keywords: diff --git a/stable/concourse/README.md b/stable/concourse/README.md index e6776fcfd4..7239c63621 100644 --- a/stable/concourse/README.md +++ b/stable/concourse/README.md @@ -14,7 +14,7 @@ This chart bootstraps a [Concourse](https://concourse.ci/) deployment on a [Kube ## Prerequisites Details -* Kubernetes 1.5 (for `StatefulSets` support) +* Kubernetes 1.6 (for `pod affinity` support) * PV support on underlying infrastructure (if persistence is required) ## Installing the Chart diff --git a/stable/concourse/templates/worker-statefulset.yaml b/stable/concourse/templates/worker-statefulset.yaml index 872b05130c..9fb9161694 100644 --- a/stable/concourse/templates/worker-statefulset.yaml +++ b/stable/concourse/templates/worker-statefulset.yaml @@ -7,6 +7,7 @@ metadata: chart: "{{ .Chart.Name }}-{{ .Chart.Version }}" release: "{{ .Release.Name }}" heritage: "{{ .Release.Service }}" + spec: serviceName: {{ template "worker.fullname" . }} replicas: {{ .Values.worker.replicas }} @@ -15,24 +16,9 @@ spec: labels: app: {{ template "worker.fullname" . }} annotations: - scheduler.alpha.kubernetes.io/affinity: > - { - "podAntiAffinity": { - "preferredDuringSchedulingIgnoredDuringExecution": [ - { - "weight": 100, - "labelSelector": { - "matchExpressions": [{ - "key": "app", - "operator": "In", - "values": ["{{ template "worker.fullname" . }}"] - }] - }, - "topologyKey": "kubernetes.io/hostname" - } - ] - } - } + {{- range $key, $value := .Values.worker.annotations }} + {{ $key }}: {{ $value | quote }} + {{- end }} spec: terminationGracePeriodSeconds: 60 containers: @@ -90,6 +76,16 @@ spec: readOnly: true - name: concourse-work-dir mountPath: /concourse-work-dir + affinity: + podAntiAffinity: + preferredDuringSchedulingIgnoredDuringExecution: + - weight: 100 + podAffinityTerm: + topologyKey: kubernetes.io/hostname + labelSelector: + matchLabels: + app: {{ template "worker.fullname" . }} + release: {{ .Release.Name | quote }} volumes: - name: concourse-keys secret: diff --git a/stable/concourse/values.yaml b/stable/concourse/values.yaml index f67b5fe86e..b369cde4ad 100644 --- a/stable/concourse/values.yaml +++ b/stable/concourse/values.yaml @@ -313,7 +313,7 @@ web: ## enabled: false - ## Annotations. + ## Annotations to be added to the web ingress. ## # annotations: # kubernetes.io/ingress.class: nginx @@ -357,6 +357,11 @@ worker: cpu: "100m" memory: "512Mi" + ## Annotations to be added to the worker pods. + ## + # annotations: + # iam.amazonaws.com/role: arn:aws:iam::123456789012:role/concourse + ## Persistent Volume Storage configuration. ## ref: https://kubernetes.io/docs/user-guide/persistent-volumes ##