--- apiVersion: v1 kind: ConfigMap metadata: name: {{ .Values.name }}-env-config namespace: {{ .Release.Namespace }} data: MONGO_HOST: {{ .Values.mongo_host }} CRAWLER_NAMESPACE: {{ .Values.crawler_namespace }} CRAWLER_IMAGE: {{ .Values.crawler_image }} CRAWL_TIMEOUT: "{{ .Values.crawl_timeout }}" CRAWL_RETRIES: "{{ .Values.crawl_retries }}" --- apiVersion: v1 kind: Secret metadata: name: storage-auth namespace: {{ .Release.Namespace }} type: Opaque stringData: PASSWORD_SECRET: "{{ .Values.api_password_secret }}" {{- if .Values.minio_local }} MINIO_ROOT_USER: "{{ .Values.storage.access_key }}" MINIO_ROOT_PASSWORD: "{{ .Values.storage.secret_key }}" MC_HOST: "{{ .Values.minio_scheme }}://{{ .Values.storage.access_key }}:{{ .Values.storage.secret_key }}@{{ .Values.minio_host }}" {{- end }} STORE_ACCESS_KEY: "{{ .Values.storage.access_key }}" STORE_SECRET_KEY: "{{ .Values.storage.secret_key }}" STORE_ENDPOINT_URL: "{{ .Values.storage.endpoint }}" #S3_FORCE_PATH_STYLE: "{{ .Values.storage.force_path_style | quote }}" --- apiVersion: apps/v1 kind: Deployment metadata: name: {{ .Values.name }} namespace: {{ .Release.Namespace }} spec: selector: matchLabels: app: {{ .Values.name }} replicas: {{ .Values.api_num_replicas }} template: metadata: labels: app: {{ .Values.name }} spec: {{- if .Values.minio_local }} initContainers: - name: init-bucket image: {{ .Values.minio_mc_image }} imagePullPolicy: {{ .Values.minio_pull_policy }} env: - name: MC_HOST_local valueFrom: secretKeyRef: name: storage-auth key: MC_HOST command: ['/bin/sh'] args: ['-c', 'mc mb local/test-bucket; mc policy set public local/test-bucket' ] {{- end }} containers: - name: api image: {{ .Values.api_image }} imagePullPolicy: {{ .Values.api_pull_policy }} envFrom: - configMapRef: name: {{ .Values.name }}-env-config {{- if .Values.storage }} - secretRef: name: storage-auth {{- end }} resources: limits: cpu: {{ .Values.api_limits_cpu }} memory: {{ .Values.api_limits_memory }} requests: cpu: {{ .Values.api_requests_cpu }} memory: {{ .Values.api_requests_memory }} --- apiVersion: v1 kind: Service metadata: namespace: {{ .Release.Namespace }} name: {{ .Values.name }} labels: app: {{ .Values.name }} {{- if .Values.service }} {{- if .Values.service.annotations }} annotations: {{- range $key, $val := .Values.service.annotations }} {{ $key }}: {{ $val | quote }} {{- end }} {{- end }} {{- end }} spec: selector: app: {{ .Values.name }} {{- if .Values.service }} {{- if .Values.service.type }} type: {{ .Values.service.type | quote }} {{- end }} {{- end }} ports: - protocol: TCP port: 8000 name: api #externalIPs: # - 127.0.0.1