84 lines
1.6 KiB
Bash
84 lines
1.6 KiB
Bash
#!/bin/bash
|
|
|
|
|
|
LOG_FILE="/mnt/data/ailai-app/log/app_$(date +%Y%m%d_%H%M%S).log"
|
|
|
|
log_message() {
|
|
echo "$(date '+%Y-%m-%d %H:%M:%S') - $1" >> "$LOG_FILE"
|
|
}
|
|
|
|
wait_for_gui() {
|
|
log_message "wait gui..."
|
|
|
|
while [ ! -f "/home/teamhd/.Xauthority" ]; do
|
|
log_message "wait x11..."
|
|
sleep 2
|
|
done
|
|
|
|
export DISPLAY=:0
|
|
export XAUTHORITY="/home/teamhd/.Xauthority"
|
|
|
|
while [ ! xset q > /dev/null 2>&1]; do
|
|
log_message "cant connect x11"
|
|
sleep 1
|
|
done
|
|
|
|
log_message "x11 is ok "
|
|
|
|
return 0
|
|
}
|
|
|
|
setup_conda() {
|
|
log_message "set conda"
|
|
|
|
CONDA_PATH="/mnt/data/ailai/yes/etc/profile.d/conda.sh"
|
|
if [ -f "$CONDA_PATH" ]; then
|
|
source "$CONDA_PATH"
|
|
log_message "Conda load success"
|
|
else
|
|
log_message "conda fail"
|
|
return 1
|
|
fi
|
|
|
|
# sudo /mnt/data/ailai/yes/condabin/conda activate ailai
|
|
if [ $? -eq 0 ]; then
|
|
log_message "Conda activate success"
|
|
else
|
|
log_message "conda activate fail"
|
|
return 1
|
|
fi
|
|
|
|
return 0
|
|
}
|
|
|
|
main() {
|
|
log_message "app start"
|
|
|
|
if ! wait_for_gui; then
|
|
log_message "start gui fail"
|
|
exit 1
|
|
fi
|
|
|
|
# if ! setup_conda; then
|
|
# log_message "start conda fail"
|
|
# exit 1
|
|
# fi
|
|
|
|
|
|
cd "/mnt/data/ailai-app" || {
|
|
log_message "app dir fail"
|
|
exit 1
|
|
}
|
|
|
|
log_message "start python..."
|
|
|
|
|
|
sudo /mnt/data/ailai/yes/envs/ailai/bin/python main.py >> "$LOG_FILE" 2>&1
|
|
EXIT_CODE=$?
|
|
|
|
log_message "exit code:$EXIT_CODE"
|
|
log_message "app end"
|
|
}
|
|
|
|
main "$@"
|