apiVersion: v1
kind: Namespace
metadata:
  name: sli-reporter
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: sli-reporter
  namespace: sli-reporter
spec:
  replicas: 1
  selector:
    matchLabels:
      app: sli-reporter
  template:
    metadata:
      labels:
        app: sli-reporter
    spec:
      containers:
        - env:
            - name: AWS_DELIVERY_STREAM_NAME
              value: sli-prod-metrics
            - name: AWS_SQS_URL
              value: https://sqs.us-west-2.amazonaws.com/380838443567/ingress-mim.fifo
            - name: AWS_REGION
              value: us-west-2
            - name: REGION
              value: ap-east-1
            - name: VENDOR
              value: aws
            - name: ENV
              value: prod
            - name: REGION_DOMAIN
              value: https://www.ds.ap-east-1.aws.observability.tidbcloud.com/internal/metrics/
            - name: USER_ARN
              value: arn:aws:iam::552185537300:role/autonomous-o11y-ft-mock-agent-role
          image: 557537366020.dkr.ecr.us-west-2.amazonaws.com/observability-sli-reporter:prod-87651d3f439fb8d82706c4fcd86c230fd1388b16
          imagePullPolicy: Always
          name: sli-reporter
          ports:
            - containerPort: 8080 #
          resources:
            limits:
              cpu: 500m
              memory: 512Mi
            requests:
              cpu: 10m
              memory: 64Mi
      serviceAccountName: sli-reporter
      nodeSelector:
        node_type: worker
---

apiVersion: v1
kind: Service
metadata:
  name: sli-reporter-service
  namespace: sli-reporter
  labels:
    app: sli-reporter
spec:
  selector:
    app: sli-reporter
  ports:
    - name: metrics
      port: 8081
      protocol: TCP
      targetPort: 8081
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
  name: sli-reporter
  namespace: sli-reporter
  labels:
    app: sli-reporter
rules:
  - apiGroups: [""]
    resources: ["pods","services","secrets", "namespaces"]
    verbs: ["get", "watch", "list", "delete"]
  - apiGroups: ["pingcap.com"]
    resources: ["tidbclusters"]
    verbs: [ "get", "watch", "list" ]
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  name: sli-reporter
  labels:
    app: sli-reporter
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: sli-reporter
subjects:
  - kind: ServiceAccount
    name: sli-reporter
    namespace: sli-reporter
---
apiVersion: v1
kind: ServiceAccount
metadata:
  name: sli-reporter
  namespace: sli-reporter
  labels:
    app: sli-reporter
