Skip to content

Commit dccd95f

Browse files
authored
Merge branch 'kedacore:main' into main
2 parents 1c4814a + 720ae0e commit dccd95f

File tree

2,058 files changed

+88483
-103967
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

2,058 files changed

+88483
-103967
lines changed

.devcontainer/Dockerfile

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
# Licensed under the MIT License. See https://go.microsoft.com/fwlink/?linkid=2090316 for license information.
44
#-------------------------------------------------------------------------------------------------------------
55

6-
FROM golang:1.23.7
6+
FROM golang:1.23.8
77

88
# Avoid warnings by switching to noninteractive
99
ENV DEBIAN_FRONTEND=noninteractive

.github/ISSUE_TEMPLATE/3_bug_report.yml

+2-7
Original file line numberDiff line numberDiff line change
@@ -57,17 +57,12 @@ body:
5757
label: KEDA Version
5858
description: What version of KEDA that are you running?
5959
options:
60+
- "2.17.0"
6061
- "2.16.1"
6162
- "2.16.0"
6263
- "2.15.1"
6364
- "2.15.0"
64-
- "2.14.1"
65-
- "2.14.0"
66-
- "2.13.1"
67-
- "2.13.0"
68-
- "2.12.1"
69-
- "2.12.0"
70-
- "< 2.12.0"
65+
- "< 2.15.0"
7166
- "Other"
7267
validations:
7368
required: false

.github/workflows/fossa.yml

+3-3
Original file line numberDiff line numberDiff line change
@@ -27,13 +27,13 @@ jobs:
2727
- run: go version
2828
- name: Get branch name
2929
id: branch-name
30-
uses: tj-actions/branch-names@6871f53176ad61624f978536bbf089c574dc19a2 # v8.0.1
31-
- uses: fossas/fossa-action@09bcf127dc0ccb4b5a023f6f906728878e8610ba # v1.4.0
30+
uses: tj-actions/branch-names@f44339b51f74753b57583fbbd124e18a81170ab1 # v8.1.0
31+
- uses: fossas/fossa-action@c0a7d013f84c8ee5e910593186598625513cc1e4 # v1.6.0
3232
name: Scanning with FOSSA
3333
with:
3434
api-key: ${{ env.fossa-key }}
3535
branch: ${{ steps.branch-name.outputs.current_branch }}
36-
- uses: fossas/fossa-action@09bcf127dc0ccb4b5a023f6f906728878e8610ba # v1.4.0
36+
- uses: fossas/fossa-action@c0a7d013f84c8ee5e910593186598625513cc1e4 # v1.6.0
3737
name: Executing tests with FOSSA
3838
with:
3939
api-key: ${{ env.fossa-key }}

.github/workflows/main-build.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ jobs:
1616
id-token: write # needed for signing the images with GitHub OIDC Token **not production ready**
1717

1818
# keda-tools is built from github.com/test-tools/tools/Dockerfile
19-
container: ghcr.io/kedacore/keda-tools:1.23.7
19+
container: ghcr.io/kedacore/keda-tools:1.23.8
2020
steps:
2121
- name: Check out code
2222
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4
@@ -50,7 +50,7 @@ jobs:
5050
run: make test
5151

5252
- name: Login to GitHub Container Registry
53-
uses: docker/login-action@9780b0c442fbb1117ed29e0efdff1e18412f7567 # v3.3.0
53+
uses: docker/login-action@74a5d142397b4f367a81961eba4e8cd7edddf772 # v3.4.0
5454
with:
5555
# Username used to log in to a Docker registry. If not set then no login will occur
5656
username: ${{ github.repository_owner }}

.github/workflows/pr-e2e.yml

