Skip to content

Commit 072992f

Browse files
committed
[FLINK-17857][e2e] Fix Kubernetes e2e tests on Mac OS
1 parent 2075d5b commit 072992f

File tree

5 files changed

+17
-4
lines changed

5 files changed

+17
-4
lines changed

flink-end-to-end-tests/test-scripts/common_docker.sh

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ function containers_health_check() {
3535

3636
function build_image() {
3737
local image_name=${1:-flink-job}
38+
local file_server_address=${2:-localhost}
3839

3940
echo "Starting fileserver for Flink distribution"
4041
pushd ${FLINK_DIR}/..
@@ -47,7 +48,7 @@ function build_image() {
4748
echo "Preparing Dockeriles"
4849
git clone https://github.com/apache/flink-docker.git --branch dev-master --single-branch
4950
cd flink-docker
50-
./add-custom.sh -u localhost:9999/flink.tgz -n ${image_name}
51+
./add-custom.sh -u ${file_server_address}:9999/flink.tgz -n ${image_name}
5152

5253
echo "Building images"
5354
docker build --no-cache --network="host" -t ${image_name} dev/${image_name}-debian

flink-end-to-end-tests/test-scripts/common_kubernetes.sh

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,9 @@ function start_kubernetes {
9494
echo "$NON_LINUX_ENV_NOTE"
9595
exit 1
9696
fi
97+
# Mount Flink dist into minikube virtual machine because we need to mount hostPath as usrlib
98+
minikube mount $FLINK_DIR:$FLINK_DIR &
99+
export minikube_mount_pid=$!
97100
else
98101
setup_kubernetes_for_linux
99102
if ! retry_times ${MINIKUBE_START_RETRIES} ${MINIKUBE_START_BACKOFF} start_kubernetes_if_not_running; then
@@ -107,6 +110,7 @@ function start_kubernetes {
107110
function stop_kubernetes {
108111
if [[ "${OS_TYPE}" != "linux" ]]; then
109112
echo "$NON_LINUX_ENV_NOTE"
113+
kill $minikube_mount_pid 2> /dev/null
110114
else
111115
echo "Stopping minikube ..."
112116
stop_command="sudo minikube stop"
@@ -175,4 +179,12 @@ appender.console.layout.pattern = %d{yyyy-MM-dd HH:mm:ss,SSS} %-5p [%t] %-60c %x
175179
END
176180
}
177181

182+
function get_host_machine_address {
183+
if [[ "${OS_TYPE}" != "linux" ]]; then
184+
echo $(minikube ssh "route -n | grep ^0.0.0.0 | awk '{ print \$2 }' | tr -d '[:space:]'")
185+
else
186+
echo "localhost"
187+
fi
188+
}
189+
178190
on_exit cleanup

flink-end-to-end-tests/test-scripts/test_kubernetes_application.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ setConsoleLogging
3333

3434
start_kubernetes
3535

36-
build_image ${FLINK_IMAGE_NAME}
36+
build_image ${FLINK_IMAGE_NAME} $(get_host_machine_address)
3737

3838
kubectl create clusterrolebinding ${CLUSTER_ROLE_BINDING} --clusterrole=edit --serviceaccount=default:default --namespace=default
3939

flink-end-to-end-tests/test-scripts/test_kubernetes_embedded_job.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ start_kubernetes
3636

3737
mkdir -p $OUTPUT_VOLUME
3838

39-
build_image ${FLINK_IMAGE_NAME}
39+
build_image ${FLINK_IMAGE_NAME} $(get_host_machine_address)
4040

4141
export USER_LIB=${FLINK_DIR}/examples/batch
4242
kubectl create -f ${CONTAINER_SCRIPTS}/job-cluster-service.yaml

flink-end-to-end-tests/test-scripts/test_kubernetes_session.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ setConsoleLogging
4747

4848
start_kubernetes
4949

50-
build_image ${FLINK_IMAGE_NAME}
50+
build_image ${FLINK_IMAGE_NAME} $(get_host_machine_address)
5151

5252
kubectl create clusterrolebinding ${CLUSTER_ROLE_BINDING} --clusterrole=edit --serviceaccount=default:default --namespace=default
5353

0 commit comments

Comments
 (0)