|
#!/usr/bin/env bash |
|
|
|
|
|
|
|
|
|
python_version=3.8.10 |
|
system_version="centos"; |
|
|
|
verbose=true; |
|
stage=-1 |
|
stop_stage=0 |
|
|
|
|
|
|
|
while true; do |
|
[ -z "${1:-}" ] && break; |
|
case "$1" in |
|
--*) name=$(echo "$1" | sed s/^--// | sed s/-/_/g); |
|
eval '[ -z "${'"$name"'+xxx}" ]' && echo "$0: invalid option $1" 1>&2 && exit 1; |
|
old_value="(eval echo \\$$name)"; |
|
if [ "${old_value}" == "true" ] || [ "${old_value}" == "false" ]; then |
|
was_bool=true; |
|
else |
|
was_bool=false; |
|
fi |
|
|
|
|
|
|
|
eval "${name}=\"$2\""; |
|
|
|
|
|
if $was_bool && [[ "$2" != "true" && "$2" != "false" ]]; then |
|
echo "$0: expected \"true\" or \"false\": $1 $2" 1>&2 |
|
exit 1; |
|
fi |
|
shift 2; |
|
;; |
|
|
|
*) break; |
|
esac |
|
done |
|
|
|
work_dir="$(pwd)" |
|
|
|
|
|
if [ ${stage} -le 1 ] && [ ${stop_stage} -ge 1 ]; then |
|
$verbose && echo "stage 1: install python" |
|
cd "${work_dir}" || exit 1; |
|
|
|
sh ./script/install_python.sh --python_version "${python_version}" --system_version "${system_version}" |
|
fi |
|
|
|
|
|
if [ ${stage} -le 2 ] && [ ${stop_stage} -ge 2 ]; then |
|
$verbose && echo "stage 2: create virtualenv" |
|
|
|
|
|
|
|
/usr/local/python-${python_version}/bin/pip3 install virtualenv |
|
mkdir -p /data/local/bin |
|
cd /data/local/bin || exit 1; |
|
/usr/local/python-${python_version}/bin/virtualenv vm_sound_classification |
|
|
|
fi |
|
|