diff --git a/docs/index.yaml b/docs/index.yaml index 9bc904c3..d4cf2fac 100644 --- a/docs/index.yaml +++ b/docs/index.yaml @@ -1,9 +1,29 @@ apiVersion: v1 entries: keda: + - apiVersion: v2 + appVersion: 2.1.0 + created: "2021-01-27T14:46:26.2756809+01:00" + description: Event-based autoscaler for workloads on Kubernetes + digest: 91998f9165176f972b954ef9d4077942979cb5e863bb7d76ed29c48f63533531 + home: https://github.com/kedacore/keda + icon: https://raw.githubusercontent.com/kedacore/keda/master/images/keda-logo-500x500-white.png + maintainers: + - email: ahmels@microsoft.com + name: Ahmed ElSayed + - email: kerkhove.tom@gmail.com + name: Tom Kerkhove + - email: zroubali@redhat.com + name: Zbynek Roubalik + name: keda + sources: + - https://github.com/kedacore/keda + urls: + - https://kedacore.github.io/charts/keda-2.1.0.tgz + version: 2.1.0 - apiVersion: v2 appVersion: 2.0.0 - created: "2020-12-23T19:32:45.0199966+01:00" + created: "2021-01-27T14:46:26.2736879+01:00" description: Event-based autoscaler for workloads on Kubernetes digest: ce2e848f5d7a067d74feb3745da5a834cccdfaa665b5b59d43ad06baa4cdfd04 home: https://github.com/kedacore/keda @@ -23,7 +43,7 @@ entries: version: 2.0.1 - apiVersion: v1 appVersion: 2.0.0 - created: "2020-12-23T19:32:44.9899935+01:00" + created: "2021-01-27T14:46:26.2656482+01:00" description: Event-based autoscaler for workloads on Kubernetes digest: dba8b0e793085165c7d155f9393c5ff112d4714dbce0201404ceb0e67d1b2deb home: https://github.com/kedacore/keda @@ -43,7 +63,7 @@ entries: version: 2.0.0 - apiVersion: v1 appVersion: 2.0.0-rc2 - created: "2020-12-23T19:32:44.965994+01:00" + created: "2021-01-27T14:46:26.2562003+01:00" description: Event-based autoscaler for workloads on Kubernetes digest: bad82c28c5ca1d5e69fac4bfcc7a999d5d2b2afd9b19ff6deb9a48811110eb0d home: https://github.com/kedacore/keda @@ -63,7 +83,7 @@ entries: version: 2.0.0-rc3 - apiVersion: v2 appVersion: 2.0.0-rc2 - created: "2020-12-23T19:32:44.945989+01:00" + created: "2021-01-27T14:46:26.2468272+01:00" description: Event-based autoscaler for workloads on Kubernetes digest: a4042ba14e595a8e82c9a39d8987625b89292aa86029686a3603b724fda36ca0 home: https://github.com/kedacore/keda @@ -84,7 +104,7 @@ entries: version: 2.0.0-rc2 - apiVersion: v1 appVersion: 2.0.0-rc - created: "2020-12-23T19:32:44.9219906+01:00" + created: "2021-01-27T14:46:26.2378501+01:00" description: Event-based autoscaler for workloads on Kubernetes digest: 3a952f2aaa0ea35ee4335f0b168f44fcf37c5c5ab7e9b9bba7e731c42f04ad61 home: https://github.com/kedacore/keda @@ -104,7 +124,7 @@ entries: version: 2.0.0-rc - apiVersion: v1 appVersion: 2.0.0-beta - created: "2020-12-23T19:32:44.9049916+01:00" + created: "2021-01-27T14:46:26.2266807+01:00" description: Event-based autoscaler for workloads on Kubernetes digest: fbafc7ae564c13a0eab7062667759f6e93595c97125731a27e8290574e1d570c home: https://github.com/kedacore/keda @@ -124,7 +144,7 @@ entries: version: 2.0.0-beta1.2 - apiVersion: v1 appVersion: 2.0.0-beta - created: "2020-12-23T19:32:44.6314429+01:00" + created: "2021-01-27T14:46:26.2166812+01:00" description: Event-based autoscaler for workloads on Kubernetes digest: db9e7d2423423463285f2e9d5b940a63b41d6555ba9fcab8fda0e6a757ccefa9 home: https://github.com/kedacore/keda @@ -144,7 +164,7 @@ entries: version: 2.0.0-beta1.1 - apiVersion: v1 appVersion: 2.0.0-beta - created: "2020-12-23T19:32:44.5674509+01:00" + created: "2021-01-27T14:46:26.2047171+01:00" description: Event-based autoscaler for workloads on Kubernetes digest: f0a8f0b854246ee2258ec8f10528f2811681ad2e41946dc455586f1ba9818e01 home: https://github.com/kedacore/keda @@ -164,7 +184,7 @@ entries: version: 2.0.0-beta - apiVersion: v1 appVersion: 1.5.0 - created: "2020-12-23T19:32:44.3518922+01:00" + created: "2021-01-27T14:46:26.1956826+01:00" description: Event-based autoscaler for workloads on Kubernetes digest: 07b15ddae4f1c40747de063100a668ac15d504cd0548eac0e1a04381fcaa3b37 home: https://github.com/kedacore/keda @@ -184,7 +204,7 @@ entries: version: 1.5.0 - apiVersion: v1 appVersion: 1.4.1 - created: "2020-12-23T19:32:44.319888+01:00" + created: "2021-01-27T14:46:26.1866811+01:00" description: Event-based autoscaler for workloads on Kubernetes digest: f8bf80186ac3343998021a1721d06a67fdacd1dab92e4a4992620903b52004a4 home: https://github.com/kedacore/keda @@ -204,7 +224,7 @@ entries: version: 1.4.2 - apiVersion: v1 appVersion: 1.4.1 - created: "2020-12-23T19:32:44.2498951+01:00" + created: "2021-01-27T14:46:26.1727325+01:00" description: Event-based autoscaler for workloads on Kubernetes digest: 97a2e5c0beff93bb71ff861da0f29d09dcf988e724784f8b7c56ac9872c37a81 home: https://github.com/kedacore/keda @@ -220,7 +240,7 @@ entries: version: 1.4.1 - apiVersion: v1 appVersion: 1.4.0 - created: "2020-12-23T19:32:44.183894+01:00" + created: "2021-01-27T14:46:26.1636811+01:00" description: Event-based autoscaler for workloads on Kubernetes digest: 7b2b4e29f867361af87a60411b0a196416b04b2e20f4091d166263ea5195c355 home: https://github.com/kedacore/keda @@ -236,7 +256,7 @@ entries: version: 1.4.0 - apiVersion: v1 appVersion: 1.4.0 - created: "2020-12-23T19:32:44.1538925+01:00" + created: "2021-01-27T14:46:26.154682+01:00" description: Event-based autoscaler for workloads on Kubernetes digest: a9e78b6cb2257702296d7cc28ca7acdd0b11603aef7e95dbdc7d4ddfa3f3a49c home: https://github.com/kedacore/keda @@ -252,7 +272,7 @@ entries: version: 1.3.2 - apiVersion: v1 appVersion: 1.3.0 - created: "2020-12-23T19:32:44.1018912+01:00" + created: "2021-01-27T14:46:26.1456838+01:00" description: Event-based autoscaler for workloads on Kubernetes digest: e13bcb65816ed59b10b32fa6db8f61668635459d56c2d599bb3c0bcc5dcc1368 home: https://github.com/kedacore/keda @@ -268,7 +288,7 @@ entries: version: 1.3.1 - apiVersion: v1 appVersion: 1.3.0 - created: "2020-12-23T19:32:44.0578908+01:00" + created: "2021-01-27T14:46:26.1357073+01:00" description: Event based autoscaler for Azure Functions deployments on Kubernetes digest: c0772458ab70bf3f019dc0b899ff444b9d7e6dcc466afd62e3f62e90eb8a24ed home: https://github.com/kedacore/keda @@ -284,7 +304,7 @@ entries: version: 1.3.0 - apiVersion: v1 appVersion: 1.2.0 - created: "2020-12-23T19:32:44.0258913+01:00" + created: "2021-01-27T14:46:26.1266822+01:00" description: Event based autoscaler for Azure Functions deployments on Kubernetes digest: e041dbed2455fef34f2908594a42fc8a7f163a1f48be46c2f93dea46e36fc733 home: https://github.com/kedacore/keda @@ -300,7 +320,7 @@ entries: version: 1.2.0 - apiVersion: v1 appVersion: 1.1.0 - created: "2020-12-23T19:32:43.9798916+01:00" + created: "2021-01-27T14:46:26.117708+01:00" description: Event based autoscaler for Azure Functions deployments on Kubernetes digest: c624e6620a9a6f265f51a82ee0d8267dcb2637dd3777306afbb271746234ff2d home: https://github.com/kedacore/keda @@ -316,7 +336,7 @@ entries: version: 1.1.0 - apiVersion: v1 appVersion: 1.0.0 - created: "2020-12-23T19:32:43.9568913+01:00" + created: "2021-01-27T14:46:26.1076815+01:00" description: Event based autoscaler for Azure Functions deployments on Kubernetes digest: ef934588dce70d874ea69692e082b8a70ad19095090b8d4fa7b5cb69b2cecaf6 home: https://github.com/kedacore/keda @@ -330,4 +350,4 @@ entries: urls: - https://kedacore.github.io/charts/keda-1.0.0.tgz version: 1.0.0 -generated: "2020-12-23T19:32:43.8908008+01:00" +generated: "2021-01-27T14:46:26.0977239+01:00" diff --git a/docs/keda-2.1.0.tgz b/docs/keda-2.1.0.tgz new file mode 100644 index 00000000..b7457c3f Binary files /dev/null and b/docs/keda-2.1.0.tgz differ diff --git a/keda/Chart.yaml b/keda/Chart.yaml index e16e2727..6895b60e 100644 --- a/keda/Chart.yaml +++ b/keda/Chart.yaml @@ -4,11 +4,11 @@ description: Event-based autoscaler for workloads on Kubernetes # 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.0.1 +version: 2.1.0 # This is the version number of the application being deployed. This version number should be # incremented each time you make changes to the application. -appVersion: 2.0.0 +appVersion: 2.1.0 home: https://github.com/kedacore/keda icon: https://raw.githubusercontent.com/kedacore/keda/master/images/keda-logo-500x500-white.png diff --git a/keda/crds/clustertriggerauthentications.yaml b/keda/crds/clustertriggerauthentications.yaml new file mode 100644 index 00000000..8876d9c9 --- /dev/null +++ b/keda/crds/clustertriggerauthentications.yaml @@ -0,0 +1,151 @@ +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.3.0 + creationTimestamp: null + name: clustertriggerauthentications.keda.sh +spec: + group: keda.sh + names: + kind: ClusterTriggerAuthentication + listKind: ClusterTriggerAuthenticationList + plural: clustertriggerauthentications + shortNames: + - cta + - clustertriggerauth + singular: clustertriggerauthentication + scope: Cluster + versions: + - additionalPrinterColumns: + - jsonPath: .spec.podIdentity.provider + name: PodIdentity + type: string + - jsonPath: .spec.secretTargetRef[*].name + name: Secret + type: string + - jsonPath: .spec.env[*].name + name: Env + type: string + name: v1alpha1 + schema: + openAPIV3Schema: + description: ClusterTriggerAuthentication defines how a trigger can authenticate + globally + properties: + apiVersion: + description: 'APIVersion defines the versioned schema of this representation + of an object. Servers should convert recognized schemas to the latest + internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + type: string + kind: + description: 'Kind is a string value representing the REST resource this + object represents. Servers may infer this from the endpoint the client + submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + type: string + metadata: + type: object + spec: + description: TriggerAuthenticationSpec defines the various ways to authenticate + properties: + env: + items: + description: AuthEnvironment is used to authenticate using environment + variables in the destination ScaleTarget spec + properties: + containerName: + type: string + name: + type: string + parameter: + type: string + required: + - name + - parameter + type: object + type: array + hashiCorpVault: + description: HashiCorpVault is used to authenticate using Hashicorp + Vault + properties: + address: + type: string + authentication: + description: VaultAuthentication contains the list of Hashicorp + Vault authentication methods + type: string + credential: + description: Credential defines the Hashicorp Vault credentials + depending on the authentication method + properties: + serviceAccount: + type: string + token: + type: string + type: object + mount: + type: string + role: + type: string + secrets: + items: + description: VaultSecret defines the mapping between the path + of the secret in Vault to the parameter + properties: + key: + type: string + parameter: + type: string + path: + type: string + required: + - key + - parameter + - path + type: object + type: array + required: + - address + - authentication + - secrets + type: object + podIdentity: + description: AuthPodIdentity allows users to select the platform native + identity mechanism + properties: + provider: + description: PodIdentityProvider contains the list of providers + type: string + required: + - provider + type: object + secretTargetRef: + items: + description: AuthSecretTargetRef is used to authenticate using a + reference to a secret + properties: + key: + type: string + name: + type: string + parameter: + type: string + required: + - key + - name + - parameter + type: object + type: array + type: object + required: + - spec + type: object + served: true + storage: true + subresources: {} +status: + acceptedNames: + kind: "" + plural: "" + conditions: [] + storedVersions: [] \ No newline at end of file diff --git a/keda/crds/scaledjobs.keda.sh.yaml b/keda/crds/scaledjobs.keda.sh.yaml index d2bc2cfd..9405cf1c 100644 --- a/keda/crds/scaledjobs.keda.sh.yaml +++ b/keda/crds/scaledjobs.keda.sh.yaml @@ -17,6 +17,12 @@ spec: scope: Namespaced versions: - additionalPrinterColumns: + - jsonPath: .spec.minReplicaCount + name: Min + type: integer + - jsonPath: .spec.maxReplicaCount + name: Max + type: integer - jsonPath: .spec.triggers[*].type name: Triggers type: string @@ -935,7 +941,7 @@ spec: fieldRef: description: 'Selects a field of the pod: supports metadata.name, metadata.namespace, - metadata.labels, metadata.annotations, + `metadata.labels['''']`, `metadata.annotations['''']`, spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.' properties: @@ -1739,6 +1745,33 @@ spec: that applies to the container. type: string type: object + seccompProfile: + description: The seccomp options to use by this + container. If seccomp options are provided + at both the pod & container level, the container + options override the pod options. + properties: + localhostProfile: + description: localhostProfile indicates + a profile defined in a file on the node + should be used. The profile must be preconfigured + on the node to work. Must be a descending + path, relative to the kubelet's configured + seccomp profile location. Must only be + set if type is "Localhost". + type: string + type: + description: "type indicates which kind + of seccomp profile will be applied. Valid + options are: \n Localhost - a profile + defined in a file on the node should be + used. RuntimeDefault - the container runtime + default profile should be used. Unconfined + - no profile should be applied." + type: string + required: + - type + type: object windowsOptions: description: The Windows specific settings applied to all containers. If unspecified, the options @@ -1780,8 +1813,7 @@ spec: at the beginning of a Pod''s lifecycle, when it might take a long time to load data or warm a cache, than during steady-state operation. This - cannot be updated. This is a beta feature enabled - by the StartupProbe feature flag. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' properties: exec: description: One and only one of the following @@ -2185,7 +2217,7 @@ spec: fieldRef: description: 'Selects a field of the pod: supports metadata.name, metadata.namespace, - metadata.labels, metadata.annotations, + `metadata.labels['''']`, `metadata.annotations['''']`, spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.' properties: @@ -2973,6 +3005,33 @@ spec: that applies to the container. type: string type: object + seccompProfile: + description: The seccomp options to use by this + container. If seccomp options are provided + at both the pod & container level, the container + options override the pod options. + properties: + localhostProfile: + description: localhostProfile indicates + a profile defined in a file on the node + should be used. The profile must be preconfigured + on the node to work. Must be a descending + path, relative to the kubelet's configured + seccomp profile location. Must only be + set if type is "Localhost". + type: string + type: + description: "type indicates which kind + of seccomp profile will be applied. Valid + options are: \n Localhost - a profile + defined in a file on the node should be + used. RuntimeDefault - the container runtime + default profile should be used. Unconfined + - no profile should be applied." + type: string + required: + - type + type: object windowsOptions: description: The Windows specific settings applied to all containers. If unspecified, the options @@ -3421,7 +3480,7 @@ spec: fieldRef: description: 'Selects a field of the pod: supports metadata.name, metadata.namespace, - metadata.labels, metadata.annotations, + `metadata.labels['''']`, `metadata.annotations['''']`, spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.' properties: @@ -4225,6 +4284,33 @@ spec: that applies to the container. type: string type: object + seccompProfile: + description: The seccomp options to use by this + container. If seccomp options are provided + at both the pod & container level, the container + options override the pod options. + properties: + localhostProfile: + description: localhostProfile indicates + a profile defined in a file on the node + should be used. The profile must be preconfigured + on the node to work. Must be a descending + path, relative to the kubelet's configured + seccomp profile location. Must only be + set if type is "Localhost". + type: string + type: + description: "type indicates which kind + of seccomp profile will be applied. Valid + options are: \n Localhost - a profile + defined in a file on the node should be + used. RuntimeDefault - the container runtime + default profile should be used. Unconfined + - no profile should be applied." + type: string + required: + - type + type: object windowsOptions: description: The Windows specific settings applied to all containers. If unspecified, the options @@ -4266,8 +4352,7 @@ spec: at the beginning of a Pod''s lifecycle, when it might take a long time to load data or warm a cache, than during steady-state operation. This - cannot be updated. This is a beta feature enabled - by the StartupProbe feature flag. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' properties: exec: description: One and only one of the following @@ -4557,8 +4642,7 @@ spec: description: PreemptionPolicy is the Policy for preempting pods with lower priority. One of Never, PreemptLowerPriority. Defaults to PreemptLowerPriority if unset. This field - is alpha-level and is only honored by servers that enable - the NonPreemptingPriority feature. + is beta-level, gated by the NonPreemptingPriority feature-gate. type: string priority: description: The priority value. Various system components @@ -4642,7 +4726,7 @@ spec: based ownership(and permissions). It will have no effect on ephemeral volume types such as: secret, configmaps and emptydir. Valid values are "OnRootMismatch" - and "Always". If not specified defaults to "Always".' + and "Always". If not specified, "Always" is used.' type: string runAsGroup: description: The GID to run the entrypoint of the @@ -4698,6 +4782,29 @@ spec: applies to the container. type: string type: object + seccompProfile: + description: The seccomp options to use by the containers + in this pod. + properties: + localhostProfile: + description: localhostProfile indicates a profile + defined in a file on the node should be used. + The profile must be preconfigured on the node + to work. Must be a descending path, relative + to the kubelet's configured seccomp profile + location. Must only be set if type is "Localhost". + type: string + type: + description: "type indicates which kind of seccomp + profile will be applied. Valid options are: + \n Localhost - a profile defined in a file on + the node should be used. RuntimeDefault - the + container runtime default profile should be + used. Unconfined - no profile should be applied." + type: string + required: + - type + type: object supplementalGroups: description: A list of groups applied to the first process run in each container, in addition to the @@ -4763,6 +4870,17 @@ spec: description: 'ServiceAccountName is the name of the ServiceAccount to use to run this pod. More info: https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/' type: string + setHostnameAsFQDN: + description: If true the pod's hostname will be configured + as the pod's FQDN, rather than the leaf name (the default). + In Linux containers, this means setting the FQDN in + the hostname field of the kernel (the nodename field + of struct utsname). In Windows containers, this means + setting the registry value of hostname for the registry + key HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Services\\Tcpip\\Parameters + to FQDN. If a pod does not have FQDN, this has no effect. + Default to false. + type: boolean shareProcessNamespace: description: 'Share a single process namespace between all of the containers in a pod. When this is set containers @@ -4840,9 +4958,7 @@ spec: description: TopologySpreadConstraints describes how a group of pods ought to spread across topology domains. Scheduler will schedule pods in a way which abides by - the constraints. This field is only honored by clusters - that enable the EvenPodsSpread feature. All topologySpreadConstraints - are ANDed. + the constraints. All topologySpreadConstraints are ANDed. items: description: TopologySpreadConstraint specifies how to spread matching pods among the given topology. @@ -4902,18 +5018,21 @@ spec: type: object maxSkew: description: 'MaxSkew describes the degree to which - pods may be unevenly distributed. It''s the maximum - permitted difference between the number of matching - pods in any two topology domains of a given topology - type. For example, in a 3-zone cluster, MaxSkew - is set to 1, and pods with the same labelSelector - spread as 1/1/0: | zone1 | zone2 | zone3 | | P | P | | - - if MaxSkew is 1, incoming pod can only be scheduled + pods may be unevenly distributed. When `whenUnsatisfiable=DoNotSchedule`, + it is the maximum permitted difference between + the number of matching pods in the target topology + and the global minimum. For example, in a 3-zone + cluster, MaxSkew is set to 1, and pods with the + same labelSelector spread as 1/1/0: | zone1 | + zone2 | zone3 | | P | P | | - if + MaxSkew is 1, incoming pod can only be scheduled to zone3 to become 1/1/1; scheduling it onto zone1(zone2) would make the ActualSkew(2-0) on zone1(zone2) violate MaxSkew(1). - if MaxSkew is 2, incoming - pod can be scheduled onto any zone. It''s a required - field. Default value is 1 and 0 is not allowed.' + pod can be scheduled onto any zone. When `whenUnsatisfiable=ScheduleAnyway`, + it is used to give higher precedence to topologies + that satisfy it. It''s a required field. Default + value is 1 and 0 is not allowed.' format: int32 type: integer topologyKey: @@ -4928,10 +5047,13 @@ spec: description: 'WhenUnsatisfiable indicates how to deal with a pod if it doesn''t satisfy the spread constraint. - DoNotSchedule (default) tells the - scheduler not to schedule it - ScheduleAnyway - tells the scheduler to still schedule it It''s - considered as "Unsatisfiable" if and only if placing - incoming pod on any topology violates "MaxSkew". + scheduler not to schedule it. - ScheduleAnyway + tells the scheduler to schedule the pod in any + location, but giving higher precedence to topologies + that would help reduce the skew. A constraint + is considered "Unsatisfiable" for an incoming + pod if and only if every possible node assigment + for that pod would violate "MaxSkew" on some topology. For example, in a 3-zone cluster, MaxSkew is set to 1, and pods with the same labelSelector spread as 3/1/1: | zone1 | zone2 | zone3 | | P P P | P | P | @@ -5142,13 +5264,17 @@ spec: should populate this volume properties: defaultMode: - description: 'Optional: mode bits to use on - created files by default. Must be a value - between 0 and 0777. Defaults to 0644. Directories - within the path are not affected by this setting. - This might be in conflict with other options - that affect the file mode, like fsGroup, and - the result can be other mode bits set.' + description: 'Optional: mode bits used to set + permissions on created files by default. Must + be an octal value between 0000 and 0777 or + a decimal value between 0 and 511. YAML accepts + both octal and decimal values, JSON requires + decimal values for mode bits. Defaults to + 0644. Directories within the path are not + affected by this setting. This might be in + conflict with other options that affect the + file mode, like fsGroup, and the result can + be other mode bits set.' format: int32 type: integer items: @@ -5171,12 +5297,16 @@ spec: description: The key to project. type: string mode: - description: 'Optional: mode bits to use - on this file, must be a value between - 0 and 0777. If not specified, the volume - defaultMode will be used. This might - be in conflict with other options that - affect the file mode, like fsGroup, + description: 'Optional: mode bits used + to set permissions on this file. Must + be an octal value between 0000 and 0777 + or a decimal value between 0 and 511. + YAML accepts both octal and decimal + values, JSON requires decimal values + for mode bits. If not specified, the + volume defaultMode will be used. This + might be in conflict with other options + that affect the file mode, like fsGroup, and the result can be other mode bits set.' format: int32 @@ -5206,8 +5336,8 @@ spec: type: object csi: description: CSI (Container Storage Interface) represents - storage that is handled by an external CSI driver - (Alpha feature). + ephemeral storage that is handled by certain external + CSI drivers (Beta feature). properties: driver: description: Driver is the name of the CSI driver @@ -5260,9 +5390,14 @@ spec: properties: defaultMode: description: 'Optional: mode bits to use on - created files by default. Must be a value - between 0 and 0777. Defaults to 0644. Directories - within the path are not affected by this setting. + created files by default. Must be a Optional: + mode bits used to set permissions on created + files by default. Must be an octal value between + 0000 and 0777 or a decimal value between 0 + and 511. YAML accepts both octal and decimal + values, JSON requires decimal values for mode + bits. Defaults to 0644. Directories within + the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set.' @@ -5294,12 +5429,16 @@ spec: - fieldPath type: object mode: - description: 'Optional: mode bits to use - on this file, must be a value between - 0 and 0777. If not specified, the volume - defaultMode will be used. This might - be in conflict with other options that - affect the file mode, like fsGroup, + description: 'Optional: mode bits used + to set permissions on this file, must + be an octal value between 0000 and 0777 + or a decimal value between 0 and 511. + YAML accepts both octal and decimal + values, JSON requires decimal values + for mode bits. If not specified, the + volume defaultMode will be used. This + might be in conflict with other options + that affect the file mode, like fsGroup, and the result can be other mode bits set.' format: int32 @@ -5371,6 +5510,231 @@ spec: pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ x-kubernetes-int-or-string: true type: object + ephemeral: + description: "Ephemeral represents a volume that + is handled by a cluster storage driver (Alpha + feature). The volume's lifecycle is tied to the + pod that defines it - it will be created before + the pod starts, and deleted when the pod is removed. + \n Use this if: a) the volume is only needed while + the pod runs, b) features of normal volumes like + restoring from snapshot or capacity tracking + are needed, c) the storage driver is specified + through a storage class, and d) the storage driver + supports dynamic volume provisioning through a + PersistentVolumeClaim (see EphemeralVolumeSource + for more information on the connection between + this volume type and PersistentVolumeClaim). + \n Use PersistentVolumeClaim or one of the vendor-specific + APIs for volumes that persist for longer than + the lifecycle of an individual pod. \n Use CSI + for light-weight local ephemeral volumes if the + CSI driver is meant to be used that way - see + the documentation of the driver for more information. + \n A pod can use both types of ephemeral volumes + and persistent volumes at the same time." + properties: + readOnly: + description: Specifies a read-only configuration + for the volume. Defaults to false (read/write). + type: boolean + volumeClaimTemplate: + description: "Will be used to create a stand-alone + PVC to provision the volume. The pod in which + this EphemeralVolumeSource is embedded will + be the owner of the PVC, i.e. the PVC will + be deleted together with the pod. The name + of the PVC will be `-` + where `` is the name from the + `PodSpec.Volumes` array entry. Pod validation + will reject the pod if the concatenated name + is not valid for a PVC (for example, too long). + \n An existing PVC with that name that is + not owned by the pod will *not* be used for + the pod to avoid using an unrelated volume + by mistake. Starting the pod is then blocked + until the unrelated PVC is removed. If such + a pre-created PVC is meant to be used by the + pod, the PVC has to updated with an owner + reference to the pod once the pod exists. + Normally this should not be necessary, but + it may be useful when manually reconstructing + a broken cluster. \n This field is read-only + and no changes will be made by Kubernetes + to the PVC after it has been created. \n Required, + must not be nil." + properties: + metadata: + description: May contain labels and annotations + that will be copied into the PVC when + creating it. No other fields are allowed + and will be rejected during validation. + type: object + spec: + description: The specification for the PersistentVolumeClaim. + The entire content is copied unchanged + into the PVC that gets created from this + template. The same fields as in a PersistentVolumeClaim + are also valid here. + properties: + accessModes: + description: 'AccessModes contains the + desired access modes the volume should + have. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1' + items: + type: string + type: array + dataSource: + description: 'This field can be used + to specify either: * An existing VolumeSnapshot + object (snapshot.storage.k8s.io/VolumeSnapshot) + * An existing PVC (PersistentVolumeClaim) + * An existing custom resource that + implements data population (Alpha) + In order to use custom resource types + that implement data population, the + AnyVolumeDataSource feature gate must + be enabled. If the provisioner or + an external controller can support + the specified data source, it will + create a new volume based on the contents + of the specified data source.' + properties: + apiGroup: + description: APIGroup is the group + for the resource being referenced. + If APIGroup is not specified, + the specified Kind must be in + the core API group. For any other + third-party types, APIGroup is + required. + type: string + kind: + description: Kind is the type of + resource being referenced + type: string + name: + description: Name is the name of + resource being referenced + type: string + required: + - kind + - name + type: object + resources: + description: 'Resources represents the + minimum resources the volume should + have. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources' + properties: + limits: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + description: 'Limits describes the + maximum amount of compute resources + allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' + type: object + requests: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + description: 'Requests describes + the minimum amount of compute + resources required. If Requests + is omitted for a container, it + defaults to Limits if that is + explicitly specified, otherwise + to an implementation-defined value. + More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' + type: object + type: object + selector: + description: A label query over volumes + to consider for binding. + properties: + matchExpressions: + description: matchExpressions is + a list of label selector requirements. + The requirements are ANDed. + items: + description: A label selector + requirement is a selector that + contains values, a key, and + an operator that relates the + key and values. + properties: + key: + description: key is the label + key that the selector applies + to. + type: string + operator: + description: operator represents + a key's relationship to + a set of values. Valid operators + are In, NotIn, Exists and + DoesNotExist. + type: string + values: + description: values is an + array of string values. + If the operator is In or + NotIn, the values array + must be non-empty. If the + operator is Exists or DoesNotExist, + the values array must be + empty. This array is replaced + during a strategic merge + patch. + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + description: matchLabels is a map + of {key,value} pairs. A single + {key,value} in the matchLabels + map is equivalent to an element + of matchExpressions, whose key + field is "key", the operator is + "In", and the values array contains + only "value". The requirements + are ANDed. + type: object + type: object + storageClassName: + description: 'Name of the StorageClass + required by the claim. More info: + https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1' + type: string + volumeMode: + description: volumeMode defines what + type of volume is required by the + claim. Value of Filesystem is implied + when not included in claim spec. + type: string + volumeName: + description: VolumeName is the binding + reference to the PersistentVolume + backing this claim. + type: string + type: object + required: + - spec + type: object + type: object fc: description: FC represents a Fibre Channel resource that is attached to a kubelet's host machine and @@ -5744,13 +6108,16 @@ spec: configmaps, and downward API properties: defaultMode: - description: Mode bits to use on created files - by default. Must be a value between 0 and - 0777. Directories within the path are not - affected by this setting. This might be in - conflict with other options that affect the - file mode, like fsGroup, and the result can - be other mode bits set. + description: Mode bits used to set permissions + on created files by default. Must be an octal + value between 0000 and 0777 or a decimal value + between 0 and 511. YAML accepts both octal + and decimal values, JSON requires decimal + values for mode bits. Directories within the + path are not affected by this setting. This + might be in conflict with other options that + affect the file mode, like fsGroup, and the + result can be other mode bits set. format: int32 type: integer sources: @@ -5788,9 +6155,14 @@ spec: type: string mode: description: 'Optional: mode - bits to use on this file, - must be a value between 0 - and 0777. If not specified, + bits used to set permissions + on this file. Must be an octal + value between 0000 and 0777 + or a decimal value between + 0 and 511. YAML accepts both + octal and decimal values, + JSON requires decimal values + for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options @@ -5857,9 +6229,14 @@ spec: type: object mode: description: 'Optional: mode - bits to use on this file, - must be a value between 0 - and 0777. If not specified, + bits used to set permissions + on this file, must be an octal + value between 0000 and 0777 + or a decimal value between + 0 and 511. YAML accepts both + octal and decimal values, + JSON requires decimal values + for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options @@ -5942,9 +6319,14 @@ spec: type: string mode: description: 'Optional: mode - bits to use on this file, - must be a value between 0 - and 0777. If not specified, + bits used to set permissions + on this file. Must be an octal + value between 0000 and 0777 + or a decimal value between + 0 and 511. YAML accepts both + octal and decimal values, + JSON requires decimal values + for mode bits. If not specified, the volume defaultMode will be used. This might be in conflict with other options @@ -6016,8 +6398,6 @@ spec: type: object type: object type: array - required: - - sources type: object quobyte: description: Quobyte represents a Quobyte mount @@ -6184,13 +6564,17 @@ spec: populate this volume. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret' properties: defaultMode: - description: 'Optional: mode bits to use on - created files by default. Must be a value - between 0 and 0777. Defaults to 0644. Directories - within the path are not affected by this setting. - This might be in conflict with other options - that affect the file mode, like fsGroup, and - the result can be other mode bits set.' + description: 'Optional: mode bits used to set + permissions on created files by default. Must + be an octal value between 0000 and 0777 or + a decimal value between 0 and 511. YAML accepts + both octal and decimal values, JSON requires + decimal values for mode bits. Defaults to + 0644. Directories within the path are not + affected by this setting. This might be in + conflict with other options that affect the + file mode, like fsGroup, and the result can + be other mode bits set.' format: int32 type: integer items: @@ -6213,12 +6597,16 @@ spec: description: The key to project. type: string mode: - description: 'Optional: mode bits to use - on this file, must be a value between - 0 and 0777. If not specified, the volume - defaultMode will be used. This might - be in conflict with other options that - affect the file mode, like fsGroup, + description: 'Optional: mode bits used + to set permissions on this file. Must + be an octal value between 0000 and 0777 + or a decimal value between 0 and 511. + YAML accepts both octal and decimal + values, JSON requires decimal values + for mode bits. If not specified, the + volume defaultMode will be used. This + might be in conflict with other options + that affect the file mode, like fsGroup, and the result can be other mode bits set.' format: int32 @@ -6364,8 +6752,13 @@ spec: properties: authenticationRef: description: ScaledObjectAuthRef points to the TriggerAuthentication - object that is used to authenticate the scaler with the environment + or ClusterTriggerAuthentication object that is used to authenticate + the scaler with the environment properties: + kind: + description: Kind of the resource being referred to. Defaults + to TriggerAuthentication. + type: string name: type: string required: diff --git a/keda/crds/scaledobjects.keda.sh.yaml b/keda/crds/scaledobjects.keda.sh.yaml index e82da5e7..8677fa3e 100644 --- a/keda/crds/scaledobjects.keda.sh.yaml +++ b/keda/crds/scaledobjects.keda.sh.yaml @@ -23,6 +23,12 @@ spec: - jsonPath: .spec.scaleTargetRef.name name: ScaleTargetName type: string + - jsonPath: .spec.minReplicaCount + name: Min + type: integer + - jsonPath: .spec.maxReplicaCount + name: Max + type: integer - jsonPath: .spec.triggers[*].type name: Triggers type: string @@ -185,63 +191,6 @@ spec: type: integer type: object type: object - resourceMetrics: - items: - description: ResourceMetricSource indicates how to scale - on a resource metric known to Kubernetes, as specified - in requests and limits, describing each pod in the current - scale target (e.g. CPU or memory). The values will be - averaged together before being compared to the target. Such - metrics are built in to Kubernetes, and have special scaling - options on top of those available to normal per-pod metrics - using the "pods" source. Only one "target" type should - be set. - properties: - name: - description: name is the name of the resource in question. - type: string - target: - description: target specifies the target value for the - given metric - properties: - averageUtilization: - description: averageUtilization is the target value - of the average of the resource metric across all - relevant pods, represented as a percentage of - the requested value of the resource for the pods. - Currently only valid for Resource metric source - type - format: int32 - type: integer - averageValue: - anyOf: - - type: integer - - type: string - description: averageValue is the target value of - the average of the metric across all relevant - pods (as a quantity) - pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ - x-kubernetes-int-or-string: true - type: - description: type represents whether the metric - type is Utilization, Value, or AverageValue - type: string - value: - anyOf: - - type: integer - - type: string - description: value is the target value of the metric - (as a quantity). - pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ - x-kubernetes-int-or-string: true - required: - - type - type: object - required: - - name - - target - type: object - type: array type: object restoreToOriginalReplicaCount: type: boolean @@ -279,8 +228,13 @@ spec: properties: authenticationRef: description: ScaledObjectAuthRef points to the TriggerAuthentication - object that is used to authenticate the scaler with the environment + or ClusterTriggerAuthentication object that is used to authenticate + the scaler with the environment properties: + kind: + description: Kind of the resource being referred to. Defaults + to TriggerAuthentication. + type: string name: type: string required: @@ -340,6 +294,10 @@ spec: originalReplicaCount: format: int32 type: integer + resourceMetricNames: + items: + type: string + type: array scaleTargetGVKR: description: GroupVersionKindResource provides unified structure for schema.GroupVersionKind and Resource @@ -373,4 +331,4 @@ status: kind: "" plural: "" conditions: [] - storedVersions: [] + storedVersions: [] \ No newline at end of file diff --git a/keda/crds/triggerauthentications.keda.sh.yaml b/keda/crds/triggerauthentications.keda.sh.yaml index 699d7ab3..e11ef72f 100644 --- a/keda/crds/triggerauthentications.keda.sh.yaml +++ b/keda/crds/triggerauthentications.keda.sh.yaml @@ -147,4 +147,4 @@ status: kind: "" plural: "" conditions: [] - storedVersions: [] + storedVersions: [] \ No newline at end of file