+4-4
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ jobs:
1010
triage:
1111
runs-on: ubuntu-latest
1212
name: Comment evaluate
13-
container: ghcr.io/kedacore/keda-tools:1.23.7
13+
container: ghcr.io/kedacore/keda-tools:1.23.8
1414
outputs:
1515
run-e2e: ${{ startsWith(github.event.comment.body,'/run-e2e') && steps.checkUserMember.outputs.isTeamMember == 'true' }}
1616
pr_num: ${{ steps.parser.outputs.pr_num }}
@@ -69,7 +69,7 @@ jobs:
6969
needs: triage
7070
runs-on: ubuntu-latest
7171
name: Build images
72-
container: ghcr.io/kedacore/keda-tools:1.23.7
72+
container: ghcr.io/kedacore/keda-tools:1.23.8
7373
if: needs.triage.outputs.run-e2e == 'true'
7474
steps:
7575
- name: Set status in-progress
@@ -131,7 +131,7 @@ jobs:
131131
run: exit 1
132132

133133
- name: Login to GitHub Container Registry
134-
uses: docker/login-action@9780b0c442fbb1117ed29e0efdff1e18412f7567 # v3.3.0
134+
uses: docker/login-action@74a5d142397b4f367a81961eba4e8cd7edddf772 # v3.4.0
135135
with:
136136
# Username used to log in to a Docker registry. If not set then no login will occur
137137
username: ${{ github.repository_owner }}
@@ -149,7 +149,7 @@ jobs:
149149
needs: [triage, build-test-images]
150150
runs-on: e2e
151151
name: Execute e2e tests
152-
container: ghcr.io/kedacore/keda-tools:1.23.7
152+
container: ghcr.io/kedacore/keda-tools:1.23.8
153153
if: needs.triage.outputs.run-e2e == 'true'
154154
steps:
155155
- name: Set status in-progress

.github/workflows/pr-validation.yml

+3-3
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ jobs:
1010
validate:
1111
name: validate - ${{ matrix.name }}
1212
runs-on: ${{ matrix.runner }}
13-
container: ghcr.io/kedacore/keda-tools:1.23.7
13+
container: ghcr.io/kedacore/keda-tools:1.23.8
1414
strategy:
1515
matrix:
1616
include:
@@ -80,7 +80,7 @@ jobs:
8080
pull-requests: read # for dorny/paths-filter to read pull requests
8181
name: validate-dockerfiles - ${{ matrix.name }}
8282
runs-on: ${{ matrix.runner }}
83-
container: ghcr.io/kedacore/keda-tools:1.23.7
83+
container: ghcr.io/kedacore/keda-tools:1.23.8
8484
strategy:
8585
matrix:
8686
include:
@@ -114,7 +114,7 @@ jobs:
114114
pull-requests: read # for dorny/paths-filter to read pull requests
115115
name: Validate dev-container - ${{ matrix.name }}
116116
runs-on: ${{ matrix.runner }}
117-
container: ghcr.io/kedacore/keda-tools:1.23.7
117+
container: ghcr.io/kedacore/keda-tools:1.23.8
118118
strategy:
119119
matrix:
120120
include:

.github/workflows/release-build.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ jobs:
1717
id-token: write # needed for signing the images with GitHub OIDC Token **not production ready**
1818

1919
# keda-tools is built from github.com/test-tools/tools/Dockerfile
20-
container: ghcr.io/kedacore/keda-tools:1.23.7
20+
container: ghcr.io/kedacore/keda-tools:1.23.8
2121
steps:
2222
- name: Check out code
2323
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4
@@ -48,7 +48,7 @@ jobs:
4848
run: go mod tidy -compat=1.23
4949

5050
- name: Login to GitHub Container Registry
51-
uses: docker/login-action@9780b0c442fbb1117ed29e0efdff1e18412f7567 # v3.3.0
51+
uses: docker/login-action@74a5d142397b4f367a81961eba4e8cd7edddf772 # v3.4.0
5252
with:
5353
# Username used to log in to a Docker registry. If not set then no login will occur
5454
username: ${{ github.repository_owner }}

