Skip to content

Commit 1cc196d

Browse files
committed
[FlINK-36392] Split out a smoke test job
1 parent 44d6f13 commit 1cc196d

File tree

1 file changed

+51
-4
lines changed

1 file changed

+51
-4
lines changed

.github/workflows/ci.yml

Lines changed: 51 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -76,10 +76,57 @@ jobs:
7676
java-version: ["21"]
7777
test:
7878
- test_application_operations.sh
79-
# - HTTP_CLIENT=${{ matrix.http-client }}
80-
# - docker build --progress=plain --no-cache -f ./Dockerfile -t flink-kubernetes-operator:ci-${{ matrix.http-client }}-latest --progress plain --build-arg HTTP_CLIENT="${HTTP_CLIENT:-okhttp}" .
81-
82-
79+
steps:
80+
- uses: actions/checkout@v4
81+
- name: Set up JDK ${{ matrix.java-version }}
82+
uses: actions/setup-java@v4
83+
with:
84+
java-version: ${{ matrix.java-version }}
85+
distribution: 'temurin'
86+
cache: 'maven'
87+
- name: Start minikube
88+
run: |
89+
source e2e-tests/utils.sh
90+
start_minikube
91+
- name: Install cert-manager
92+
run: |
93+
kubectl get pods -A
94+
kubectl apply -f https://github.com/jetstack/cert-manager/releases/download/v1.8.2/cert-manager.yaml
95+
kubectl -n cert-manager wait --all=true --for=condition=Available --timeout=300s deploy
96+
- name: Build image
97+
run: |
98+
export SHELL=/bin/bash
99+
export DOCKER_BUILDKIT=1
100+
eval $(minikube -p minikube docker-env)
101+
HTTP_CLIENT=${{ matrix.http-client }}
102+
docker build --progress=plain --no-cache -f ./Dockerfile -t flink-kubernetes-operator:ci-latest --progress plain --build-arg HTTP_CLIENT="${HTTP_CLIENT:-okhttp}" .
103+
docker images
104+
- name: Start the operator
105+
run: |
106+
if [[ "${{ matrix.test }}" == "test_flink_operator_ha.sh" ]]; then
107+
sed -i "s/# kubernetes.operator.leader-election.enabled: false/kubernetes.operator.leader-election.enabled: true/" helm/flink-kubernetes-operator/conf/flink-conf.yaml
108+
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
109+
sed -i "s/replicas: 1/replicas: 2/" helm/flink-kubernetes-operator/values.yaml
110+
fi
111+
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 }}
112+
kubectl wait --for=condition=Available --timeout=120s -n ${{ matrix.namespace }} deploy/flink-kubernetes-operator
113+
kubectl get pods -n ${{ matrix.namespace }}
114+
- name: Run Flink e2e tests
115+
run: |
116+
sed -i "s/image: flink:.*/image: ${{ matrix.image }}/" e2e-tests/data/*.yaml
117+
sed -i "s/flinkVersion: .*/flinkVersion: ${{ matrix.version }}/" e2e-tests/data/*.yaml
118+
sed -i "s/mode: .*/mode: ${{ matrix.mode }}/" e2e-tests/data/*.yaml
119+
git diff HEAD
120+
echo "Running e2e-tests/$test"
121+
bash e2e-tests/${{ matrix.test }} || exit 1
122+
git reset --hard
123+
- name: Stop the operator
124+
run: |
125+
helm uninstall -n ${{ matrix.namespace }} flink-kubernetes-operator
126+
- name: Stop minikube
127+
run: |
128+
source e2e-tests/utils.sh
129+
stop_minikube
83130
e2e_ci:
84131
runs-on: ubuntu-latest
85132
strategy:

0 commit comments

Comments
 (0)