Skip to content

Commit bd27b93

Browse files
authored
Merge pull request #183 from joelsmith/kedamain
Prepare release 2.10.1
2 parents 09127f7 + 485471c commit bd27b93

35 files changed

+16648
-720
lines changed

.github/workflows/main-build.yml

+4-4
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ jobs:
1313
packages: write
1414
id-token: write # needed for signing the images with GitHub OIDC Token **not production ready**
1515

16-
container: ghcr.io/kedacore/build-tools:1.18.6
16+
container: ghcr.io/kedacore/build-tools:1.19.7
1717
steps:
1818
- name: Check out code
1919
uses: actions/checkout@v3
@@ -24,7 +24,7 @@ jobs:
2424
- name: Setup Go
2525
uses: actions/setup-go@v3
2626
with:
27-
go-version: 1.18
27+
go-version: 1.19
2828

2929
- name: Go modules cache
3030
uses: actions/cache@v3
@@ -73,7 +73,7 @@ jobs:
7373
- name: Setup Go
7474
uses: actions/setup-go@v3
7575
with:
76-
go-version: 1.18
76+
go-version: 1.19
7777

7878
- name: Login to GitHub Container Registry
7979
uses: docker/login-action@v2
@@ -135,7 +135,7 @@ jobs:
135135
- name: Setup Go
136136
uses: actions/setup-go@v3
137137
with:
138-
go-version: 1.18
138+
go-version: 1.19
139139

140140
- name: Go modules cache
141141
uses: actions/cache@v3

.github/workflows/nightly-tests.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ jobs:
1111
- name: Setup Go
1212
uses: actions/setup-go@v3
1313
with:
14-
go-version: 1.18
14+
go-version: 1.19
1515

1616
- name: Check out code
1717
uses: actions/checkout@v3

.github/workflows/pr-tests.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ jobs:
99
- name: Setup Go
1010
uses: actions/setup-go@v3
1111
with:
12-
go-version: 1.18
12+
go-version: 1.19
1313

1414
- name: Check out code
1515
uses: actions/checkout@v3
@@ -29,7 +29,7 @@ jobs:
2929
- uses: actions/setup-python@v4
3030
- uses: actions/setup-go@v3
3131
with:
32-
go-version: 1.18
32+
go-version: 1.19
3333
- name: Get golangci
3434
run: curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(go env GOPATH)/bin v1.52.2
3535
- uses: pre-commit/action@v3.0.0

.github/workflows/release-build.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ jobs:
1313
packages: write
1414
id-token: write # needed for signing the images with GitHub OIDC Token **not production ready**
1515

16-
container: ghcr.io/kedacore/build-tools:1.18.6
16+
container: ghcr.io/kedacore/build-tools:1.19.7
1717
steps:
1818
- name: Check out code
1919
uses: actions/checkout@v3

.github/workflows/version-diff.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,7 @@ jobs:
8080
id: setup-id
8181
run: |
8282
cd keda/
83-
DIRS=$(ls|tail -2)
83+
DIRS=$(ls | sort --version-sort |tail -2)
8484
dirs=($DIRS)
8585
dir_old_list=$(find ${dirs[0]} -print)
8686
dir_new_list=$(find ${dirs[1]} -print)

Dockerfile

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# Build the manager binary
2-
FROM golang:1.18.8 as builder
2+
FROM ghcr.io/kedacore/build-tools:1.19.7 as builder
33

44
ARG BUILD_VERSION=main
55
ARG GIT_COMMIT=HEAD
@@ -32,6 +32,7 @@ RUN VERSION=${BUILD_VERSION} GIT_COMMIT=${GIT_COMMIT} GIT_VERSION=${GIT_VERSION}
3232
FROM gcr.io/distroless/static:nonroot
3333
WORKDIR /
3434
COPY --from=builder /workspace/resources/keda.yaml /workspace/resources/keda.yaml
35+
COPY --from=builder /workspace/resources/keda-olm-operator.yaml /workspace/resources/keda-olm-operator.yaml
3536
COPY --from=builder /workspace/bin/manager .
3637
# 65532 is numeric for nonroot
3738
USER 65532:65532

Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,7 @@ undeploy: ## Undeploy controller from the K8s cluster specified in ~/.kube/confi
107107

