Some checks failed
Deployment Verification / deploy-and-test (push) Failing after 29s
58 lines
1001 B
Bash
58 lines
1001 B
Bash
echo "=== IRIS UPDATES ==="
|
|
echo "Will unpack $1"
|
|
echo "Target IRIS directory is $2"
|
|
|
|
pkill gunicorn
|
|
|
|
sleep 2
|
|
|
|
pkill gunicorn
|
|
|
|
TMP_DIR=/tmp/iris_updates
|
|
|
|
if [ -d $TMP_DIR ]
|
|
then
|
|
echo "Cleaning previous updates temporary files"
|
|
rm -rf $TMP_DIR
|
|
fi
|
|
|
|
mkdir -p /tmp/iris_updates
|
|
|
|
echo "Started unpacking update archive"
|
|
unzip -q $1 -d /tmp/iris_updates
|
|
echo "Done"
|
|
|
|
echo "Applying updates"
|
|
rsync -av --checksum $TMP_DIR/source/ $2
|
|
|
|
echo "Upgrading packages"
|
|
cd $2
|
|
pip3 install -r requirements.txt
|
|
|
|
echo "Done"
|
|
|
|
# If need reboot
|
|
if [[ $6 -eq 1 ]]
|
|
then
|
|
|
|
# cd to update directory
|
|
cd $2
|
|
|
|
if [ $4 == "worker" ]
|
|
then
|
|
echo "Restarting IRIS worker"
|
|
celery -A app.celery control shutdown
|
|
sleep 2
|
|
exec celery -A app.celery worker -E -B -l INFO
|
|
|
|
else
|
|
echo "Restarting IRIS Web app"
|
|
exec gunicorn app:app --worker-class eventlet --bind 0.0.0.0:8000 --timeout 180 --worker-connections 1000 --log-level=info
|
|
|
|
fi # Worker condition
|
|
|
|
fi # restart condition
|
|
|
|
echo "Updates applied"
|
|
|