helm/templates/agents.yaml (65 lines of code) (raw):

apiVersion: apps/v1 kind: DaemonSet metadata: name: kraken-agent spec: selector: matchLabels: app.kubernetes.io/name: kraken app.kubernetes.io/component: agent app.kubernetes.io/instance: {{ .Release.Name }} template: metadata: labels: app.kubernetes.io/name: kraken app.kubernetes.io/component: agent app.kubernetes.io/instance: {{ .Release.Name }} {{ with .Values.agent.annotations }} annotations: {{ tpl . $ | indent 8 -}} {{- end }} spec: {{ with .Values.agent.tolerations -}} tolerations: {{ toYaml . | indent 6 }} {{- end -}} {{ with .Values.agent.initContainers -}} initContainers: {{ toYaml . | indent 6 -}} {{- end -}} containers: - name: main image: {{ .Values.kraken.repository }}/kraken-agent:{{ .Values.kraken.tag }} imagePullPolicy: {{ .Values.kraken.imagePullPolicy }} command: - /usr/bin/kraken-agent - --config={{ .Values.agent.config }} - --agent-server-port=80 - --peer-port=8080 - --agent-registry-port=8081 volumeMounts: - name: config mountPath: /etc/config {{ with .Values.agent.extraVolumeMounts }}{{ toYaml . | indent 8 }}{{ end }} volumes: - name: config configMap: name: kraken {{ with .Values.agent.extraVolumes }}{{ toYaml . | indent 6 }}{{ end }} --- kind: Service apiVersion: v1 metadata: name: kraken-agent spec: type: NodePort selector: app.kubernetes.io/name: kraken app.kubernetes.io/component: agent app.kubernetes.io/instance: {{ .Release.Name }} ports: - protocol: TCP port: 80 targetPort: 8081 nodePort: {{ .Values.kraken.registry_port }} externalTrafficPolicy: Local