Skip to content

Commit b7b979b

Browse files
committed
fix path contain space
1 parent d2d45ec commit b7b979b

File tree

1 file changed

+26
-22
lines changed

1 file changed

+26
-22
lines changed

tools/ci/check_validate.sh

Lines changed: 26 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -54,30 +54,32 @@ function prepare_paddle_env() {
5454

5555
function check_torch_validation() {
5656
LOG "[INFO] Start run validate for changed torch samples ..."
57-
MODIFIED_MODEL_PATHS=()
58-
for file in $(git diff --name-only develop | grep -E "\bsamples\b/(.*\.py|.*\.json)")
59-
do
57+
mapfile -t MODIFIED_FILES < <(git diff --name-only develop | grep -E "\bsamples\b/(.*\.py|.*\.json)")
58+
declare -A unique_paths
59+
for file in "${MODIFIED_FILES[@]}"; do
6060
LOG "[INFO] Found ${file} modified."
61-
model_path=$(dirname ${file})
62-
MODIFIED_MODEL_PATHS[${#MODIFIED_MODEL_PATHS[@]}]=$model_path
61+
model_path=$(dirname "${file}")
62+
unique_paths["$model_path"]=1
6363
done
64-
MODIFIED_MODEL_PATHS=($(echo ${MODIFIED_MODEL_PATHS[@]} | tr ' ' '\n' | sort | uniq))
64+
mapfile -t MODIFIED_MODEL_PATHS < <(printf '%s\n' "${!unique_paths[@]}" | sort)
6565
local total_models=${#MODIFIED_MODEL_PATHS[@]}
6666
if [ ${total_models} -eq 0 ]; then
6767
LOG "[INFO] No changed torch sample models detected. Skip torch validation."
6868
return 0
6969
fi
70-
LOG "[INFO] Validation will run on ${total_models} torch model path(s): ${MODIFIED_MODEL_PATHS[@]}"
70+
LOG "[INFO] Validation will run on ${total_models} torch model path(s):"
71+
printf " - %s\n" "${MODIFIED_MODEL_PATHS[@]}" >&2
7172
fail_name=()
72-
for model_path in ${MODIFIED_MODEL_PATHS[@]}
73+
for model_path in "${MODIFIED_MODEL_PATHS[@]}"
7374
do
74-
python -m graph_net.torch.validate --model-path ${GRAPH_NET_EXTRACT_WORKSPACE}/${model_path} --graph-net-samples-path ${GRAPH_NET_EXTRACT_WORKSPACE}/samples >&2
75+
python -m graph_net.torch.validate --model-path "${GRAPH_NET_EXTRACT_WORKSPACE}/${model_path}" --graph-net-samples-path "${GRAPH_NET_EXTRACT_WORKSPACE}/samples" >&2
7576
[ $? -ne 0 ] && fail_name[${#fail_name[@]}]="${model_path}"
7677
done
7778
local failed_cnt=${#fail_name[@]}
7879
if [ ${failed_cnt} -ne 0 ]; then
79-
LOG "[FATAL] Failed tests (${failed_cnt}/${total_models}): ${fail_name[@]}"
80-
echo ${fail_name[@]}
80+
LOG "[FATAL] Failed tests (${failed_cnt}/${total_models}):"
81+
printf " - %s\n" "${fail_name[@]}" >&2
82+
printf "%s\n" "${fail_name[@]}"
8183
exit -1
8284
else
8385
LOG "[INFO] All torch sample validations passed (0 failures / ${total_models} total)."
@@ -86,30 +88,32 @@ function check_torch_validation() {
8688

8789
function check_paddle_validation() {
8890
LOG "[INFO] Start run validate for changed paddle samples ..."
89-
MODIFIED_MODEL_PATHS=()
90-
for file in $(git diff --name-only develop | grep -E "\bpaddle_samples\b/(.*\.py|.*\.json)")
91-
do
91+
mapfile -t MODIFIED_FILES < <(git diff --name-only develop | grep -E "\bsamples\b/(.*\.py|.*\.json)")
92+
declare -A unique_paths
93+
for file in "${MODIFIED_FILES[@]}"; do
9294
LOG "[INFO] Found ${file} modified."
93-
model_path=$(dirname ${file})
94-
MODIFIED_MODEL_PATHS[${#MODIFIED_MODEL_PATHS[@]}]=$model_path
95+
model_path=$(dirname "${file}")
96+
unique_paths["$model_path"]=1
9597
done
96-
MODIFIED_MODEL_PATHS=($(echo ${MODIFIED_MODEL_PATHS[@]} | tr ' ' '\n' | sort | uniq))
98+
mapfile -t MODIFIED_MODEL_PATHS < <(printf '%s\n' "${!unique_paths[@]}" | sort)
9799
local total_models=${#MODIFIED_MODEL_PATHS[@]}
98100
if [ ${total_models} -eq 0 ]; then
99101
LOG "[INFO] No changed paddle sample models detected. Skip paddle validation."
100102
return 0
101103
fi
102-
LOG "[INFO] Validation will run on ${total_models} paddle model path(s): ${MODIFIED_MODEL_PATHS[@]}"
104+
LOG "[INFO] Validation will run on ${total_models} paddle model path(s):"
105+
printf " - %s\n" "${MODIFIED_MODEL_PATHS[@]}" >&2
103106
fail_name=()
104-
for model_path in ${MODIFIED_MODEL_PATHS[@]}
107+
for model_path in "${MODIFIED_MODEL_PATHS[@]}"
105108
do
106-
python -m graph_net.paddle.validate --model-path ${GRAPH_NET_EXTRACT_WORKSPACE}/${model_path} --graph-net-samples-path ${GRAPH_NET_EXTRACT_WORKSPACE}/samples >&2
109+
python -m graph_net.paddle.validate --model-path "${GRAPH_NET_EXTRACT_WORKSPACE}/${model_path}" --graph-net-samples-path "${GRAPH_NET_EXTRACT_WORKSPACE}/samples" >&2
107110
[ $? -ne 0 ] && fail_name[${#fail_name[@]}]="${model_path}"
108111
done
109112
local failed_cnt=${#fail_name[@]}
110113
if [ ${failed_cnt} -ne 0 ]; then
111-
LOG "[FATAL] Failed tests (${failed_cnt}/${total_models}): ${fail_name[@]}"
112-
echo ${fail_name[@]}
114+
LOG "[FATAL] Failed tests (${failed_cnt}/${total_models}):"
115+
printf " - %s\n" "${fail_name[@]}" >&2
116+
printf "%s\n" "${fail_name[@]}"
113117
exit -1
114118
else
115119
LOG "[INFO] All paddle sample validations passed (0 failures / ${total_models} total)."

0 commit comments

Comments
 (0)