#!/bin/bash -e K3S_BIN_PATH="/usr/bin/k3s" service_function_names_regexp=".+" case_names_regexp=".+" usage(){ echo "" echo "usage: tsg-diagnose-oneshot [option]" echo "" echo "Options:" 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 } 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 ;; --) shift break ;; *) echo "Unknown option: $1" usage exit 1 ;; esac done } 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 kubectl exec -n tsg-os-system -it daemonset/dign-client -- $command else systemctl start tsg-diagnose sleep 10 docker exec -it dign-client $command fi