ci: Introduce CI to validate pod hostname

Fixes #10422

Signed-off-by: alex.lyn <alex.lyn@antgroup.com>
This commit is contained in:
alex.lyn
2024-10-17 18:49:10 +08:00
committed by stevenhorsman
parent 3dabe0f5f0
commit b25538f670
3 changed files with 57 additions and 0 deletions

View File

@@ -0,0 +1,37 @@
#!/usr/bin/env bats
#
# Copyright (c) 2024 Ant Group
#
# SPDX-License-Identifier: Apache-2.0
#
load "${BATS_TEST_DIRNAME}/../../common.bash"
load "${BATS_TEST_DIRNAME}/tests_common.sh"
setup() {
pod_name="test-pod-hostname"
get_pod_config_dir
yaml_file="${pod_config_dir}/pod-hostname.yaml"
add_allow_all_policy_to_yaml "${yaml_file}"
expected_name=$pod_name
}
@test "Validate Pod hostname" {
# Create pod
kubectl apply -f "${yaml_file}"
kubectl wait --for jsonpath=status.phase=Succeeded --timeout=$timeout pod "$pod_name"
# Validate the pod hostname
result=$(kubectl logs $pod_name)
[ "$pod_name" == "$result" ]
}
teardown() {
# Debugging information
kubectl describe "pod/$pod_name"
kubectl delete pod "$pod_name"
}

View File

@@ -54,6 +54,7 @@ else
"k8s-env.bats" \
"k8s-exec.bats" \
"k8s-file-volume.bats" \
"k8s-hostname.bats" \
"k8s-inotify.bats" \
"k8s-job.bats" \
"k8s-kill-all-process-in-container.bats" \

View File

@@ -0,0 +1,19 @@
#
# Copyright (c) 2024 Ant Group.
#
# SPDX-License-Identifier: Apache-2.0
#
apiVersion: v1
kind: Pod
metadata:
name: test-pod-hostname
spec:
terminationGracePeriodSeconds: 0
runtimeClassName: kata
restartPolicy: Never
containers:
- image: quay.io/prometheus/busybox:latest
name: pod-hostname-c01
command: ["sh"]
args: ["-c", "hostname"]