Skip to content

Commit bb2ca96

Browse files
author
Tim Eckhardt
committed
Merge branch 'main' into rbac-cleanup
2 parents bd2eedf + b7d6f9d commit bb2ca96

File tree

316 files changed

+22169
-3689
lines changed

Some content is hidden

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

316 files changed

+22169
-3689
lines changed

.asf.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ github:
2020
release-1.7: {}
2121
release-1.8: {}
2222
release-1.9: {}
23+
release-1.10: {}
2324

2425
notifications:
2526

.github/workflows/ci.yml

Lines changed: 112 additions & 122 deletions
Original file line numberDiff line numberDiff line change
@@ -23,28 +23,29 @@
2323
name: Flink Kubernetes Operator CI
2424
on:
2525
push:
26+
branches:
27+
- main
28+
- release-*
2629
pull_request:
30+
concurrency:
31+
group: ${{ github.workflow }}-${{ github.event.workflow_run.head_branch }}
32+
cancel-in-progress: true
33+
2734
jobs:
2835
test_ci:
2936
runs-on: ubuntu-latest
30-
name: test_ci
37+
name: maven build
3138
strategy:
3239
matrix:
3340
java-version: [ 11, 17, 21 ]
3441
steps:
35-
- uses: actions/checkout@v2
42+
- uses: actions/checkout@v4
3643
- name: Set up JDK ${{ matrix.java-version }}
37-
uses: actions/setup-java@v2
44+
uses: actions/setup-java@v4
3845
with:
3946
java-version: ${{ matrix.java-version }}
40-
distribution: 'adopt'
41-
- name: Cache local Maven repository
42-
uses: actions/cache@v3
43-
with:
44-
path: ~/.m2/repository
45-
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
46-
restore-keys: |
47-
${{ runner.os }}-maven-
47+
distribution: 'temurin'
48+
cache: 'maven'
4849
- name: Build with Maven
4950
run: |
5051
mvn -B clean install javadoc:javadoc -Pgenerate-docs
@@ -70,135 +71,124 @@ jobs:
7071
cd flink-autoscaler-plugin-jdbc
7172
mvn -B verify -Dit.skip=false
7273
cd ..
74+
e2e_smoke_test:
75+
name: Smoke test
76+
strategy:
77+
matrix:
78+
http-client: [ "okhttp", "jdk", "jetty", "vertx" ]
79+
java-version: [ "11", "17", "21" ]
80+
uses: ./.github/workflows/e2e.yaml
81+
with:
82+
java-version: ${{ matrix.java-version }}
83+
flink-version: "v1_20"
84+
http-client: ${{ matrix.http-client }}
85+
test: test_application_operations.sh
86+
java_runtimes:
87+
name: Java runtimes smoke test
88+
needs: e2e_smoke_test
89+
strategy:
90+
matrix:
91+
http-client: [ "okhttp" ]
92+
java-version: [ "11", "17"]
93+
flink-version:
94+
- "v2_0"
95+
- "v1_20"
96+
- "v1_19"
97+
- "v1_18"
98+
uses: ./.github/workflows/e2e.yaml
99+
with:
100+
java-version: ${{ matrix.java-version }}
101+
flink-version: ${{ matrix.flink-version }}
102+
http-client: ${{ matrix.http-client }}
103+
test: test_application_operations.sh
104+
append-java-version: true
105+
e2e_namespace_tests:
106+
name: Alternative namespace tests
107+
needs: e2e_smoke_test
108+
strategy:
109+
matrix:
110+
flink-version:
111+
- "v2_0"
112+
- "v1_20"
113+
- "v1_19"
114+
- "v1_18"
115+
- "v1_17"
116+
mode:
117+
- "native"
118+
- "standalone"
119+
test:
120+
- test_application_operations.sh
121+
- test_multi_sessionjob.sh
122+
- test_autoscaler.sh
123+
- test_dynamic_config.sh
124+
exclude:
125+
- mode: standalone
126+
test: test_autoscaler.sh
127+
- mode: standalone
128+
test: test_dynamic_config.sh
129+
- flink-version: v1_16
130+
test: test_autoscaler.sh
131+
- flink-version: v1_16
132+
test: test_dynamic_config.sh
133+
134+
uses: ./.github/workflows/e2e.yaml
135+
with:
136+
java-version: 11
137+
flink-version: ${{ matrix.flink-version }}
138+
test: ${{ matrix.test }}
139+
namespace: "flink"
140+
create-namespace: true
141+
mode: ${{ matrix.mode }}
73142
e2e_ci:
74-
runs-on: ubuntu-latest
143+
needs: e2e_smoke_test
75144
strategy:
76145
matrix:
77-
version: ["v1_19","v1_18","v1_17","v1_16","v1_15"]
78-
namespace: ["default","flink"]
79-
mode: ["native", "standalone"]
80-
java-version: [ 11, 17, 21 ]
146+
flink-version:
147+
- "v2_0"
148+
- "v1_20"
149+
- "v1_18"
150+
- "v1_19"
151+
- "v1_17"
152+
mode:
153+
- "native"
154+
- "standalone"
81155
test:
82156
- test_application_kubernetes_ha.sh
83157
- test_application_operations.sh
84158
- test_dynamic_config.sh
85159
- test_sessionjob_kubernetes_ha.sh
86160
- test_sessionjob_operations.sh
87-
- test_multi_sessionjob.sh
88161
- test_autoscaler.sh
89162
- test_flink_operator_ha.sh
90-
include:
91-
- namespace: flink
92-
extraArgs: '--create-namespace --set "watchNamespaces={default,flink}"'
93-
- version: v1_19
94-
image: flink:1.19
95-
- version: v1_18
96-
image: flink:1.18
97-
- version: v1_17
98-
image: flink:1.17
99-
- version: v1_16
100-
image: flink:1.16
101-
- version: v1_15
102-
image: flink:1.15
163+
- test_snapshot.sh
103164
exclude:
104-
- namespace: default
105-
test: test_multi_sessionjob.sh
106-
- namespace: default
107-
test: test_autoscaler.sh
108-
- namespace: default
109-
test: test_dynamic_config.sh
110-
- mode: standalone
165+
- flink-version: v1_16
111166
test: test_autoscaler.sh
112167
- mode: standalone
113-
test: test_dynamic_config.sh
114-
- version: v1_15
115168
test: test_autoscaler.sh
116-
- version: v1_15
169+
- flink-version: v1_16
117170
test: test_dynamic_config.sh
118-
- version: v1_15
171+
- flink-version: v1_16
119172
test: test_flink_operator_ha.sh
120-
- version: v1_16
121-
test: test_autoscaler.sh
122-
- version: v1_16
123-
test: test_dynamic_config.sh
124-
- version: v1_16
125-
test: test_flink_operator_ha.sh
126-
- version: v1_17
173+
- flink-version: v1_16
174+
test: test_snapshot.sh
175+
- flink-version: v1_17
127176
test: test_dynamic_config.sh
128-
- version: v1_17
177+
- flink-version: v1_17
129178
test: test_flink_operator_ha.sh
130-
- version: v1_18
179+
- flink-version: v1_17
180+
test: test_snapshot.sh
181+
- flink-version: v1_18
131182
test: test_dynamic_config.sh
132-
- version: v1_18
183+
- flink-version: v1_18
133184
test: test_flink_operator_ha.sh
134-
- version: v1_15
135-
java-version: 17
136-
- version: v1_16
137-
java-version: 17
138-
- version: v1_17
139-
java-version: 17
140-
- version: v1_15
141-
java-version: 21
142-
- version: v1_16
143-
java-version: 21
144-
- version: v1_17
145-
java-version: 21
146-
- version: v1_18
147-
java-version: 21
148-
name: e2e_ci
149-
steps:
150-
- uses: actions/checkout@v2
151-
- name: Set up JDK ${{ matrix.java-version }}
152-
uses: actions/setup-java@v2
153-
with:
154-
java-version: ${{ matrix.java-version }}
155-
distribution: 'adopt'
156-
- name: Cache local Maven repository
157-
uses: actions/cache@v3
158-
with:
159-
path: ~/.m2/repository
160-
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
161-
restore-keys: |
162-
${{ runner.os }}-maven-
163-
- name: Start minikube
164-
run: |
165-
source e2e-tests/utils.sh
166-
start_minikube
167-
- name: Install cert-manager
168-
run: |
169-
kubectl get pods -A
170-
kubectl apply -f https://github.com/jetstack/cert-manager/releases/download/v1.8.2/cert-manager.yaml
171-
kubectl -n cert-manager wait --all=true --for=condition=Available --timeout=300s deploy
172-
- name: Build image
173-
run: |
174-
export SHELL=/bin/bash
175-
export DOCKER_BUILDKIT=1
176-
eval $(minikube -p minikube docker-env)
177-
docker build --progress=plain --no-cache -f ./Dockerfile -t flink-kubernetes-operator:ci-latest --progress plain .
178-
docker images
179-
- name: Start the operator
180-
run: |
181-
if [[ "${{ matrix.test }}" == "test_flink_operator_ha.sh" ]]; then
182-
sed -i "s/# kubernetes.operator.leader-election.enabled: false/kubernetes.operator.leader-election.enabled: true/" helm/flink-kubernetes-operator/conf/flink-conf.yaml
183-
sed -i "s/# kubernetes.operator.leader-election.lease-name: flink-operator-lease/kubernetes.operator.leader-election.lease-name: flink-operator-lease/" helm/flink-kubernetes-operator/conf/flink-conf.yaml
184-
sed -i "s/replicas: 1/replicas: 2/" helm/flink-kubernetes-operator/values.yaml
185-
fi
186-
helm --debug install flink-kubernetes-operator -n ${{ matrix.namespace }} helm/flink-kubernetes-operator --set image.repository=flink-kubernetes-operator --set image.tag=ci-latest ${{ matrix.extraArgs }}
187-
kubectl wait --for=condition=Available --timeout=120s -n ${{ matrix.namespace }} deploy/flink-kubernetes-operator
188-
kubectl get pods -n ${{ matrix.namespace }}
189-
- name: Run Flink e2e tests
190-
run: |
191-
sed -i "s/image: flink:.*/image: ${{ matrix.image }}/" e2e-tests/data/*.yaml
192-
sed -i "s/flinkVersion: .*/flinkVersion: ${{ matrix.version }}/" e2e-tests/data/*.yaml
193-
sed -i "s/mode: .*/mode: ${{ matrix.mode }}/" e2e-tests/data/*.yaml
194-
git diff HEAD
195-
echo "Running e2e-tests/$test"
196-
bash e2e-tests/${{ matrix.test }} || exit 1
197-
git reset --hard
198-
- name: Stop the operator
199-
run: |
200-
helm uninstall -n ${{ matrix.namespace }} flink-kubernetes-operator
201-
- name: Stop minikube
202-
run: |
203-
source e2e-tests/utils.sh
204-
stop_minikube
185+
- flink-version: v1_18
186+
test: test_snapshot.sh
187+
- flink-version: v1_19
188+
test: test_snapshot.sh
189+
uses: ./.github/workflows/e2e.yaml
190+
with:
191+
java-version: 11
192+
flink-version: ${{ matrix.flink-version }}
193+
test: ${{ matrix.test }}
194+
mode: ${{ matrix.mode }}

.github/workflows/docker_push.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -37,27 +37,27 @@ jobs:
3737
contents: read
3838
steps:
3939
- name: Check out the repo
40-
uses: actions/checkout@v2
40+
uses: actions/checkout@v4
4141

4242
- name: Set up QEMU
43-
uses: docker/setup-qemu-action@v1
43+
uses: docker/setup-qemu-action@v3
4444
with:
4545
image: tonistiigi/binfmt:latest
4646
platforms: all
4747

4848
- name: Set up Docker Buildx
49-
uses: docker/setup-buildx-action@v1
49+
uses: docker/setup-buildx-action@v3
5050

5151
- name: Log in to the Container registry
52-
uses: docker/login-action@v1
52+
uses: docker/login-action@v3
5353
with:
5454
registry: ghcr.io
5555
username: ${{ github.actor }}
5656
password: ${{ secrets.GITHUB_TOKEN }}
5757

5858
- name: Extract metadata (tags, labels) for Docker
5959
id: meta
60-
uses: docker/metadata-action@v3
60+
uses: docker/metadata-action@v5
6161
with:
6262
images: |
6363
ghcr.io/${{ github.repository }}
@@ -68,7 +68,7 @@ jobs:
6868
type=semver,pattern={{major}}.{{minor}}
6969
7070
- name: Build and push Docker images (supported platforms)
71-
uses: docker/bake-action@v1.7.0
71+
uses: docker/bake-action@v5
7272
with:
7373
files: |
7474
.github/workflows/docker-bake.hcl

.github/workflows/docs.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,8 @@ jobs:
2828
matrix:
2929
branch:
3030
- main
31-
- release-1.8
3231
- release-1.9
32+
- release-1.10
3333
steps:
3434
- uses: actions/checkout@v3
3535
with:
@@ -41,8 +41,8 @@ jobs:
4141
echo "flink_branch=${currentBranch}"
4242
echo "flink_branch=${currentBranch}" >> ${GITHUB_ENV}
4343
if [ "${currentBranch}" = "main" ]; then
44-
echo "flink_alias=release-1.10" >> ${GITHUB_ENV}
45-
elif [ "${currentBranch}" = "release-1.9" ]; then
44+
echo "flink_alias=release-1.11" >> ${GITHUB_ENV}
45+
elif [ "${currentBranch}" = "release-1.10" ]; then
4646
echo "flink_alias=stable" >> ${GITHUB_ENV}
4747
else
4848
echo "flink_alias=${currentBranch}" >> ${GITHUB_ENV}

0 commit comments

Comments
 (0)