《How to Automate Manual Steps after SSH》2019-03,amitness

作者每次部署更新都需要進行下列操作:

於是作者寫了一個腳本,可以自動執行ssh以及登陸後的固定操作:

#!/bin/bash
ssh -i "webapp.pem" [email protected] << EOF
cd /var/www/webapp/

echo "Switching to www-data user"
sudo -Hu www-data bash

echo "Pulling Latest Changes"
git pull

echo "Activating Virtual Environment"
source venv/bin/activate

echo "Installing any new libraries"
pip install -r requirements.txt

echo "Migrating Database"
python manage.py migrate

echo "Returning back to Ubuntu user"
exit

echo "Restarting Supervisor and Nginx"
sudo service supervisor restart
sudo service nginx restart

echo "Deployment Finished"
EOF

上述代碼的關鍵就是在兩個EOF之間,你可以ssh登陸後寫自己需要的操作。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章