---
# Source: meilisearch/templates/serviceaccount.yaml
apiVersion: v1
kind: ServiceAccount
metadata:
  name: tcms-meilisearch
  namespace: test-infra
  labels:
    app.kubernetes.io/name: meilisearch
    app.kubernetes.io/instance: tcms
---
# Source: meilisearch/templates/configmap.yaml
apiVersion: v1
kind: ConfigMap
metadata:
  name: tcms-meilisearch-environment
  namespace: test-infra
  labels:
    app.kubernetes.io/name: meilisearch
    app.kubernetes.io/instance: tcms
data:
  MEILI_ENV: "development"
  MEILI_NO_ANALYTICS: "true"
---
# Source: meilisearch/templates/pvc.yaml
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: tcms-meilisearch
  namespace: test-infra
  labels:
    app.kubernetes.io/name: meilisearch
    app.kubernetes.io/instance: tcms
spec:
  accessModes:
    - "ReadWriteOnce"
  resources:
    requests:
      storage: "50Gi"
---
# Source: meilisearch/templates/service.yaml
apiVersion: v1
kind: Service
metadata:
  name: tcms-meilisearch
  namespace: test-infra
  labels:
    app.kubernetes.io/name: meilisearch
    app.kubernetes.io/instance: tcms
spec:
  type: NodePort
  ports:
    - port: 7700
      nodePort: 30086
      targetPort: http
      protocol: TCP
      name: http
  selector:
    app.kubernetes.io/name: meilisearch
    app.kubernetes.io/instance: tcms
---
# Source: meilisearch/templates/statefulset.yaml
apiVersion: apps/v1
kind: StatefulSet
metadata:
  name: tcms-meilisearch
  namespace: test-infra
  labels:
    app.kubernetes.io/name: meilisearch
    app.kubernetes.io/instance: tcms
spec:
  replicas: 1
  serviceName: tcms-meilisearch
  selector:
    matchLabels:
      app.kubernetes.io/name: meilisearch
      app.kubernetes.io/instance: tcms
  template:
    metadata:
      labels:
        app.kubernetes.io/name: meilisearch
        app.kubernetes.io/instance: tcms
      annotations:
        app.kubernetes.io/managed-by: test-infra
    spec:
      serviceAccountName: tcms-meilisearch
      tolerations:
        - effect: NoSchedule
          key: dedicated
          operator: Equal
          value: test-infra
        - effect: NoSchedule
          key: arch
          operator: Equal
          value: arm64
      nodeSelector:
        kubernetes.io/arch: arm64
      volumes:
        - name: data
          persistentVolumeClaim:
            claimName: tcms-meilisearch
      containers:
        - name: meilisearch
          image: "getmeili/meilisearch:v0.27.2"
          imagePullPolicy: IfNotPresent
          volumeMounts:
            - name: data
              mountPath: /data.ms
          envFrom:
          - configMapRef:
              name: tcms-meilisearch-environment
          ports:
            - name: http
              containerPort: 7700
              protocol: TCP
          livenessProbe:
            httpGet:
              path: /health
              port: http
            periodSeconds: 60
            initialDelaySeconds: 60
          readinessProbe:
            httpGet:
              path: /health
              port: http
            periodSeconds: 60
            initialDelaySeconds: 60
          resources:
            requests:
              cpu: 4
              memory: 8Gi
            limits:
              cpu: 4
              memory: 8Gi