.github/workflows/scorecards.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,6 @@ jobs:
6464
# Upload the results to GitHub's code scanning dashboard (optional).
6565
# Commenting out will disable upload of results to your repo's Code Scanning dashboard
6666
- name: "Upload to code-scanning"
67-
uses: github/codeql-action/upload-sarif@1b1aada464948af03b950897e5eb522f92603cc2 # v3.24.9
67+
uses: github/codeql-action/upload-sarif@1b549b9259bda1cb5ddde3b41741a82a2d15a841 # v3.28.13
6868
with:
6969
sarif_file: results.sarif

.github/workflows/static-analysis-codeql.yml

+4-4
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ jobs:
1717
codeQl:
1818
name: Analyze CodeQL Go
1919
runs-on: ubuntu-latest
20-
container: ghcr.io/kedacore/keda-tools:1.23.7
20+
container: ghcr.io/kedacore/keda-tools:1.23.8
2121
if: (github.actor != 'dependabot[bot]')
2222
steps:
2323
- name: Checkout repository
@@ -26,16 +26,16 @@ jobs:
2626
run: git config --global --add safe.directory "$GITHUB_WORKSPACE"
2727

2828
- name: Initialize CodeQL
29-
uses: github/codeql-action/init@df409f7d9260372bd5f19e5b04e83cb3c43714ae # v3.27.9
29+
uses: github/codeql-action/init@@1b549b9259bda1cb5ddde3b41741a82a2d15a841 # v3.28.13
3030
with:
3131
languages: go
3232
# Details on CodeQL's query packs refer to : https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#using-queries-in-ql-packs
3333
queries: +security-and-quality
3434

3535
- name: Autobuild
36-
uses: github/codeql-action/autobuild@df409f7d9260372bd5f19e5b04e83cb3c43714ae # v3.27.9
36+
uses: github/codeql-action/autobuild@@1b549b9259bda1cb5ddde3b41741a82a2d15a841 # v3.28.13
3737

3838
- name: Perform CodeQL Analysis
39-
uses: github/codeql-action/analyze@df409f7d9260372bd5f19e5b04e83cb3c43714ae # v3.27.9
39+
uses: github/codeql-action/analyze@@1b549b9259bda1cb5ddde3b41741a82a2d15a841 # v3.28.13
4040
with:
4141
category: "/language:go"

.github/workflows/static-analysis-semgrep.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ jobs:
3939
SEMGREP_APP_TOKEN: ${{ secrets.SEMGREP_APP_TOKEN }}
4040

4141
- name: Upload SARIF file for GitHub Advanced Security Dashboard
42-
uses: github/codeql-action/upload-sarif@df409f7d9260372bd5f19e5b04e83cb3c43714ae # v3.27.9
42+
uses: github/codeql-action/upload-sarif@@1b549b9259bda1cb5ddde3b41741a82a2d15a841 # v3.28.13
4343
with:
4444
sarif_file: semgrep.sarif
4545
if: ${{ github.event.number == '' && !cancelled() }}

.github/workflows/template-main-e2e-test.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ jobs:
88
name: Run e2e test
99
runs-on: ARM64
1010
# keda-tools is built from github.com/test-tools/tools/Dockerfile
11-
container: ghcr.io/kedacore/keda-tools:1.23.7
11+
container: ghcr.io/kedacore/keda-tools:1.23.8
1212
concurrency: e2e-tests
1313
steps:
1414
- name: Check out code

.github/workflows/template-trivy-scan.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ jobs:
3939
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4
4040

4141
- name: Run Trivy
42-
uses: aquasecurity/trivy-action@18f2510ee396bbf400402947b394f2dd8c87dbb0 # v0.29.0
42+
uses: aquasecurity/trivy-action@6c175e9c4083a92bbca2f9724c8a5e33bc2d97a5 # v0.30.0
4343
env:
4444
TRIVY_DB_REPOSITORY: ghcr.io/kedacore/trivy-db
4545
with:
@@ -53,7 +53,7 @@ jobs:
5353
trivy-config: trivy.yml
5454