108108
CONTROLLER_GEN = $(shell pwd)/bin/controller-gen
109109
controller-gen: ## Download controller-gen locally if necessary.
110-
$(call go-get-tool,$(CONTROLLER_GEN),sigs.k8s.io/controller-tools/cmd/controller-gen@v0.9.0)
110+
$(call go-get-tool,$(CONTROLLER_GEN),sigs.k8s.io/controller-tools/cmd/controller-gen@v0.10.0)
111111

112112
KUSTOMIZE = $(shell pwd)/bin/kustomize
113113
kustomize: ## Download kustomize locally if necessary.

README.md

+87
Original file line numberDiff line numberDiff line change
@@ -307,6 +307,93 @@ spec:
307307
# cpu: 1000m
308308
# memory: 1000Mi
309309
310+
## KEDA Admission Webhooks related config
311+
admissionWebhooks:
312+
## Logging level for KEDA Admission Webhooks
313+
# allowed values: 'debug', 'info', 'error', or an integer value greater than 0, specified as string
314+
# default value: info
315+
logLevel: info
316+
317+
## Logging format for KEDA Admission Webhooks
318+
# allowed values are json and console
319+
# default value: console
320+
logEncoder: console
321+
322+
## Logging time encoding for KEDA Admission Webhooks
323+
# allowed values are `epoch`, `millis`, `nano`, `iso8601`, `rfc3339` or `rfc3339nano`
324+
# default value: rfc3339
325+
# logTimeEncoding: rfc3339
326+
327+
## Arbitrary arguments
328+
# Define any argument with possibility to override already existing ones.
329+
# Array of strings (format is either with prefix '--key=value' or just 'value')
330+
# args: []
331+
332+
## Annotations to be added to the KEDA Admission Webhooks Deployment
333+
# https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/
334+
# deploymentAnnotations:
335+
# annotationKey: annotationValue
336+
337+
## Labels to be added to the KEDA Admission Webhooks Deployment
338+
# https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
339+
# deploymentLabels:
340+
# labelKey: labelValue
341+
342+
## Annotations to be added to the KEDA Admission Webhooks Pod
343+
# https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/
344+
# podAnnotations:
345+
# annotationKey: annotationValue
346+
347+
## Labels to be added to the KEDA Admission Webhooks Pod
348+
# https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
349+
# podLabels:
350+
# labelKey: labelValue
351+
352+
## Node selector for pod scheduling for KEDA Admission Webhooks
353+
# https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/
354+
# nodeSelector:
355+
# beta.kubernetes.io/os: linux
356+
357+
## Tolerations for pod scheduling for KEDA Admission Webhooks
358+
# https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/
359+
# tolerations:
360+
# - key: "key1"
361+
# operator: "Equal"
362+
# value: "value1"
363+
# effect: "NoSchedule"
364+
# - key: "key1"
365+
# operator: "Equal"
366+
# value: "value1"
367+
# effect: "NoExecute"
368+
369+
## Affinity for pod scheduling for KEDA Admission Webhooks
370+
# https://kubernetes.io/docs/tasks/configure-pod-container/assign-pods-nodes-using-node-affinity/
371+
# affinity:
372+
# podAntiAffinity:
373+
# requiredDuringSchedulingIgnoredDuringExecution:
374+
# - labelSelector:
375+
# matchExpressions:
376+
# - key: app
377+
# operator: In
378+
# values:
379+
# - keda-operator
380+
# - keda-operator-metrics-apiserver
381+
# topologyKey: "kubernetes.io/hostname"
382+
383+
## Pod priority for KEDA Admission Webhooks
384+
# https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/
385+
# priorityClassName: high-priority
386+
387+
## Manage resource requests & limits for KEDA Admission Webhooks
388+
# https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
389+
# resourcesKedaOperator:
390+
# requests:
391+
# cpu: 100m
392+
# memory: 100Mi
393+
# limits:
394+
# cpu: 1000m
395+
# memory: 1000Mi
396+
310397
## KEDA ServiceAccount related config
311398
serviceAccount:
312399
## Annotations to be added to the Service Account

RELEASE-PROCESS.MD RELEASE-PROCESS.md

