refactor: rewrite tsg diagnose scripts.
This commit is contained in:
@@ -1,56 +1,56 @@
|
||||
#!/bin/bash -e
|
||||
K3S_BIN_PATH="/usr/bin/k3s"
|
||||
max_service_function_index=1
|
||||
service_function_index=""
|
||||
service_function_names_regexp=".+"
|
||||
case_names_regexp=".+"
|
||||
|
||||
ARGS=`getopt -a -o m:i:h -l max-service-function-index:,service-function-index:,help -- "$@"`
|
||||
eval set -- "${ARGS}"
|
||||
usage(){
|
||||
echo ""
|
||||
echo "usage: tsg-diagnose-oneshot [option]"
|
||||
echo ""
|
||||
echo "Options:"
|
||||
echo " -h --help Detailed usage syntax"
|
||||
echo " -m --max-service-function-index Count of service-function,default:1"
|
||||
echo " -i --service-function-index List of service-function index"
|
||||
echo "Example: tsg-diagnose-oneshot -m 5"
|
||||
echo " or tsg-diagnose-oneshot -i 1 -i 2 -i 3"
|
||||
echo " -h --help Detailed usage syntax"
|
||||
echo " --service_function_names_regexp Regexp of the service function names to run. Default: .+"
|
||||
echo " --case_names_regexp Regexp of the case names to run. Default: .+"
|
||||
echo "Example: tsg-diagnose-oneshot --service_function_names_regexp .+ --case_names_regexp .+"
|
||||
exit 0
|
||||
}
|
||||
|
||||
function get_args(){
|
||||
while true
|
||||
do
|
||||
case "$1" in
|
||||
-m|--max-service-function-index)
|
||||
export max_service_function_index=$2
|
||||
;;
|
||||
-i|--service-function-index)
|
||||
export service_function_index="$2 $service_function_index"
|
||||
;;
|
||||
get_args() {
|
||||
while [[ $# -gt 0 ]]; do
|
||||
case "$1" in
|
||||
--service_function_names_regexp)
|
||||
export service_function_names_regexp="$2"
|
||||
shift 2
|
||||
;;
|
||||
--case_names_regexp)
|
||||
export case_names_regexp="$2"
|
||||
shift 2
|
||||
;;
|
||||
-h|--help)
|
||||
usage
|
||||
;;
|
||||
usage
|
||||
;;
|
||||
--)
|
||||
shift
|
||||
break
|
||||
;;
|
||||
esac
|
||||
shift
|
||||
shift
|
||||
break
|
||||
;;
|
||||
*)
|
||||
echo "Unknown option: $1"
|
||||
usage
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
done
|
||||
}
|
||||
|
||||
get_args $@
|
||||
ARGS=$(getopt -a -o h -l service_function_names_regexp:,case_names_regexp:,help -- "$@")
|
||||
eval set -- "${ARGS}"
|
||||
get_args "$@"
|
||||
|
||||
command="python bin/client.py --service_function_names_regexp $service_function_names_regexp --case_names_regexp $case_names_regexp"
|
||||
if [ -f "$K3S_BIN_PATH" ]; then
|
||||
if [ -z "$service_function_index" ]; then
|
||||
kubectl exec -it daemonset/dign-client -- python bin/client.py -m $max_service_function_index
|
||||
else
|
||||
kubectl exec -it daemonset/dign-client -- python bin/client.py -d $service_function_index
|
||||
fi
|
||||
kubectl exec -n tsg-os-system -it daemonset/dign-client -- $command
|
||||
else
|
||||
systemctl start tsg-diagnose
|
||||
sleep 10
|
||||
docker exec -it dign-client /bin/sh -c "python bin/client.py -o"
|
||||
fi
|
||||
|
||||
docker exec -it dign-client $command
|
||||
fi
|
||||
@@ -1,56 +1,63 @@
|
||||
#!/bin/bash -e
|
||||
K3S_BIN_PATH="/usr/bin/k3s"
|
||||
max_service_function_index=1
|
||||
service_function_index=""
|
||||
service_function_names_regexp=".+"
|
||||
case_names_regexp=".+"
|
||||
interval="30"
|
||||
|
||||
ARGS=`getopt -a -o m:i:h -l max-service-function-index:,service-function-index:,help -- "$@"`
|
||||
eval set -- "${ARGS}"
|
||||
usage(){
|
||||
echo ""
|
||||
echo "usage: tsg-diagnose-oneshot [option]"
|
||||
echo ""
|
||||
echo "Options:"
|
||||
echo " -h --help Detailed usage syntax"
|
||||
echo " -m --max-service-function-index Count of service-function,default:1"
|
||||
echo " -i --service-function-index List of service-function index"
|
||||
echo "Example: tsg-diagnose-oneshot -m 5"
|
||||
echo " or tsg-diagnose-oneshot -i 1 -i 2 -i 3"
|
||||
echo " -h --help Detailed usage syntax"
|
||||
echo " --service_function_names_regexp Regexp of the service function names to run. Default: .+"
|
||||
echo " --case_names_regexp Regexp of the case names to run. Default: .+"
|
||||
echo " --interval The time interval in seconds between consecutive TSG diagnose operations. Default: 30."
|
||||
echo "Example: tsg-diagnose-oneshot --service_function_names_regexp .+ --case_names_regexp .+ --interval 60"
|
||||
exit 0
|
||||
}
|
||||
|
||||
function get_args(){
|
||||
while true
|
||||
do
|
||||
case "$1" in
|
||||
-m|--max-service-function-index)
|
||||
export max_service_function_index=$2
|
||||
;;
|
||||
-i|--service-function-index)
|
||||
export service_function_index="$2 $service_function_index"
|
||||
;;
|
||||
get_args() {
|
||||
while [[ $# -gt 0 ]]; do
|
||||
case "$1" in
|
||||
--service_function_names_regexp)
|
||||
export service_function_names_regexp="$2"
|
||||
shift 2
|
||||
;;
|
||||
--case_names_regexp)
|
||||
export case_names_regexp="$2"
|
||||
shift 2
|
||||
;;
|
||||
--interval)
|
||||
export interval="$2"
|
||||
shift 2
|
||||
;;
|
||||
-h|--help)
|
||||
usage
|
||||
;;
|
||||
usage
|
||||
;;
|
||||
--)
|
||||
shift
|
||||
break
|
||||
;;
|
||||
esac
|
||||
shift
|
||||
shift
|
||||
break
|
||||
;;
|
||||
*)
|
||||
echo "Unknown option: $1"
|
||||
usage
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
done
|
||||
}
|
||||
|
||||
get_args $@
|
||||
ARGS=$(getopt -a -o h -l service_function_names_regexp:,case_names_regexp:,interval:,help -- "$@")
|
||||
eval set -- "${ARGS}"
|
||||
get_args "$@"
|
||||
|
||||
|
||||
command="python bin/client.py --periodical --service_function_names_regexp $service_function_names_regexp --case_names_regexp $case_names_regexp --interval $interval"
|
||||
if [ -f "$K3S_BIN_PATH" ]; then
|
||||
if [ -z "$service_function_index" ]; then
|
||||
kubectl exec -it daemonset/dign-client -- python bin/client.py -m $max_service_function_index -l
|
||||
else
|
||||
kubectl exec -it daemonset/dign-client -- python bin/client.py -d $service_function_index -l
|
||||
fi
|
||||
kubectl exec -n tsg-os-system -it daemonset/dign-client -- $command
|
||||
else
|
||||
systemctl start tsg-diagnose
|
||||
sleep 10
|
||||
docker exec -it dign-client /bin/sh -c "python bin/client.py -l -o"
|
||||
fi
|
||||
|
||||
docker exec -it dign-client $command
|
||||
fi
|
||||
Reference in New Issue
Block a user