Skip to content

Commit 5c04d63

Browse files
Update bito-cra.sh
1 parent 1430b79 commit 5c04d63

File tree

1 file changed

+36
-2
lines changed

1 file changed

+36
-2
lines changed

cra-scripts/bito-cra.sh

Lines changed: 36 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,19 @@ validate_env() {
9393
fi
9494
}
9595

96+
# Function to validate a review_comments vallue i.e. 1 mapped to "FULLPOST" or 2 mapped to "INLINE"
97+
validate_review_comments() {
98+
local review_comments="$1"
99+
if [ "$review_comments" == "1" ]; then
100+
echo "FULLPOST"
101+
elif [ "$review_comments" == "2" ]; then
102+
echo "INLINE"
103+
else
104+
echo "Invalid review comments value. Please enter either 1 or 2."
105+
exit 1
106+
fi
107+
}
108+
96109
# Function to display URL using IP address and port
97110
# Run docker ps -l command and store the output
98111
display_docker_url() {
@@ -355,14 +368,17 @@ required_params_cli=(
355368
)
356369

357370
optional_params_cli=(
371+
"review_comments"
358372
"static_analysis"
373+
"static_analysis_tool"
359374
"dependency_check"
360375
"dependency_check.snyk_auth_token"
361376
"cra_version"
362377
"env"
363378
"cli_path"
364379
"output_path"
365380
"git.domain"
381+
"code_context"
366382
)
367383

368384
# Parameters that are required/optional in mode server
@@ -375,14 +391,17 @@ optional_params_server=(
375391
"git.provider"
376392
"git.access_token"
377393
"bito_cli.bito.access_key"
394+
"review_comments"
378395
"static_analysis"
396+
"static_analysis_tool"
379397
"dependency_check"
380398
"dependency_check.snyk_auth_token"
381399
"server_port"
382400
"cra_version"
383401
"env"
384402
"cli_path"
385403
"git.domain"
404+
"code_context"
386405
)
387406

388407
bee_params=(
@@ -444,15 +463,14 @@ done
444463
for param in "${optional_params[@]}"; do
445464
if [ "$param" == "dependency_check.snyk_auth_token" ] && [ "${props["dependency_check"]}" == "True" ]; then
446465
ask_for_param "$param" "False"
447-
elif [ "$param" != "dependency_check.snyk_auth_token" ] && [ "$param" != "env" ] && [ "$param" != "cli_path" ] && [ "$param" != "output_path" ] && [ "$param" != "git.domain" ]; then
466+
elif [ "$param" != "dependency_check.snyk_auth_token" ] && [ "$param" != "env" ] && [ "$param" != "cli_path" ] && [ "$param" != "output_path" ] && [ "$param" != "static_analysis_tool" ] && [ "$param" != "git.domain" ]; then
448467
ask_for_param "$param" "False"
449468
fi
450469
done
451470

452471
# Append parameters to the docker command
453472
for param in "${required_params[@]}" "${bee_params[@]}" "${optional_params[@]}"; do
454473

455-
#echo $param ${props[$param]}
456474
if [ -n "${props[$param]}" ]; then
457475

458476
if [ "$param" == "cra_version" ]; then
@@ -475,6 +493,8 @@ for param in "${required_params[@]}" "${bee_params[@]}" "${optional_params[@]}";
475493
#handle special case of static_analysis.fb_infer.enabled using static_analysis
476494
props[$param]=$(validate_boolean "${props[$param]}")
477495
docker_cmd+=" --static_analysis.fb_infer.enabled=${props[$param]}"
496+
elif [ "$param" == "static_analysis_tool" ]; then
497+
docker_cmd+=" --static_analysis_tool=${props[$param]}"
478498
elif [ "$param" == "dependency_check" ]; then
479499
#validate the dependency check boolean value
480500
props[$param]=$(validate_boolean "${props[$param]}")
@@ -483,6 +503,10 @@ for param in "${required_params[@]}" "${bee_params[@]}" "${optional_params[@]}";
483503
#validate the code feedback boolean value
484504
props[$param]=$(validate_boolean "${props[$param]}")
485505
docker_cmd+=" --$param=${props[$param]}"
506+
elif [ "$param" == "code_context" ]; then
507+
#validate the code context boolean value
508+
props[$param]=$(validate_boolean "${props[$param]}")
509+
docker_cmd+=" --$param=${props[$param]}"
486510
elif [ "$param" == "mode" ]; then
487511
validate_mode "${props[$param]}"
488512
docker_cmd+=" --$param=${props[$param]}"
@@ -503,6 +527,16 @@ for param in "${required_params[@]}" "${bee_params[@]}" "${optional_params[@]}";
503527
docker_cmd+=" --$param=/output_path"
504528
fi
505529
fi
530+
elif [ "$param" == "review_comments" ]; then
531+
#validate the review comments value
532+
props[$param]=$(validate_review_comments "${props[$param]}")
533+
return_val=$? # Capture the return value of the check output directory
534+
if [ $return_val -eq 0 ]; then
535+
docker_cmd+=" --$param=${props[$param]}"
536+
else
537+
echo "Invalid value provided for review_comments. Exiting."
538+
exit 1
539+
fi
506540
else
507541
docker_cmd+=" --$param=${props[$param]}"
508542
fi

0 commit comments

Comments
 (0)