+8-1
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,13 @@ cp -r keda/2.8.0 keda/2.9.0
2222
## 3. Update KEDA CRDs
2323
Update all KEDA CRDs in the newly (eg. `2.9.0`) created directory, get the up-to-date version from the release file mentioned in [step 1](#1-keda-release-yaml-file).
2424

25+
To update the `keda.sh_kedacontrollers.yaml` CRD, perform the following steps:
26+
27+
```bash
28+
make manifests
29+
cp config/crd/bases/keda.sh_kedacontrollers.yaml keda/2.9.0/manifests/
30+
```
31+
2532
## 4. Update CSV file
2633
Update ClusterServiceVersion file in the newly (eg. `2.9.0`) created directory:
2734
- rename the file to respect the version.
@@ -56,7 +63,7 @@ git push origin release290
5663

5764
## 8. Create KEDA release on GitHub
5865

59-
Creating a new release in the releases page (https://github.com/kedacore/keda/releases) will trigger a GitHub workflow which will create a new image with the latest code and tagged with the next version (in this example 2.9.0).
66+
Creating a new release in the releases page (https://github.com/kedacore/keda-olm-operator/releases) will trigger a GitHub workflow which will create a new image with the latest code and tagged with the next version (in this example 2.9.0).
6067

6168
> Note: The Docker Hub repo with all the different images can be seen here: https://hub.docker.com/r/kedacore/keda-olm-operator/tags
6269

apis/keda/v1alpha1/kedacontroller_types.go

+32
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,9 @@ type KedaControllerSpec struct {
4444
// +optional
4545
MetricsServer KedaMetricsServerSpec `json:"metricsServer"`
4646

47+
// +optional
48+
AdmissionWebhooks KedaAdmissionWebhooksSpec `json:"admissionWebhooks"`
49+
4750
// +optional
4851
ServiceAccount KedaServiceAccountSpec `json:"serviceAccount"`
4952

@@ -114,6 +117,35 @@ type KedaMetricsServerSpec struct {
114117
Args []string `json:"args,omitempty"`
115118
}
116119

120+
type KedaAdmissionWebhooksSpec struct {
121+
122+
// Logging level for Admission Webhooks
123+
// allowed values: 'debug', 'info', 'error', or an integer value greater than 0, specified as string
124+
// default value: info
125+
// +optional
126+
LogLevel string `json:"logLevel,omitempty"`
127+
128+
// Logging format for Admission Webhooks
129+
// allowed values are 'json' and 'console'
130+
// default value: console
131+
// +optional
132+
LogEncoder string `json:"logEncoder,omitempty"`
133+
134+
// Logging time encoding for Admission Webhooks
135+
// allowed values are 'epoch', 'millis', 'nano', 'iso8601', 'rfc3339' or 'rfc3339nano'
136+
// default value: rfc3339
137+
// +optional
138+
LogTimeEncoding string `json:"logTimeEncoding,omitempty"`
139+
140+
GenericDeploymentSpec `json:",inline"`
141+
142+
// Any user-defined arguments with possibility to override any existing or
143+
// previously defined arguments. Allowed formats are '--argument=value',
144+
// 'argument=value' or just 'value'. Ex.: '--v=0' or 'ENV_ARGUMENT'
145+
// +optional
146+
Args []string `json:"args,omitempty"`
147+
}
148+
117149
type GenericDeploymentSpec struct {
118150

119151
// Annotations applied to the Deployment

apis/keda/v1alpha1/zz_generated.deepcopy.go

+22
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

bundle.Dockerfile

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ LABEL operators.operatorframework.io.bundle.metadata.v1=metadata/
77
LABEL operators.operatorframework.io.bundle.package.v1=keda
88
LABEL operators.operatorframework.io.bundle.channels.v1=alpha
99
LABEL operators.operatorframework.io.bundle.channel.default.v1=alpha
10-
LABEL operators.operatorframework.io.metrics.builder=operator-sdk-v1.23.0
10+
LABEL operators.operatorframework.io.metrics.builder=operator-sdk-v1.28.0+git
1111
LABEL operators.operatorframework.io.metrics.mediatype.v1=metrics+v1
1212
LABEL operators.operatorframework.io.metrics.project_layout=go.kubebuilder.io/v3
1313

0 commit comments

Comments
 (0)