apiVersion: v1
kind: ResourceQuota
metadata:
  name: default
  namespace: ${namespace}
spec:
  hard:
    # 100m - haproxy-ingress-controller-private (default)
    # 100m - nginx-ingress-controller-private
    # 100m - keda-operator
    # 100m - keda-metric-server
    # 800m - Allow for x2 horizontal growth on above
    # 100m - Rolling updates
    requests.cpu: 1300m

    # 100Mi - haproxy-ingress-controller-private (default)
    # 90Mi - nginx-ingress-controller-private
    # 100Mi - keda-operator
    # 100Mi - keda-metric-server
    # 800Mi - Allow for x2 horizontal growth on above
    # 100Mi - Rolling updates
    requests.memory: 1290Mi
    requests.storage: "0"

    # 200m - haproxy-ingress-controller-private (default)
    # 200m - nginx-ingress-controller-private (default)
    # 1000m - keda-operator
    # 1000m - keda-metric-server
    # 2400m - Allow for x2 horizontal growth on above
    # 200m - Rolling updates
    limits.cpu: 5000m

    # 200Mi - haproxy-ingress-controller-private (default)
    # 200Mi - nginx-ingress-controller-private (default)
    # 1000Mi - keda-operator
    # 1000Mi - keda-metric-server
    # 2400Mi - Allow for x2 horizontal growth on above
    # 200Mi - Rolling updates
    limits.memory: 5000Mi
    count/persistentvolumeclaims: "0"

    # 1 - Keda (ClusterIP)
    # 1 - haproxy-ingress-controller-private (1 LoadBalancer)
    # 3 - nginx-ingress private (controller/metrics/admission)  (1 LoadBalancer / 2 ClusterIP)
    count/services: "5"
    count/services.loadbalancers: "2"
    count/services.nodeports: "0"

    # 2 - Keda
    # 1 - haproxy-ingress-controller-private
    # 1 - nginx-ingress-controller-private
    count/deployments.apps: "4"
    count/daemonset.apps: "0"

    # 1 - haproxy-ingress-controller-private
    # 1 - nginx-ingress-controller-private
    # 2 - keda
    # 4 - Allow for x2 horizontal growth on above
    # 2 - Rolling updates
    count/pods: "10"