github.com/replicatedhq/ship@v0.55.0/integration/init/kibana/expected/.ship/upstream/templates/deployment.yaml (about)

     1  apiVersion: apps/v1beta1
     2  kind: Deployment
     3  metadata:
     4    labels:
     5      app: {{ template "kibana.name" . }}
     6      chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
     7      heritage: {{ .Release.Service }}
     8      release: {{ .Release.Name }}
     9    name: {{ template "kibana.fullname" . }}
    10  {{- if .Values.deployment.annotations }}
    11    annotations:
    12  {{ toYaml .Values.deployment.annotations | indent 4 }}
    13  {{- end }}
    14  spec:
    15    replicas: {{ .Values.replicaCount }}
    16    revisionHistoryLimit: {{ .Values.revisionHistoryLimit }}
    17    template:
    18      metadata:
    19        annotations:
    20          checksum/config: {{ include (print $.Template.BasePath "/configmap.yaml") . | sha256sum }}
    21  {{- if .Values.podAnnotations }}
    22  {{ toYaml .Values.podAnnotations | indent 8 }}
    23  {{- end }}
    24        labels:
    25          app: {{ template "kibana.name" . }}
    26          release: "{{ .Release.Name }}"
    27      spec:
    28        serviceAccountName: {{ template "kibana.serviceAccountName" . }}
    29        {{- if .Values.priorityClassName }}
    30        priorityClassName: "{{ .Values.priorityClassName }}"
    31        {{- end }}
    32  {{- if or (.Values.dashboardImport.dashboards) (.Values.plugins.enabled) }}
    33        initContainers:
    34  {{- if .Values.dashboardImport.dashboards }}
    35        - name: {{ .Chart.Name }}-dashboardimport
    36          image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
    37          imagePullPolicy: {{ .Values.image.pullPolicy }}
    38          command: ["/bin/bash"]
    39          args:
    40            - "-c"
    41            - "/tmp/dashboardImport.sh"
    42  {{- if .Values.commandline.args }}
    43  {{ toYaml .Values.commandline.args | indent 10 }}
    44  {{- end }}
    45          env:
    46          {{- range $key, $value := .Values.env }}
    47          - name: "{{ $key }}"
    48            value: "{{ $value }}"
    49          {{- end }}
    50          ports:
    51          - containerPort: {{ .Values.service.internalPort }}
    52            name: {{ template "kibana.name" . }}
    53            protocol: TCP
    54          volumeMounts:
    55          - name: {{ template "kibana.fullname" . }}-dashboards
    56            mountPath: "/kibanadashboards"
    57          - name: {{ template "kibana.fullname" . }}-importscript
    58            mountPath: "/tmp/dashboardImport.sh"
    59            subPath: dashboardImport.sh
    60          {{- range $configFile := (keys .Values.files) }}
    61          - name: {{ template "kibana.name" $ }}
    62            mountPath: "/usr/share/kibana/config/{{ $configFile }}"
    63            subPath: {{ $configFile }}
    64          {{- end }}
    65  {{- end }}
    66  {{- if .Values.plugins.enabled}}
    67        - name: {{ .Chart.Name }}-plugins-install
    68          image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
    69          imagePullPolicy: {{ .Values.image.pullPolicy }}
    70          command:
    71            - /bin/bash
    72            - "-c"
    73            - |
    74              set -e
    75              rm -rf plugins/lost+found
    76              plugins=(
    77              {{- range .Values.plugins.values }}
    78              {{ . }}
    79              {{- end }}
    80              )
    81              if {{ .Values.plugins.reset }}
    82              then
    83                for p in $(./bin/kibana-plugin list | cut -d "@" -f1)
    84                do
    85                  ./bin/kibana-plugin remove ${p}
    86                done
    87              fi
    88              for i in "${plugins[@]}"
    89              do
    90                IFS=',' read -ra PLUGIN <<< "$i"
    91                pluginInstalledCheck=$(./bin/kibana-plugin list | grep "${PLUGIN[0]}" | cut -d '@' -f1 || true)
    92                pluginVersionCheck=$(./bin/kibana-plugin list | grep "${PLUGIN[0]}" | cut -d '@' -f2 || true)
    93                if [ "${pluginInstalledCheck}" = "${PLUGIN[0]}" ]
    94                then
    95                  if [ "${pluginVersionCheck}" != "${PLUGIN[1]}" ]
    96                  then
    97                    ./bin/kibana-plugin remove "${PLUGIN[0]}"
    98                    ./bin/kibana-plugin install "${PLUGIN[2]}"
    99                  fi
   100                else
   101                  ./bin/kibana-plugin install "${PLUGIN[2]}"
   102                fi
   103              done
   104          env:
   105          {{- range $key, $value := .Values.env }}
   106          - name: "{{ $key }}"
   107            value: "{{ $value }}"
   108          {{- end }}
   109          ports:
   110          - containerPort: {{ .Values.service.internalPort }}
   111            name: {{ template "kibana.name" . }}
   112            protocol: TCP
   113          volumeMounts:
   114          - name: plugins
   115            mountPath: /usr/share/kibana/plugins
   116          {{- range $configFile := (keys .Values.files) }}
   117          - name: {{ template "kibana.name" $ }}
   118            mountPath: "/usr/share/kibana/config/{{ $configFile }}"
   119            subPath: {{ $configFile }}
   120          {{- end }}
   121  {{- if .Values.securityContext.enabled }}
   122          securityContext:
   123            allowPrivilegeEscalation: {{ .Values.securityContext.allowPrivilegeEscalation }}
   124  {{- end }}
   125  {{- end }}
   126  {{- end }}
   127        containers:
   128        - name: {{ .Chart.Name }}
   129          image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
   130          imagePullPolicy: {{ .Values.image.pullPolicy }}
   131          {{- if .Values.commandline.args }}
   132          args:
   133            - "/bin/bash"
   134            - "/usr/local/bin/kibana-docker"
   135  {{ toYaml .Values.commandline.args | indent 10 }}
   136          {{- end }}
   137          env:
   138          {{- range $key, $value := .Values.env }}
   139          - name: "{{ $key }}"
   140            value: "{{ $value }}"
   141          {{- end }}
   142  {{- if (not .Values.authProxyEnabled) }}
   143          ports:
   144          - containerPort: {{ .Values.service.internalPort }}
   145            name: {{ template "kibana.name" . }}
   146            protocol: TCP
   147  {{- end }}
   148  {{- if .Values.livenessProbe.enabled }}
   149          livenessProbe:
   150            httpGet:
   151              path: /status
   152              port: {{ .Values.service.internalPort }}
   153            initialDelaySeconds: {{ .Values.livenessProbe.initialDelaySeconds }}
   154            timeoutSeconds: {{ .Values.livenessProbe.timeoutSeconds }}
   155  {{- end }}
   156  {{- if .Values.readinessProbe.enabled }}
   157          readinessProbe:
   158            httpGet:
   159              path: /status
   160              port: {{ .Values.service.internalPort }}
   161            initialDelaySeconds: {{ .Values.readinessProbe.initialDelaySeconds }}
   162            timeoutSeconds: {{ .Values.readinessProbe.timeoutSeconds }}
   163            successThreshold: {{ .Values.readinessProbe.successThreshold }}
   164            periodSeconds: {{ .Values.readinessProbe.periodSeconds }}
   165  {{- end }}
   166          resources:
   167  {{ toYaml .Values.resources | indent 10 }}
   168          volumeMounts:
   169          {{- range $configFile := (keys .Values.files) }}
   170          - name: {{ template "kibana.name" $ }}
   171            mountPath: "/usr/share/kibana/config/{{ $configFile }}"
   172            subPath: {{ $configFile }}
   173          {{- end }}
   174  {{- if .Values.plugins.enabled}}
   175          - name: plugins
   176            mountPath: /usr/share/kibana/plugins
   177  {{- end }}
   178  {{- with .Values.extraContainers }}
   179  {{ tpl . $ | indent 6 }}
   180  {{- end }}
   181  {{- range .Values.extraConfigMapMounts }}
   182          - name: {{ .name }}
   183            mountPath: {{ .mountPath }}
   184            subPath: {{ .subPath }}
   185  {{- end }}
   186      {{- if .Values.image.pullSecrets }}
   187        imagePullSecrets:
   188  {{ toYaml .Values.image.pullSecrets | indent 8 }}
   189      {{- end }}
   190      {{- if .Values.affinity }}
   191        affinity:
   192  {{ toYaml .Values.affinity | indent 8 }}
   193      {{- end }}
   194      {{- if .Values.nodeSelector }}
   195        nodeSelector:
   196  {{ toYaml .Values.nodeSelector | indent 8 }}
   197      {{- end }}
   198        tolerations:
   199  {{ toYaml .Values.tolerations | indent 8 }}
   200  {{- if .Values.securityContext.enabled }}
   201        securityContext:
   202          runAsUser: {{ .Values.securityContext.runAsUser }}
   203          fsGroup: {{ .Values.securityContext.fsGroup }}
   204  {{- end }}
   205        volumes:
   206          - name: {{ template "kibana.name" . }}
   207            configMap:
   208              name: {{ template "kibana.fullname" . }}
   209  {{- if .Values.plugins.enabled}}
   210          - name: plugins
   211            {{- if .Values.persistentVolumeClaim.enabled }}
   212            persistentVolumeClaim:
   213              claimName: {{ template "kibana.fullname" . }}
   214            {{- else }}
   215            emptyDir: {}
   216            {{- end }}
   217  {{- end }}
   218  {{- if .Values.dashboardImport.dashboards }}
   219          - name: {{ template "kibana.fullname" . }}-dashboards
   220            configMap:
   221              name: {{ template "kibana.fullname" . }}-dashboards
   222          - name: {{ template "kibana.fullname" . }}-importscript
   223            configMap:
   224              name: {{ template "kibana.fullname" . }}-importscript
   225              defaultMode: 0777
   226  {{- end }}
   227  {{- range .Values.extraConfigMapMounts }}
   228          - name: {{ .name }}
   229            configMap:
   230              name: {{ .configMap }}
   231  {{- end }}