From a8d5aa35697ece2fed670cbcfb3e939f5daf941e Mon Sep 17 00:00:00 2001 From: Sean Liao Date: Mon, 9 Sep 2024 10:24:08 +0100 Subject: [PATCH 1/6] istio compatibility with appProtocol: https (#678) Despite Istio docs stating that setting the name of the port to https should result in the protocol being https (TLS not intercepted), it doesn't appear to work for us, and only works by explicitly setting appProtocol. https://istio.io/latest/docs/ops/configuration/traffic-management/protocol-selection/#explicit-protocol-selection Signed-off-by: Sean Liao --- keda/templates/metrics-server/service.yaml | 1 + keda/templates/webhooks/service.yaml | 1 + 2 files changed, 2 insertions(+) diff --git a/keda/templates/metrics-server/service.yaml b/keda/templates/metrics-server/service.yaml index bffbcabf..750b682e 100644 --- a/keda/templates/metrics-server/service.yaml +++ b/keda/templates/metrics-server/service.yaml @@ -32,6 +32,7 @@ spec: port: {{ .Values.service.portHttps }} targetPort: {{ .Values.service.portHttpsTarget }} protocol: TCP + appProtocol: https - name: {{ .Values.prometheus.metricServer.portName }} port: {{ .Values.prometheus.metricServer.port }} targetPort: {{ .Values.prometheus.metricServer.port }} diff --git a/keda/templates/webhooks/service.yaml b/keda/templates/webhooks/service.yaml index 4d933d60..8c40bc34 100644 --- a/keda/templates/webhooks/service.yaml +++ b/keda/templates/webhooks/service.yaml @@ -31,6 +31,7 @@ spec: port: 443 protocol: TCP targetPort: {{ .Values.webhooks.port | default 9443 }} + appProtocol: https {{- if .Values.prometheus.webhooks.enabled }} - name: {{ .Values.prometheus.webhooks.serviceMonitor.port }} port: {{ .Values.prometheus.webhooks.port }} From 53a1d02fed30298a20acceb0b86f7598d431a249 Mon Sep 17 00:00:00 2001 From: Noah Yoshida Date: Wed, 18 Sep 2024 04:11:18 -0700 Subject: [PATCH 2/6] add topology spread constraints to interceptor (#684) Signed-off-by: Noah Yoshida --- http-add-on/README.md | 6 +++++- http-add-on/templates/interceptor/deployment.yaml | 4 ++++ http-add-on/values.yaml | 2 ++ 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/http-add-on/README.md b/http-add-on/README.md index 5b64899c..decf68a1 100644 --- a/http-add-on/README.md +++ b/http-add-on/README.md @@ -133,7 +133,7 @@ their default values. | `scaler.nodeSelector` | object | `{}` | Node selector for pod scheduling ([docs](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/)) | | `scaler.pendingRequestsInterceptor` | int | `200` | The number of "target requests" that the external scaler will report to KEDA for the interceptor's scaling metrics. See the [KEDA external scaler documentation](https://keda.sh/docs/2.4/concepts/external-scalers/) for details on target requests. | | `scaler.pullPolicy` | string | `"Always"` | The image pull policy for the scaler component | -| `scaler.replicas` | int | `3` | Number of replicas | +| `scaler.replicas` | int | `3` | Number of replicas | | `scaler.resources.limits.cpu` | float | `0.5` | | | `scaler.resources.limits.memory` | string | `"64Mi"` | | | `scaler.resources.requests.cpu` | string | `"250m"` | | @@ -157,6 +157,9 @@ their default values. | `interceptor.keepAlive` | string | `"1s"` | The interceptor's connection keep alive timeout | | `interceptor.maxIdleConns` | int | `100` | The maximum number of idle connections allowed in the interceptor's in-memory connection pool. Set to 0 to indicate no limit | | `interceptor.nodeSelector` | object | `{}` | Node selector for pod scheduling ([docs](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/)) | +| `interceptor.pdb.enabled` | bool | `true` | Whether to install the `PodDisruptionBudget` for the interceptor | +| `interceptor.pdb.maxUnavailable` | int | `1` | The maximum number of replicas that can be unavailable for the interceptor | +| `interceptor.pdb.minAvailable` | int | `0` | The minimum number of replicas that should be available for the interceptor | | `interceptor.proxy.port` | int | `8080` | The port on which the interceptor's proxy service will listen for live HTTP traffic | | `interceptor.proxy.service` | string | `"interceptor-proxy"` | The name of the Kubernetes `Service` for the interceptor's proxy service. This is the service that accepts live HTTP traffic. | | `interceptor.pullPolicy` | string | `"Always"` | The image pull policy for the interceptor component | @@ -175,6 +178,7 @@ their default values. | `interceptor.tls.port` | int | `8443` | Port that the interceptor proxy TLS server should be started on | | `interceptor.tlsHandshakeTimeout` | string | `"10s"` | The maximum amount of time the interceptor will wait for a TLS handshake. Set to zero to indicate no timeout. | | `interceptor.tolerations` | list | `[]` | Tolerations for pod scheduling ([docs](https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/)) | +| `interceptor.topologySpreadConstraints` | list | `[]` | Topology spread constraints ([docs](https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/)) | Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example: diff --git a/http-add-on/templates/interceptor/deployment.yaml b/http-add-on/templates/interceptor/deployment.yaml index 4d450f40..5c83b641 100644 --- a/http-add-on/templates/interceptor/deployment.yaml +++ b/http-add-on/templates/interceptor/deployment.yaml @@ -122,3 +122,7 @@ spec: tolerations: {{- toYaml . | nindent 8 }} {{- end }} + {{- with .Values.interceptor.topologySpreadConstraints }} + topologySpreadConstraints: + {{- toYaml . | nindent 8 }} + {{- end }} diff --git a/http-add-on/values.yaml b/http-add-on/values.yaml index 25f76533..0436af27 100644 --- a/http-add-on/values.yaml +++ b/http-add-on/values.yaml @@ -170,6 +170,8 @@ interceptor: tolerations: [] # -- Affinity for pod scheduling ([docs](https://kubernetes.io/docs/tasks/configure-pod-container/assign-pods-nodes-using-node-affinity/)) affinity: {} + # -- Topology spread constraints ([docs](https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/)) + topologySpreadConstraints: [] # interceptor pod resource limits resources: # -- The CPU/memory resource limit for the operator component From 714d29f258558f8b5de3a9ab9ce82631b74248f0 Mon Sep 17 00:00:00 2001 From: Jan Wozniak Date: Mon, 23 Sep 2024 16:49:51 +0200 Subject: [PATCH 3/6] Add Secret GET to keda-operator minimal RBAC (#689) Signed-off-by: Jan Wozniak --- keda/templates/manager/minimal-rbac.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/keda/templates/manager/minimal-rbac.yaml b/keda/templates/manager/minimal-rbac.yaml index 1b5a0ca4..4ff03526 100644 --- a/keda/templates/manager/minimal-rbac.yaml +++ b/keda/templates/manager/minimal-rbac.yaml @@ -35,6 +35,7 @@ rules: - create - update {{- if .Values.permissions.operator.restrict.secret }} + - get - list - watch {{- end }} From 86cd9b1c609426abbf5cb52ae91ebe930f57f3d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nils=20Bergm=C3=BCller?= Date: Mon, 14 Oct 2024 10:57:15 +0200 Subject: [PATCH 4/6] Adding RBAC namespace selection for metrics server (#674) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Added required namespace variable and values file entry, updated docs Signed-off-by: Nils * Added required namespace variable and values file entry, updated docs Signed-off-by: Nils Bergmüller * Updated helm-docs Signed-off-by: Nils Bergmüller * Updated helm-docs Signed-off-by: Nils Bergmüller * Updated helm-docs Signed-off-by: Nils Bergmüller * Updated helm-docs Signed-off-by: Nils Bergmüller * Updated helm-docs Signed-off-by: Nils Bergmüller * Updated helm-docs Signed-off-by: Nils Bergmüller --------- Signed-off-by: Nils Signed-off-by: Nils Bergmüller --- keda/README.md | 1 + keda/templates/metrics-server/clusterrolebinding.yaml | 4 ++-- keda/values.yaml | 4 ++++ 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/keda/README.md b/keda/README.md index abf50469..fa101631 100644 --- a/keda/README.md +++ b/keda/README.md @@ -109,6 +109,7 @@ their default values. | `podSecurityContext` | object | [See below](#KEDA-is-secure-by-default) | [Pod security context] for all pods | | `priorityClassName` | string | `""` | priorityClassName for all KEDA components | | `rbac.aggregateToDefaultRoles` | bool | `false` | Specifies whether RBAC for CRDs should be [aggregated](https://kubernetes.io/docs/reference/access-authn-authz/rbac/#aggregated-clusterroles) to default roles (view, edit, admin) | +| `rbac.controlPlaneServiceAccountsNamespace` | string | `"kube-system"` | Customize the namespace of k8s metrics-server deployment This could also be achieved by the Kubernetes control plane manager flag --use-service-account-credentials: [docs](https://kubernetes.io/docs/reference/command-line-tools-reference/kube-controller-manager/) | | `rbac.create` | bool | `true` | Specifies whether RBAC should be used | | `rbac.enabledCustomScaledRefKinds` | bool | `true` | Whether RBAC for configured CRDs that can have a `scale` subresource should be created | | `rbac.scaledRefKinds` | list | `[{"apiGroup":"*","kind":"*"}]` | List of custom resources that support the `scale` subresource and can be referenced by `scaledobject.spec.scaleTargetRef`. The feature needs to be also enabled by `enabledCustomScaledRefKinds`. If left empty, RBAC for `apiGroups: *` and `resources: *, */scale` will be created note: Deployments and StatefulSets are supported out of the box | diff --git a/keda/templates/metrics-server/clusterrolebinding.yaml b/keda/templates/metrics-server/clusterrolebinding.yaml index cf877a2d..622bf3b9 100644 --- a/keda/templates/metrics-server/clusterrolebinding.yaml +++ b/keda/templates/metrics-server/clusterrolebinding.yaml @@ -31,7 +31,7 @@ metadata: app.kubernetes.io/name: {{ .Values.operator.name }}-auth-reader {{- include "keda.labels" . | indent 4 }} name: {{ .Values.operator.name }}-auth-reader - namespace: kube-system + namespace: {{ .Values.rbac.controlPlaneServiceAccountsNamespace }} roleRef: apiGroup: rbac.authorization.k8s.io kind: Role @@ -59,5 +59,5 @@ roleRef: subjects: - kind: ServiceAccount name: horizontal-pod-autoscaler - namespace: kube-system + namespace: {{ .Values.rbac.controlPlaneServiceAccountsNamespace }} {{- end -}} diff --git a/keda/values.yaml b/keda/values.yaml index c9e7b45c..71fc51fd 100644 --- a/keda/values.yaml +++ b/keda/values.yaml @@ -276,6 +276,10 @@ rbac: # -- Whether RBAC for configured CRDs that can have a `scale` subresource should be created enabledCustomScaledRefKinds: true + # -- Customize the namespace of k8s metrics-server deployment + # This could also be achieved by the Kubernetes control plane manager flag --use-service-account-credentials: + # [docs](https://kubernetes.io/docs/reference/command-line-tools-reference/kube-controller-manager/) + controlPlaneServiceAccountsNamespace: kube-system # -- List of custom resources that support the `scale` subresource and can be referenced by `scaledobject.spec.scaleTargetRef`. # The feature needs to be also enabled by `enabledCustomScaledRefKinds`. # If left empty, RBAC for `apiGroups: *` and `resources: *, */scale` will be created From 86b12cb2ab020b834a73f351a058c3ed36e04a1c Mon Sep 17 00:00:00 2001 From: Jan Wozniak Date: Thu, 17 Oct 2024 12:19:13 +0200 Subject: [PATCH 5/6] chore: prepare 2.15.2 release (#692) Signed-off-by: Jan Wozniak --- README.md | 2 +- docs/index.yaml | 183 ++++++++++++++++++++++++------------------- docs/keda-2.15.2.tgz | Bin 0 -> 95519 bytes keda/Chart.yaml | 6 +- 4 files changed, 106 insertions(+), 85 deletions(-) create mode 100644 docs/keda-2.15.2.tgz diff --git a/README.md b/README.md index 6ec5b7e4..87b082e7 100644 --- a/README.md +++ b/README.md @@ -21,7 +21,7 @@ $ helm repo add kedacore https://kedacore.github.io/charts $ helm search repo kedacore NAME CHART VERSION APP VERSION DESCRIPTION kedacore/external-scaler-azure-cosmos-db 0.1.0 0.1.0 Event-based autoscaler for Azure Cosmos DB chan... -kedacore/keda 2.15.1 2.15.1 Event-based autoscaler for workloads on Kubernetes +kedacore/keda 2.15.2 2.15.1 Event-based autoscaler for workloads on Kubernetes kedacore/keda-add-ons-http 0.8.0 0.8.0 Event-based autoscaler for HTTP workloads on Ku... ``` diff --git a/docs/index.yaml b/docs/index.yaml index 16a957db..b466d322 100644 --- a/docs/index.yaml +++ b/docs/index.yaml @@ -3,7 +3,7 @@ entries: external-scaler-azure-cosmos-db: - apiVersion: v2 appVersion: 0.1.0 - created: "2024-08-08T00:29:01.084987629+02:00" + created: "2024-10-15T11:46:45.183646219+02:00" description: Event-based autoscaler for Azure Cosmos DB change feed consumer applications digest: a905dedb01db68575cf591eb0b8f6fa1aa1343f0ec239615081e4b57590d8ae9 home: https://github.com/kedacore/external-scaler-azure-cosmos-db @@ -24,7 +24,28 @@ entries: keda: - apiVersion: v2 appVersion: 2.15.1 - created: "2024-08-08T00:29:01.197376268+02:00" + created: "2024-10-15T11:46:45.451188512+02:00" + description: Event-based autoscaler for workloads on Kubernetes + digest: dc1a66bd5edc13a1004d853e1999dc2fff1915c9abce1537426466bf8b685b98 + home: https://github.com/kedacore/keda + icon: https://raw.githubusercontent.com/kedacore/keda/main/images/keda-logo-500x500-white.png + kubeVersion: '>=v1.23.0-0' + maintainers: + - email: jorge_turrado@hotmail.es + name: Jorge Turrado + - email: zbynek@kedify.io + name: Zbynek Roubalik + - email: jan@kedify.io + name: Jan Wozniak + name: keda + sources: + - https://github.com/kedacore/keda + urls: + - https://kedacore.github.io/charts/keda-2.15.2.tgz + version: 2.15.2 + - apiVersion: v2 + appVersion: 2.15.1 + created: "2024-10-15T11:46:45.440393322+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: 316cf7db6aba49f6001e16c085a7953988d3a7afe6fb19a438aad05567389022 home: https://github.com/kedacore/keda @@ -45,7 +66,7 @@ entries: version: 2.15.1 - apiVersion: v2 appVersion: 2.15.0 - created: "2024-08-08T00:29:01.193853631+02:00" + created: "2024-10-15T11:46:45.430340477+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: fbcbdaa0242edf90040ac932e01e61f1ebde42e5ae9c90e75fe6ae57bc64d8ba home: https://github.com/kedacore/keda @@ -66,7 +87,7 @@ entries: version: 2.15.0 - apiVersion: v2 appVersion: 2.14.1 - created: "2024-08-08T00:29:01.190355245+02:00" + created: "2024-10-15T11:46:45.419389681+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: 6d1a68d143bc9e184dfe1945097ba2c4e0a3fb81be8a78115138e9c08d311e8e home: https://github.com/kedacore/keda @@ -89,7 +110,7 @@ entries: version: 2.14.3 - apiVersion: v2 appVersion: 2.14.0 - created: "2024-08-08T00:29:01.187318812+02:00" + created: "2024-10-15T11:46:45.409723409+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: e1d477d173305aa41d1ac4f6a07e6ff48a3b5bf8e35a74fdf9da1f30b8f97355 home: https://github.com/kedacore/keda @@ -112,7 +133,7 @@ entries: version: 2.14.2 - apiVersion: v2 appVersion: 2.14.0 - created: "2024-08-08T00:29:01.183036995+02:00" + created: "2024-10-15T11:46:45.3980244+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: 8ad2f13172e1e38b96a3ff8e8737137e2c43026354b3c4ac4fb2e51bccdeb213 home: https://github.com/kedacore/keda @@ -135,7 +156,7 @@ entries: version: 2.14.1 - apiVersion: v2 appVersion: 2.14.0 - created: "2024-08-08T00:29:01.179489165+02:00" + created: "2024-10-15T11:46:45.388294223+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: bdd669a80a8bc9d1e651b7680f4227cbc374a861e89c0ed3120e328b4aacfd39 home: https://github.com/kedacore/keda @@ -158,7 +179,7 @@ entries: version: 2.14.0 - apiVersion: v2 appVersion: 2.13.1 - created: "2024-08-08T00:29:01.175648743+02:00" + created: "2024-10-15T11:46:45.377069717+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: 3d1bb0537755ebeafacf1da9f91fbcbbac7b673b0e4141cc827e32635e68c228 home: https://github.com/kedacore/keda @@ -181,7 +202,7 @@ entries: version: 2.13.2 - apiVersion: v2 appVersion: 2.13.0 - created: "2024-08-08T00:29:01.171753221+02:00" + created: "2024-10-15T11:46:45.366763069+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: 00ae78109f89f16b12bb5cf23f7071c6c2fe09294514d4f7fd3850c6ce2b8a57 home: https://github.com/kedacore/keda @@ -204,7 +225,7 @@ entries: version: 2.13.1 - apiVersion: v2 appVersion: 2.13.0 - created: "2024-08-08T00:29:01.168317606+02:00" + created: "2024-10-15T11:46:45.35502453+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: 0dcc74315d6ca02fbadcfc5e358040580c0ad7919921e07ebf2dcc0b1d2d5f03 home: https://github.com/kedacore/keda @@ -227,7 +248,7 @@ entries: version: 2.13.0 - apiVersion: v2 appVersion: 2.12.1 - created: "2024-08-08T00:29:01.164027641+02:00" + created: "2024-10-15T11:46:45.345450937+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: ee87da063be94f3f65661656602775c38ab723374c9892ecc73c1cea269e64c0 home: https://github.com/kedacore/keda @@ -250,7 +271,7 @@ entries: version: 2.12.1 - apiVersion: v2 appVersion: 2.12.0 - created: "2024-08-08T00:29:01.160278783+02:00" + created: "2024-10-15T11:46:45.334926593+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: 5ae5ef24c2e4c38450bb31b7987aea8b19a828c0c6cfa66b8e7ffbc65ebf164d home: https://github.com/kedacore/keda @@ -273,7 +294,7 @@ entries: version: 2.12.0 - apiVersion: v2 appVersion: 2.11.2 - created: "2024-08-08T00:29:01.15714592+02:00" + created: "2024-10-15T11:46:45.324834357+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: 1fc274ebf7c405031297166fa3295f13bc9470f3ca688d595b7549d072b062cd home: https://github.com/kedacore/keda @@ -296,7 +317,7 @@ entries: version: 2.11.2 - apiVersion: v2 appVersion: 2.11.1 - created: "2024-08-08T00:29:01.153004018+02:00" + created: "2024-10-15T11:46:45.316616179+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: 7d10ab788d363c95f496f28d48a74ab7789a5d04c63d9fa3e5d55967c988c0ed home: https://github.com/kedacore/keda @@ -319,7 +340,7 @@ entries: version: 2.11.1 - apiVersion: v2 appVersion: 2.11.0 - created: "2024-08-08T00:29:01.150124535+02:00" + created: "2024-10-15T11:46:45.311233285+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: 8a2100ac1c47053e118b177676fbc07fe427fb9878c31ee7f8b73df0e2a77a06 home: https://github.com/kedacore/keda @@ -342,7 +363,7 @@ entries: version: 2.11.0 - apiVersion: v2 appVersion: 2.10.1 - created: "2024-08-08T00:29:01.146330425+02:00" + created: "2024-10-15T11:46:45.304918567+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: 2e75903cda0780a4a8115dc199541315eaccdbfc3ec3da5ab492c8825080cc99 home: https://github.com/kedacore/keda @@ -365,7 +386,7 @@ entries: version: 2.10.2 - apiVersion: v2 appVersion: 2.10.0 - created: "2024-08-08T00:29:01.143210204+02:00" + created: "2024-10-15T11:46:45.300359524+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: 7216ff7cff5567152b895017b97a95b41b788589c4be82169d92906519a24f25 home: https://github.com/kedacore/keda @@ -388,7 +409,7 @@ entries: version: 2.10.1 - apiVersion: v2 appVersion: 2.10.0 - created: "2024-08-08T00:29:01.140098803+02:00" + created: "2024-10-15T11:46:45.29390589+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: 4be1fc8dba9d0e17ff475ca3dcb1183b07164ccaddfc48c67f6369a56f1b1777 home: https://github.com/kedacore/keda @@ -411,7 +432,7 @@ entries: version: 2.10.0 - apiVersion: v2 appVersion: 2.9.3 - created: "2024-08-08T00:29:01.253503845+02:00" + created: "2024-10-15T11:46:45.603686084+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: c455dc8d908b6e8575fe0dbe8275861355cb242a5768f23cd909e543fe077438 home: https://github.com/kedacore/keda @@ -434,7 +455,7 @@ entries: version: 2.9.4 - apiVersion: v2 appVersion: 2.9.2 - created: "2024-08-08T00:29:01.251144476+02:00" + created: "2024-10-15T11:46:45.595842465+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: 52a5de6f5585fb2cfe44ba9ddadcf4cd4208138795313e25ee654d82a424faef home: https://github.com/kedacore/keda @@ -457,7 +478,7 @@ entries: version: 2.9.3 - apiVersion: v2 appVersion: 2.9.2 - created: "2024-08-08T00:29:01.248237447+02:00" + created: "2024-10-15T11:46:45.588826049+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: a1f14048f1788cde92a42412fa789e34d48bb4a8e94d4b43e0c70c8b8c326e43 home: https://github.com/kedacore/keda @@ -480,7 +501,7 @@ entries: version: 2.9.2 - apiVersion: v2 appVersion: 2.9.1 - created: "2024-08-08T00:29:01.245575362+02:00" + created: "2024-10-15T11:46:45.584257438+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: 004f2f37845a324badc7228585755ddfd8f5feea957cdca7de9b39499ce1a8d8 home: https://github.com/kedacore/keda @@ -503,7 +524,7 @@ entries: version: 2.9.1 - apiVersion: v2 appVersion: 2.9.0 - created: "2024-08-08T00:29:01.242129901+02:00" + created: "2024-10-15T11:46:45.574106396+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: e0f84de35c0378027f43a732f12a164db05e45947687203020c0031baeee5826 home: https://github.com/kedacore/keda @@ -526,7 +547,7 @@ entries: version: 2.9.0 - apiVersion: v2 appVersion: 2.8.2 - created: "2024-08-08T00:29:01.239558847+02:00" + created: "2024-10-15T11:46:45.56578576+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: bbd9f4f9312781de5363145d5a937d7c084ea1139f12f5e7f153b3f174332517 home: https://github.com/kedacore/keda @@ -549,7 +570,7 @@ entries: version: 2.8.4 - apiVersion: v2 appVersion: 2.8.2 - created: "2024-08-08T00:29:01.236501189+02:00" + created: "2024-10-15T11:46:45.554853471+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: 04934ca1e41970ca687de13db697cc7fdc24d367af570eba47bed01ad981e1b1 home: https://github.com/kedacore/keda @@ -572,7 +593,7 @@ entries: version: 2.8.3 - apiVersion: v2 appVersion: 2.8.1 - created: "2024-08-08T00:29:01.23413333+02:00" + created: "2024-10-15T11:46:45.547296831+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: e7bc80a5dde861a5f62b73e9d5c4ce139339b07438344668485fdc435f3109b4 home: https://github.com/kedacore/keda @@ -595,7 +616,7 @@ entries: version: 2.8.2 - apiVersion: v2 appVersion: 2.8.0 - created: "2024-08-08T00:29:01.231076655+02:00" + created: "2024-10-15T11:46:45.542174726+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: df15ce1a4a27df2f3eb85c7cc803de53dec526bcad92d732a0944bd5288f4845 home: https://github.com/kedacore/keda @@ -618,7 +639,7 @@ entries: version: 2.8.1 - apiVersion: v2 appVersion: 2.8.0 - created: "2024-08-08T00:29:01.228768838+02:00" + created: "2024-10-15T11:46:45.536126662+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: afa9410e4e6e805979e5c22a17db6dc7dc2720c28b3f176d2eef2708ef0d0a32 home: https://github.com/kedacore/keda @@ -641,7 +662,7 @@ entries: version: 2.8.0 - apiVersion: v2 appVersion: 2.7.1 - created: "2024-08-08T00:29:01.226514138+02:00" + created: "2024-10-15T11:46:45.530714645+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: eec27b3d7075a8c51cce1fb8d456ac3d458b3bf72fde1cda67c4b554df1e9838 home: https://github.com/kedacore/keda @@ -664,7 +685,7 @@ entries: version: 2.7.2 - apiVersion: v2 appVersion: 2.7.1 - created: "2024-08-08T00:29:01.224654595+02:00" + created: "2024-10-15T11:46:45.525511314+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: aa1644eb53ec44294993d0611169bd863db39f2bedca1d9ed64b05fbef74087c home: https://github.com/kedacore/keda @@ -687,7 +708,7 @@ entries: version: 2.7.1 - apiVersion: v2 appVersion: 2.7.0 - created: "2024-08-08T00:29:01.222673623+02:00" + created: "2024-10-15T11:46:45.519284386+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: f23894c1c4403f36797a0f2ccb497a3b4f2fe761e00b841cc7e1c8ce110d6dc5 home: https://github.com/kedacore/keda @@ -710,7 +731,7 @@ entries: version: 2.7.0 - apiVersion: v2 appVersion: 2.6.1 - created: "2024-08-08T00:29:01.219982373+02:00" + created: "2024-10-15T11:46:45.513241281+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: af7ec480a66e9f033ab44d28b3df518c0def8ea289996c413dae34e307a0a033 home: https://github.com/kedacore/keda @@ -732,7 +753,7 @@ entries: version: 2.6.2 - apiVersion: v2 appVersion: 2.6.0 - created: "2024-08-08T00:29:01.218135786+02:00" + created: "2024-10-15T11:46:45.507756559+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: b6cf54875f34e8cda992f1ccfe7d594a2f75d25b573a8149721e69ab5ebe3d1d home: https://github.com/kedacore/keda @@ -754,7 +775,7 @@ entries: version: 2.6.1 - apiVersion: v2 appVersion: 2.6.0 - created: "2024-08-08T00:29:01.2161721+02:00" + created: "2024-10-15T11:46:45.500871794+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: 1788eb5f7febdff68275ec5446d30f7f51d0259f343a024639ab1d46228fa00c home: https://github.com/kedacore/keda @@ -776,7 +797,7 @@ entries: version: 2.6.0 - apiVersion: v2 appVersion: 2.5.0 - created: "2024-08-08T00:29:01.213704462+02:00" + created: "2024-10-15T11:46:45.495944128+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: b23ffc14ff517dbf1e892593364a0b9e660afe2cd49c2e11e8589e0f271ef254 home: https://github.com/kedacore/keda @@ -798,7 +819,7 @@ entries: version: 2.5.1 - apiVersion: v2 appVersion: 2.5.0 - created: "2024-08-08T00:29:01.212011402+02:00" + created: "2024-10-15T11:46:45.491064233+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: a8c62e7b9e38adf3ef1837e2828cbd29dfd6c7633e8260bd2aa68c70307c8149 home: https://github.com/kedacore/keda @@ -818,7 +839,7 @@ entries: version: 2.5.0 - apiVersion: v2 appVersion: 2.4.0 - created: "2024-08-08T00:29:01.209669265+02:00" + created: "2024-10-15T11:46:45.484894854+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: 41a092fcda3518068d27cf7b86afa5ea2577c8435055ee214bfba11f3a86ef7b home: https://github.com/kedacore/keda @@ -838,7 +859,7 @@ entries: version: 2.4.0 - apiVersion: v2 appVersion: 2.3.0 - created: "2024-08-08T00:29:01.207584443+02:00" + created: "2024-10-15T11:46:45.479616304+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: 8f9d78fb5d090e9887f7914ec8db637344361a8881bb4d8f4c1a9225964b72e0 home: https://github.com/kedacore/keda @@ -858,7 +879,7 @@ entries: version: 2.3.2 - apiVersion: v2 appVersion: 2.3.0 - created: "2024-08-08T00:29:01.205700239+02:00" + created: "2024-10-15T11:46:45.474132909+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: c36eef4718068eee2ac8d3d54e10b15c6ca2b4d1970c84797387152393804578 home: https://github.com/kedacore/keda @@ -878,7 +899,7 @@ entries: version: 2.3.0 - apiVersion: v2 appVersion: 2.2.0 - created: "2024-08-08T00:29:01.203273818+02:00" + created: "2024-10-15T11:46:45.467699111+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: 6b6b25799c11e01d2a7edb34d8cf3fb6f82393e7c4e9faa07c38271afad49704 home: https://github.com/kedacore/keda @@ -898,7 +919,7 @@ entries: version: 2.2.2 - apiVersion: v2 appVersion: 2.2.0 - created: "2024-08-08T00:29:01.201131154+02:00" + created: "2024-10-15T11:46:45.46198908+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: 7ec5c403d0ad315d2eb9ec0c9d73b36c0baced870f397884d467d46014f24631 home: https://github.com/kedacore/keda @@ -918,7 +939,7 @@ entries: version: 2.2.1 - apiVersion: v2 appVersion: 2.2.0 - created: "2024-08-08T00:29:01.199332467+02:00" + created: "2024-10-15T11:46:45.456600669+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: 42b530656687cabb1408abcb137a5d7515243465b65a3a6006927987441fadc0 home: https://github.com/kedacore/keda @@ -938,7 +959,7 @@ entries: version: 2.2.0 - apiVersion: v2 appVersion: 2.1.0 - created: "2024-08-08T00:29:01.13610877+02:00" + created: "2024-10-15T11:46:45.285992081+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: 65e2fb98c55740251d7ffa1680ef0edeb42954576deac3856dd468473e321747 home: https://github.com/kedacore/keda @@ -958,7 +979,7 @@ entries: version: 2.1.3 - apiVersion: v2 appVersion: 2.1.0 - created: "2024-08-08T00:29:01.134364862+02:00" + created: "2024-10-15T11:46:45.279836462+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: f336ab24d5ebf96d28da95a03931f2701bb44ce6bb7c30991e3ad14959e2e7e4 home: https://github.com/kedacore/keda @@ -978,7 +999,7 @@ entries: version: 2.1.2 - apiVersion: v2 appVersion: 2.1.0 - created: "2024-08-08T00:29:01.13232936+02:00" + created: "2024-10-15T11:46:45.274955379+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: b6e752d05797cd50ce95a96ae1b6cf8b2b87fc10c27391172beb1acd9fcb18a2 home: https://github.com/kedacore/keda @@ -998,7 +1019,7 @@ entries: version: 2.1.1 - apiVersion: v2 appVersion: 2.1.0 - created: "2024-08-08T00:29:01.130449912+02:00" + created: "2024-10-15T11:46:45.270086729+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: 91998f9165176f972b954ef9d4077942979cb5e863bb7d76ed29c48f63533531 home: https://github.com/kedacore/keda @@ -1018,7 +1039,7 @@ entries: version: 2.1.0 - apiVersion: v2 appVersion: 2.0.0 - created: "2024-08-08T00:29:01.12866042+02:00" + created: "2024-10-15T11:46:45.264124291+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: ce2e848f5d7a067d74feb3745da5a834cccdfaa665b5b59d43ad06baa4cdfd04 home: https://github.com/kedacore/keda @@ -1038,7 +1059,7 @@ entries: version: 2.0.1 - apiVersion: v1 appVersion: 2.0.0 - created: "2024-08-08T00:29:01.126457721+02:00" + created: "2024-10-15T11:46:45.261155748+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: dba8b0e793085165c7d155f9393c5ff112d4714dbce0201404ceb0e67d1b2deb home: https://github.com/kedacore/keda @@ -1058,7 +1079,7 @@ entries: version: 2.0.0 - apiVersion: v1 appVersion: 2.0.0-rc2 - created: "2024-08-08T00:29:01.124724895+02:00" + created: "2024-10-15T11:46:45.258117434+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: bad82c28c5ca1d5e69fac4bfcc7a999d5d2b2afd9b19ff6deb9a48811110eb0d home: https://github.com/kedacore/keda @@ -1078,7 +1099,7 @@ entries: version: 2.0.0-rc3 - apiVersion: v2 appVersion: 2.0.0-rc2 - created: "2024-08-08T00:29:01.122771047+02:00" + created: "2024-10-15T11:46:45.255199247+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: a4042ba14e595a8e82c9a39d8987625b89292aa86029686a3603b724fda36ca0 home: https://github.com/kedacore/keda @@ -1099,7 +1120,7 @@ entries: version: 2.0.0-rc2 - apiVersion: v1 appVersion: 2.0.0-rc - created: "2024-08-08T00:29:01.119894791+02:00" + created: "2024-10-15T11:46:45.249321317+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: 3a952f2aaa0ea35ee4335f0b168f44fcf37c5c5ab7e9b9bba7e731c42f04ad61 home: https://github.com/kedacore/keda @@ -1119,7 +1140,7 @@ entries: version: 2.0.0-rc - apiVersion: v1 appVersion: 2.0.0-beta - created: "2024-08-08T00:29:01.117794571+02:00" + created: "2024-10-15T11:46:45.243853217+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: fbafc7ae564c13a0eab7062667759f6e93595c97125731a27e8290574e1d570c home: https://github.com/kedacore/keda @@ -1139,7 +1160,7 @@ entries: version: 2.0.0-beta1.2 - apiVersion: v1 appVersion: 2.0.0-beta - created: "2024-08-08T00:29:01.115226243+02:00" + created: "2024-10-15T11:46:45.235183303+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: db9e7d2423423463285f2e9d5b940a63b41d6555ba9fcab8fda0e6a757ccefa9 home: https://github.com/kedacore/keda @@ -1159,7 +1180,7 @@ entries: version: 2.0.0-beta1.1 - apiVersion: v1 appVersion: 2.0.0-beta - created: "2024-08-08T00:29:01.111808731+02:00" + created: "2024-10-15T11:46:45.229928988+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: f0a8f0b854246ee2258ec8f10528f2811681ad2e41946dc455586f1ba9818e01 home: https://github.com/kedacore/keda @@ -1179,7 +1200,7 @@ entries: version: 2.0.0-beta - apiVersion: v1 appVersion: 1.5.0 - created: "2024-08-08T00:29:01.108930541+02:00" + created: "2024-10-15T11:46:45.226008366+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: 07b15ddae4f1c40747de063100a668ac15d504cd0548eac0e1a04381fcaa3b37 home: https://github.com/kedacore/keda @@ -1199,7 +1220,7 @@ entries: version: 1.5.0 - apiVersion: v1 appVersion: 1.4.1 - created: "2024-08-08T00:29:01.106835996+02:00" + created: "2024-10-15T11:46:45.219679121+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: f8bf80186ac3343998021a1721d06a67fdacd1dab92e4a4992620903b52004a4 home: https://github.com/kedacore/keda @@ -1219,7 +1240,7 @@ entries: version: 1.4.2 - apiVersion: v1 appVersion: 1.4.1 - created: "2024-08-08T00:29:01.104223137+02:00" + created: "2024-10-15T11:46:45.214220729+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: 97a2e5c0beff93bb71ff861da0f29d09dcf988e724784f8b7c56ac9872c37a81 home: https://github.com/kedacore/keda @@ -1235,7 +1256,7 @@ entries: version: 1.4.1 - apiVersion: v1 appVersion: 1.4.0 - created: "2024-08-08T00:29:01.102274425+02:00" + created: "2024-10-15T11:46:45.208991766+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: 1c4dbc502b935898ecaa178b5f0a172be5d75302c729dd96224a19f0dfe7964f home: https://github.com/kedacore/keda @@ -1251,7 +1272,7 @@ entries: version: 1.4.0 - apiVersion: v1 appVersion: 1.4.0 - created: "2024-08-08T00:29:01.099537663+02:00" + created: "2024-10-15T11:46:45.205956315+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: 6fccc45972ba1e3e9b2a6d3a20d4c6da4e8e1707e28cbf9f52114811628e7498 home: https://github.com/kedacore/keda @@ -1267,7 +1288,7 @@ entries: version: 1.3.2 - apiVersion: v1 appVersion: 1.3.0 - created: "2024-08-08T00:29:01.097553535+02:00" + created: "2024-10-15T11:46:45.201858785+02:00" description: Event-based autoscaler for workloads on Kubernetes digest: e13bcb65816ed59b10b32fa6db8f61668635459d56c2d599bb3c0bcc5dcc1368 home: https://github.com/kedacore/keda @@ -1283,7 +1304,7 @@ entries: version: 1.3.1 - apiVersion: v1 appVersion: 1.3.0 - created: "2024-08-08T00:29:01.09522878+02:00" + created: "2024-10-15T11:46:45.19878946+02:00" description: Event based autoscaler for Azure Functions deployments on Kubernetes digest: 28fed67bbc6ee61357743991f6c66a88b3749d9d7e9d26322f4f9116d038acb8 home: https://github.com/kedacore/keda @@ -1299,7 +1320,7 @@ entries: version: 1.3.0 - apiVersion: v1 appVersion: 1.2.0 - created: "2024-08-08T00:29:01.093090728+02:00" + created: "2024-10-15T11:46:45.194266316+02:00" description: Event based autoscaler for Azure Functions deployments on Kubernetes digest: e041dbed2455fef34f2908594a42fc8a7f163a1f48be46c2f93dea46e36fc733 home: https://github.com/kedacore/keda @@ -1315,7 +1336,7 @@ entries: version: 1.2.0 - apiVersion: v1 appVersion: 1.1.0 - created: "2024-08-08T00:29:01.090731653+02:00" + created: "2024-10-15T11:46:45.190632882+02:00" description: Event based autoscaler for Azure Functions deployments on Kubernetes digest: c624e6620a9a6f265f51a82ee0d8267dcb2637dd3777306afbb271746234ff2d home: https://github.com/kedacore/keda @@ -1331,7 +1352,7 @@ entries: version: 1.1.0 - apiVersion: v1 appVersion: 1.0.0 - created: "2024-08-08T00:29:01.088821946+02:00" + created: "2024-10-15T11:46:45.186470888+02:00" description: Event based autoscaler for Azure Functions deployments on Kubernetes digest: ef934588dce70d874ea69692e082b8a70ad19095090b8d4fa7b5cb69b2cecaf6 home: https://github.com/kedacore/keda @@ -1348,7 +1369,7 @@ entries: keda-add-ons-http: - apiVersion: v2 appVersion: 0.8.0 - created: "2024-08-08T00:29:01.265855004+02:00" + created: "2024-10-15T11:46:45.634908374+02:00" description: Event-based autoscaler for HTTP workloads on Kubernetes digest: 4fa74683d1bd87dfc18cb980fee4c1172909b0d929aab0fcc18c760322d1dcb5 home: https://github.com/kedacore/http-add-on @@ -1371,7 +1392,7 @@ entries: version: 0.8.0 - apiVersion: v2 appVersion: 0.7.0 - created: "2024-08-08T00:29:01.26487565+02:00" + created: "2024-10-15T11:46:45.633360896+02:00" description: Event-based autoscaler for HTTP workloads on Kubernetes digest: 11df2793e3f5c12e6558a77e67e850472d5e3dcb489a764194c69fcb81ab3100 home: https://github.com/kedacore/http-add-on @@ -1394,7 +1415,7 @@ entries: version: 0.7.0 - apiVersion: v2 appVersion: 0.6.0 - created: "2024-08-08T00:29:01.264007616+02:00" + created: "2024-10-15T11:46:45.631011218+02:00" description: Event-based autoscaler for HTTP workloads on Kubernetes digest: 435c6c9c221b8e98774c662250a091b872222584510e3b7f1df2a838afa81252 home: https://github.com/kedacore/http-add-on @@ -1417,7 +1438,7 @@ entries: version: 0.6.0 - apiVersion: v2 appVersion: 0.5.0 - created: "2024-08-08T00:29:01.263314885+02:00" + created: "2024-10-15T11:46:45.62906299+02:00" description: Event-based autoscaler for HTTP workloads on Kubernetes digest: 2f7a41ea8fbed944ea789e5811edcb263275452d6c8928a4647d78d0d9895b15 home: https://github.com/kedacore/http-add-on @@ -1440,7 +1461,7 @@ entries: version: 0.5.3 - apiVersion: v2 appVersion: 0.5.0 - created: "2024-08-08T00:29:01.262557337+02:00" + created: "2024-10-15T11:46:45.627135155+02:00" description: Event-based autoscaler for HTTP workloads on Kubernetes digest: cc4459e84407bc2b29203ad02ddcea31471ce3b3d1c4a91c0d7f6be212725c38 home: https://github.com/kedacore/http-add-on @@ -1463,7 +1484,7 @@ entries: version: 0.5.2 - apiVersion: v2 appVersion: 0.5.0 - created: "2024-08-08T00:29:01.261866684+02:00" + created: "2024-10-15T11:46:45.625134755+02:00" description: Event-based autoscaler for HTTP workloads on Kubernetes digest: 802dd7fa808a092b1c3669e217b6295c600929351fd7ad9ff6485b5ffa7ac87d home: https://github.com/kedacore/http-add-on @@ -1486,7 +1507,7 @@ entries: version: 0.5.1 - apiVersion: v2 appVersion: 0.5.0 - created: "2024-08-08T00:29:01.261010873+02:00" + created: "2024-10-15T11:46:45.623024634+02:00" description: Event-based autoscaler for HTTP workloads on Kubernetes digest: 436f37e50c6a2cb406b13144778163070b3903a77750ac2afd71a13c07edd7d3 home: https://github.com/kedacore/http-add-on @@ -1509,7 +1530,7 @@ entries: version: 0.5.0 - apiVersion: v2 appVersion: 0.4.0 - created: "2024-08-08T00:29:01.26026537+02:00" + created: "2024-10-15T11:46:45.619439251+02:00" description: Event-based autoscaler for HTTP workloads on Kubernetes digest: ed7e2d31de0f5afff393e1c8857968b68777ff2e29678351ae6e85dfeb54e2f1 home: https://github.com/kedacore/http-add-on @@ -1532,7 +1553,7 @@ entries: version: 0.4.1 - apiVersion: v2 appVersion: 0.4.0 - created: "2024-08-08T00:29:01.259558367+02:00" + created: "2024-10-15T11:46:45.617519867+02:00" description: Event-based autoscaler for HTTP workloads on Kubernetes digest: 63a58740d9a528b16cff62eb78ab7c33ac1bb00c1f5d4802cd3de1229f24b1c8 home: https://github.com/kedacore/http-add-on @@ -1555,7 +1576,7 @@ entries: version: 0.4.0 - apiVersion: v2 appVersion: 0.3.0 - created: "2024-08-08T00:29:01.258176557+02:00" + created: "2024-10-15T11:46:45.615575341+02:00" description: Event-based autoscaler for HTTP workloads on Kubernetes digest: 79ace4c4fa1521f9e072c34917155db49047b024f77054df2a089aca9a686b14 home: https://github.com/kedacore/http-add-on @@ -1580,7 +1601,7 @@ entries: version: 0.3.1 - apiVersion: v2 appVersion: 0.3.0 - created: "2024-08-08T00:29:01.257313307+02:00" + created: "2024-10-15T11:46:45.613365835+02:00" description: Event-based autoscaler for HTTP workloads on Kubernetes digest: e48c9139df0d83cea4b1faed0094d87707243dbfe620eab2254c7d810ed0f4c2 home: https://github.com/kedacore/http-add-on @@ -1604,7 +1625,7 @@ entries: version: 0.3.0 - apiVersion: v2 appVersion: 0.2.0 - created: "2024-08-08T00:29:01.256569531+02:00" + created: "2024-10-15T11:46:45.611234552+02:00" description: Event-based autoscaler for HTTP workloads on Kubernetes digest: ba2bc1bc4445a0aca8e71726f5e0797941a67f5d98764c56be300f6b2c5c008b home: https://github.com/kedacore/http-add-on @@ -1628,7 +1649,7 @@ entries: version: 0.2.2 - apiVersion: v2 appVersion: 0.2.0 - created: "2024-08-08T00:29:01.255869566+02:00" + created: "2024-10-15T11:46:45.609324737+02:00" description: Event-based autoscaler for HTTP workloads on Kubernetes digest: 0dc118417aad98e528e499fdd5e4e8a43465d071dd954612ff5d0289756d372c home: https://github.com/kedacore/http-add-on @@ -1652,7 +1673,7 @@ entries: version: 0.2.1 - apiVersion: v2 appVersion: 0.2.0 - created: "2024-08-08T00:29:01.25518484+02:00" + created: "2024-10-15T11:46:45.607467023+02:00" description: Event-based autoscaler for HTTP workloads on Kubernetes digest: 2c209e2a1287a54934cd7e1345fddc5b2b6c2a51c92d07a314f3e08e304af321 home: https://github.com/kedacore/http-add-on @@ -1676,7 +1697,7 @@ entries: version: 0.2.0 - apiVersion: v2 appVersion: 0.1.0 - created: "2024-08-08T00:29:01.254519911+02:00" + created: "2024-10-15T11:46:45.605898592+02:00" description: Event-based autoscaler for HTTP workloads on Kubernetes digest: 51bc31412a28fe78a0d0b2cdb76aae1af9eda9707ceecdfdde7106b7a2ceb8cb home: https://github.com/kedacore/http-add-on @@ -1700,7 +1721,7 @@ entries: version: 0.1.0 - apiVersion: v2 appVersion: 0.0.1 - created: "2024-08-08T00:29:01.254050523+02:00" + created: "2024-10-15T11:46:45.604815002+02:00" description: Event-based autoscaler for HTTP workloads on Kubernetes digest: 0cbcd436721095d7f40750a917ed22d7c83883bdb256edfd43a40a5a0b4f5c17 home: https://github.com/kedacore/http-add-on @@ -1722,4 +1743,4 @@ entries: urls: - https://kedacore.github.io/charts/keda-add-ons-http-0.0.1.tgz version: 0.0.1 -generated: "2024-08-08T00:29:01.083960527+02:00" +generated: "2024-10-15T11:46:45.183047887+02:00" diff --git a/docs/keda-2.15.2.tgz b/docs/keda-2.15.2.tgz new file mode 100644 index 0000000000000000000000000000000000000000..228dfe042a973a0297161dad109bfae881b99684 GIT binary patch literal 95519 zcmV)rK$*WEiwG0|00000|0w_~VMtOiV@ORlOnEsqVl!4SWK%V1T2nbTPgYhoO;>Dc zVQyr3R8em|NM&qo0POwidgHdWIE?qRt^)D&w{3S@vOULc@4ef&9w%`!2S2uxJpJdF z)({Cvh)IA2Kzo!leg3!c-rjp9?}LQ{4LNMs;rqTt!-En#Xn#*%~xr;5t} zM?|0r7wC?Qn~393BF@k^>6i#c6p@1&kI505DV4~h{rxFbvvfQPc)YKdUcd!`KL#|= z@ZDzu-;KU__VzLpFMlt@BfD=Pta>J z!D*zBSp=|^^`aOJo}jB4m554&(O-|>z8Oxqh_O;6L=zej{lRMzL|71Xiv`8wh)AS3 z8WWUYsVM|yilaGC1yUqVBCLoU4F=PQk8yM~KnOOj{sW;WXgEY)!W;7#2{NTpi8;fydPp@w^ZgjgCygMkO8vCjcLtA@rCBCz731Zz4AgxQCM>Us;-RZY00 zitEb7{Z|5^@N@yf2)zfwilaR=rMHA3oFvF@T>bS|B#Kd>k7qp(sUFnv9EE1epaq4e zM`&wnfKW`7pn*J2=p_-iM64czx26UpcpucDmH2M z(Gfb1?(kd=1^^>t4^R-LQV{{;G(z7RvVkT9t5gt)WE#v6mWaeuDaxkkB;siZY=|7# zy6?>S=wS{W_O*?LT%Y=`{%iPkR?( zggin&{5TjeqBM4PJ-IBIdsNg_Uv2~+xFP|O9%s__ZZEQPDIhd7Joh%@3JnGMGRg6?P(>0PNYhzJge zK$wL{pF5hED1j#v8klzfnr|_U6iuS6)jc#$l?F36Fd0{f#);s!26#dQut&O4OOE#t zRVd(T6dDW#3Dba}kl!&yV}im|XdEz_U>b3KvH==z2o|=>l%XGVS3@48dX8Y<|G48g ze_+$(Y(M0I+z0MT?VBMW`<9mNKbg_#Y>00$jqKFyj$kICTPHkadIs$TzNQj(lOQtT zOcJ2xdO7N|0vN+TO8rvl)0i?8L{y7|Q*JOf)peip^(2jxXpUlnnM7)a6;i2SdK%3V zP6QA1?%@*@;~QN�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

#jBzLQT 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.23.0-0" # This is the chart version. This version number should be incremented each time you make changes # to the chart and its templates, including the app version. -version: 2.15.1 +version: 2.15.2 # This is the version number of the application being deployed. This version number should be # incremented each time you make changes to the application. @@ -21,7 +21,7 @@ sources: maintainers: - name: Jorge Turrado email: jorge_turrado@hotmail.es - - name: Tom Kerkhove - email: kerkhove.tom@gmail.com - name: Zbynek Roubalik email: zbynek@kedify.io + - name: Jan Wozniak + email: jan@kedify.io From c0d3bd5d4685ec2d81dc4713eb15aef41e2f6ec9 Mon Sep 17 00:00:00 2001 From: Jan Wozniak Date: Fri, 25 Oct 2024 10:29:52 +0200 Subject: [PATCH 6/6] http-add-on: support portName on HTTPScaledObject (#697) Signed-off-by: Jan Wozniak --- http-add-on/templates/crd.yaml | 15 ++++++++++----- http-add-on/templates/interceptor/rbac.yml | 8 ++++++++ 2 files changed, 18 insertions(+), 5 deletions(-) diff --git a/http-add-on/templates/crd.yaml b/http-add-on/templates/crd.yaml index 9c64f00c..cfb2ef56 100644 --- a/http-add-on/templates/crd.yaml +++ b/http-add-on/templates/crd.yaml @@ -93,8 +93,9 @@ spec: type: integer type: object scaleTargetRef: - description: The name of the deployment to route HTTP requests to - (and to autoscale). + description: |- + The name of the deployment to route HTTP requests to (and to autoscale). + Including validation as a requirement to define either the PortName or the Port properties: apiVersion: type: string @@ -110,13 +111,18 @@ spec: description: The port to route to format: int32 type: integer + portName: + description: The port to route to referenced by name + type: string service: description: The name of the service to route to type: string required: - - port - service type: object + x-kubernetes-validations: + - message: must define either the 'portName' or the 'port' + rule: has(self.portName) != has(self.port) scaledownPeriod: description: (optional) Cooldown period value format: int32 @@ -152,7 +158,7 @@ spec: type: object type: object targetPendingRequests: - description: (optional) DEPRECATED (use SscalingMetric instead) Target + description: (optional) DEPRECATED (use ScalingMetric instead) Target metric value format: int32 type: integer @@ -210,4 +216,3 @@ spec: subresources: status: {} {{ end }} - \ No newline at end of file diff --git a/http-add-on/templates/interceptor/rbac.yml b/http-add-on/templates/interceptor/rbac.yml index bfbf1fe7..85866a00 100644 --- a/http-add-on/templates/interceptor/rbac.yml +++ b/http-add-on/templates/interceptor/rbac.yml @@ -13,6 +13,14 @@ rules: - get - list - watch +- apiGroups: + - "" + resources: + - services + verbs: + - get + - list + - watch - apiGroups: - http.keda.sh resources: