---
apiVersion: codemowers.cloud/v1beta1
kind: MinioBucketClass
metadata:
  name: external
  annotations:
    kubernetes.io/description: "External Minio cluster"
spec:
  reclaimPolicy: Retain
  shared: true
---
apiVersion: v1
kind: Service
metadata:
  name: external
  namespace: minio-clusters
spec:
  externalName: 172.20.9.2
  ports:
    - name: http
      protocol: TCP
      port: 9000
  type: ExternalName
---
apiVersion: v1
kind: Service
metadata:
  name: external-console
  namespace: minio-clusters
spec:
  externalName: 172.20.9.2
  ports:
    - name: http
      protocol: TCP
      port: 9001
  type: ExternalName
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: external
  namespace: minio-clusters
  annotations:
    kubernetes.io/ingress.class: traefik
    traefik.ingress.kubernetes.io/router.entrypoints: websecure
    traefik.ingress.kubernetes.io/router.tls: "true"
    external-dns.alpha.kubernetes.io/target: traefik.k-space.ee
spec:
  rules:
    - host: external.minio-clusters.k-space.ee
      http:
        paths:
          - pathType: Prefix
            path: "/"
            backend:
              service:
                name: external
                port:
                  name: http
  tls:
    - hosts:
        - "*.k-space.ee"
      secretName: wildcard-tls
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: external-console
  namespace: minio-clusters
  annotations:
    kubernetes.io/ingress.class: traefik
    traefik.ingress.kubernetes.io/router.entrypoints: websecure
    traefik.ingress.kubernetes.io/router.tls: "true"
    external-dns.alpha.kubernetes.io/target: traefik.k-space.ee
spec:
  rules:
    - host: external-console.minio-clusters.k-space.ee
      http:
        paths:
          - pathType: Prefix
            path: "/"
            backend:
              service:
                name: external-console
                port:
                  name: http
  tls:
    - hosts:
        - "*.k-space.ee"
      secretName: wildcard-tls