5555
- name: Upload Trivy scan results to GitHub Security tab
56-
uses: github/codeql-action/upload-sarif@df409f7d9260372bd5f19e5b04e83cb3c43714ae # v3.27.9
56+
uses: github/codeql-action/upload-sarif@@1b549b9259bda1cb5ddde3b41741a82a2d15a841 # v3.28.13
5757
if: ${{ inputs.publish }}
5858
with:
5959
sarif_file: ${{ inputs.output }}

CHANGELOG.md

+40-11
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ To learn more about active deprecations, we recommend checking [GitHub Discussio
1616
## History
1717

1818
- [Unreleased](#unreleased)
19+
- [v2.17.0](#v2161)
1920
- [v2.16.1](#v2161)
2021
- [v2.16.0](#v2160)
2122
- [v2.15.1](#v2151)
@@ -57,29 +58,54 @@ To learn more about active deprecations, we recommend checking [GitHub Discussio
5758

5859
## Unreleased
5960

60-
- **General**: Fix the check whether Fallback is enabled when using ScalingModifiers ([#6521](https://github.com/kedacore/keda/pull/6521))
61-
- **General**: Fix waiting to reach `failureThreshold` before fallback ([#6520](https://github.com/kedacore/keda/pull/6520))
62-
- **General**: Introduce new Temporal scaler ([#4724](https://github.com/kedacore/keda/issues/4724))
63-
6461
### New
6562

66-
- **General**: Add Fallback option `behavior` for dynamic fallback calculation ([#6450](https://github.com/kedacore/keda/issues/6450))
67-
- **General**: Add support for time-bound Kubernetes ServiceAccount tokens as a source for TriggerAuthentication ([#6136](https://github.com/kedacore/keda/issues/6136))
68-
- **General**: Enable OpenSSF Scorecard to enhance security practices across the project ([#5913](https://github.com/kedacore/keda/issues/5913))
69-
- **General**: Introduce new NSQ scaler ([#3281](https://github.com/kedacore/keda/issues/3281))
70-
- **General**: Operator flag to control patching of webhook resources certificates ([#6184](https://github.com/kedacore/keda/issues/6184))
71-
- **Azure Pipelines Scaler**: Introduce requireAllDemandsAndIgnoreOthers to match job demands while ignoring extras ([#5579](https://github.com/kedacore/keda/issues/5579))
63+
- TODO ([#XXX](https://github.com/kedacore/keda/issues/XXX))
7264

7365
#### Experimental
7466

75-
Here is an overview of all new **experimental** features:
67+
- TODO ([#XXX](https://github.com/kedacore/keda/issues/XXX))
68+
69+
### Improvements
70+
71+
- TODO ([#XXX](https://github.com/kedacore/keda/issues/XXX))
72+
73+
### Fixes
74+
75+
- TODO ([#XXX](https://github.com/kedacore/keda/issues/XXX))
76+
77+
### Deprecations
78+
79+
You can find all deprecations in [this overview](https://github.com/kedacore/keda/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc+label%3Abreaking-change) and [join the discussion here](https://github.com/kedacore/keda/discussions/categories/deprecations).
80+
81+
New deprecation(s):
82+
83+
- TODO ([#XXX](https://github.com/kedacore/keda/issues/XXX))
84+
85+
### Breaking Changes
86+
87+
- TODO ([#XXX](https://github.com/kedacore/keda/issues/XXX))
88+
89+
### Other
7690

7791
- TODO ([#XXX](https://github.com/kedacore/keda/issues/XXX))
7892

93+
## v2.17.0
94+
95+
### New
96+
97+
- **General**: Add support for time-bound Kubernetes ServiceAccount tokens as a source for TriggerAuthentication ([#6136](https://github.com/kedacore/keda/issues/6136))
98+
- **General**: Introduce new NSQ scaler ([#3281](https://github.com/kedacore/keda/issues/3281))
99+
- **General**: Introduce new Temporal scaler ([#4724](https://github.com/kedacore/keda/issues/4724))
100+
79101
### Improvements
80102

103+
- **General**: Add Fallback option `behavior` for dynamic fallback calculation ([#6450](https://github.com/kedacore/keda/issues/6450))
81104
- **General**: Add SecretKey to AWS SecretsManager TriggerAuthentication to allow parsing JSON / Key/Value Pairs in secrets ([#5940](https://github.com/kedacore/keda/issues/5940))
105+
- **General**: Enable OpenSSF Scorecard to enhance security practices across the project ([#5913](https://github.com/kedacore/keda/issues/5913))
106+
- **General**: Operator flag to control patching of webhook resources certificates ([#6184](https://github.com/kedacore/keda/issues/6184))
82107
- **Azure Log Analytics Scaler**: Add custom HTTP client timeout ([#6607](https://github.com/kedacore/keda/pull/6607))
108+
- **Azure Pipelines Scaler**: Introduce requireAllDemandsAndIgnoreOthers to match job demands while ignoring extras ([#5579](https://github.com/kedacore/keda/issues/5579))
83109
- **Elasticsearch Scaler**: Support IgnoreNullValues at Elasticsearch scaler ([#6599](https://github.com/kedacore/keda/pull/6599))
84110
- **GitHub Scaler**: Add support to use ETag for conditional requests against the Github API ([#6503](https://github.com/kedacore/keda/issues/6503))
85111
- **GitHub Scaler**: Filter workflows via query parameter for improved queue count accuracy ([#6519](https://github.com/kedacore/keda/pull/6519))
@@ -89,6 +115,7 @@ Here is an overview of all new **experimental** features:
89115
- **RabbitMQ Scaler**: Support use of the ‘vhostName’ parameter in the ‘TriggerAuthentication’ resource ([#6369](https://github.com/kedacore/keda/issues/6369))
90116
- **Selenium Grid**: Add trigger param for Node enables managed downloads capability ([#6570](https://github.com/kedacore/keda/pull/6570))
91117
- **Selenium Grid**: Add trigger param to set custom capabilities for matching specific Nodes ([#6536](https://github.com/kedacore/keda/issues/6536))
118+
- **Selenium Grid**: Selenium Grid: Trigger param enableManagedDownloads set as true by default ([#6684](https://github.com/kedacore/keda/pull/6684))
92119

93120
### Fixes
94121

@@ -98,6 +125,8 @@ Here is an overview of all new **experimental** features:
98125
- **General**: Fix CVE-2025-30204 ([#6641](https://github.com/kedacore/keda/pull/6641))
99126
- **General**: Fix event text when deactivation fails ([#6469](https://github.com/kedacore/keda/issues/6469))
100127
- **General**: Fix fallback validation check bug ([#6407](https://github.com/kedacore/keda/pull/6407))
128+
- **General**: Fix the check whether Fallback is enabled when using ScalingModifiers ([#6521](https://github.com/kedacore/keda/pull/6521))
129+
- **General**: Fix waiting to reach `failureThreshold` before fallback ([#6520](https://github.com/kedacore/keda/pull/6520))
101130
- **General**: Make sure the exposed metrics (from KEDA operator) are updated when there is a change to triggers ([#6618](https://github.com/kedacore/keda/pull/6618))
102131
- **General**: Paused ScaledObject count is reported correctly after operator restart ([#6321](https://github.com/kedacore/keda/issues/6321))
103132
- **General**: Reiterate fix (after [#6407](https://github.com/kedacore/keda/pull/6407)) for fallback validation in admission webhook. ([#6538](https://github.com/kedacore/keda/pull/6538))

Dockerfile

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# Build the manager binary
2-
FROM --platform=$BUILDPLATFORM ghcr.io/kedacore/keda-tools:1.23.7 AS builder
2+
FROM --platform=$BUILDPLATFORM ghcr.io/kedacore/keda-tools:1.23.8 AS builder
33

44
ARG BUILD_VERSION=main
55
ARG GIT_COMMIT=HEAD

Dockerfile.adapter

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# Build the adapter binary
2-
FROM --platform=$BUILDPLATFORM ghcr.io/kedacore/keda-tools:1.23.7 AS builder
2+
FROM --platform=$BUILDPLATFORM ghcr.io/kedacore/keda-tools:1.23.8 AS builder
33

44
ARG BUILD_VERSION=main
55
ARG GIT_COMMIT=HEAD

Dockerfile.webhooks

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# Build the manager binary
2-
FROM --platform=$BUILDPLATFORM ghcr.io/kedacore/keda-tools:1.23.7 AS builder
2+
FROM --platform=$BUILDPLATFORM ghcr.io/kedacore/keda-tools:1.23.8 AS builder
33

44
ARG BUILD_VERSION=main
55
ARG GIT_COMMIT=HEAD

ROADMAP.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -14,14 +14,14 @@ Here is an overview of our current release estimations:
1414

1515
| Version | Estimated Release Date |
1616
|:--------|:-----------------------------------------------------|
17-
| v2.17 | Mar 31st, 2025 (rough estimate) |
18-
| v2.18 | TBD (need to resolve https://github.com/kedacore/governance/issues/122) |
17+
| v2.18 | TBD (need to resolve https://github.com/kedacore/governance/issues/122) |
1918
| v2.19 | TBD (need to resolve https://github.com/kedacore/governance/issues/122) |
2019

2120
Here is an overview of our previous releases:
2221

2322
| Version | Release Date | Links |
2423
|:--------|:------------------|:-----------------------------------------------------------------------|
24+
| v2.17 | Apr 7th, 2025 | [Release Notes](https://github.com/kedacore/keda/releases/tag/v2.17.0) |
2525
| v2.16 | Nov 7th, 2024 | [Release Notes](https://github.com/kedacore/keda/releases/tag/v2.16.0) |
2626
| v2.15 | Aug 1st, 2024 | [Release Notes](https://github.com/kedacore/keda/releases/tag/v2.15.0) |
2727
| v2.14 | April 25th, 2024 | [Release Notes](https://github.com/kedacore/keda/releases/tag/v2.14.0) |

apis/keda/v1alpha1/scaledobject_types.go

+2-1
Original file line numberDiff line numberDiff line change
@@ -136,6 +136,7 @@ type ScalingModifiers struct {
136136
// +optional
137137
ActivationTarget string `json:"activationTarget,omitempty"`
138138
// +optional
139+
// +kubebuilder:validation:Enum=AverageValue;Value
139140
MetricType autoscalingv2.MetricTargetType `json:"metricType,omitempty"`
140141
}
141142

@@ -295,7 +296,7 @@ func CheckFallbackValid(scaledObject *ScaledObject) error {
295296
}
296297

297298
if scaledObject.IsUsingModifiers() {
298-
if scaledObject.Spec.Advanced.ScalingModifiers.MetricType != autoscalingv2.AverageValueMetricType {
299+
if scaledObject.Spec.Advanced.ScalingModifiers.MetricType == autoscalingv2.ValueMetricType {
299300
return fmt.Errorf("when using ScalingModifiers, ScaledObject.Spec.Advanced.ScalingModifiers.MetricType must be AverageValue to have fallback enabled")
300301
}
301302
} else {

config/crd/bases/keda.sh_scaledobjects.yaml

+3
Original file line numberDiff line numberDiff line change
@@ -214,6 +214,9 @@ spec:
214214
description: |-
215215
MetricTargetType specifies the type of metric being targeted, and should be either
216216
"Value", "AverageValue", or "Utilization"
217+
enum:
218+
- AverageValue
219+
- Value
217220
type: string
218221
target:
219222
type: string

0 commit comments

Comments
 (0)