From dd1e6907ec841d378699fdbbbf0033666b1b43c7 Mon Sep 17 00:00:00 2001 From: zhangxiaoyu Date: Mon, 8 May 2023 17:38:38 +0800 Subject: [PATCH 61/79] add testcase for hook env Signed-off-by: zhangxiaoyu --- .../container_cases/hook_spec_test.sh | 30 +++++++++++++++++++ .../test_data/env-hookspec.json | 9 ++++++ 2 files changed, 39 insertions(+) create mode 100644 CI/test_cases/container_cases/test_data/env-hookspec.json diff --git a/CI/test_cases/container_cases/hook_spec_test.sh b/CI/test_cases/container_cases/hook_spec_test.sh index a0f70e37..c88ed340 100755 --- a/CI/test_cases/container_cases/hook_spec_test.sh +++ b/CI/test_cases/container_cases/hook_spec_test.sh @@ -59,6 +59,36 @@ function test_hook_spec() rm -rf $runlog + cat > /tmp/env.sh < /tmp/envfile +EOF + [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to generate env shell" && ((ret++)) + + chmod +x /tmp/env.sh + [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to chmod env shell" && ((ret++)) + + CONT=`isula run -itd --hook-spec ${test_data_path}/env-hookspec.json ${image}` + [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to run container with image: ${image}" && ((ret++)) + + isula stop -t 0 ${CONT} + [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to stop ${CONT}" && ((ret++)) + + isula rm ${CONT} + [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to rm ${CONT}" && ((ret++)) + + # debug + cat /tmp/envfile + cat /tmp/envfile | grep "PATH=/usr/local/bin:/usr/bin" + [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - set ocihook PATH env failed" && ((ret++)) + + cat /tmp/envfile | grep "AAA=bbb" + [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - set ocihook env failed" && ((ret++)) + + rm -rf /tmp/env.sh + rm -rf /tmp/envfile + msg_info "${test} finished with return ${ret}..." return ${ret} } diff --git a/CI/test_cases/container_cases/test_data/env-hookspec.json b/CI/test_cases/container_cases/test_data/env-hookspec.json new file mode 100644 index 00000000..2a63a355 --- /dev/null +++ b/CI/test_cases/container_cases/test_data/env-hookspec.json @@ -0,0 +1,9 @@ +{ + "prestart": [ + { + "args": ["/tmp/env.sh"], + "path": "/tmp/env.sh", + "env": ["PATH=/usr/local/bin:/usr/bin", "AAA=bbb"] + } + ] +} -- 2.25.1