Python发布脚本

#!/bin/sh

cd /alidata1/app/devops-ros/

sudo supervisorctl stop ros-celery
sudo supervisorctl stop ros
# 拉代码
expect /opt/devops-ros/git.expect

source /alidata1/app/devops-ros/venv/bin/activate
pip install -r requirements.txt
#python manage.py collectstatic
deactivate

sleep 2

sudo supervisorctl start ros
sudo supervisorctl start ros-celery


git.expect
**********
#!/usr/bin/expect -f

cd /alidata1/app/devops-ros/
set password "***"
spawn git pull
expect "Password*"
send "$password\n"
expect eof



***********devops-ros.ini
[program:ros]
directory=/alidata1/app/devops-ros
command=sh start-django.sh
autostart=true
autorestart=true
user=admin
startsecs=3
stderr_logfile=/alidata1/app_log/devops_ros/ros-supervisor.lo


gunicorn 是一个unix上被广泛使用的高性能的Python WSGI UNIX HTTP Server
*********start-django.sh
#!/bin/sh
source venv/bin/activate
exec gunicorn -w 4 -b 0.0.0.0:8001 ros.wsgi --log-level=info

*********
[program:ros-celery]
directory=/alidata1/app/devops-ros
command=sh start-celery.sh
autostart=true
autorestart=true
user=admin
startsecs=3
stderr_logfile=/alidata1/app_log/devops_ros/celery-supervisor.log

start-django.sh
****************
#!/bin/sh
source venv/bin/activate
exec gunicorn -w 4 -b 0.0.0.0:8001 ros.wsgi --log-level=info


start-celery.sh
*******************
#!/bin/sh
source venv/bin/activate
exec celery -A ros worker -l info -B -E

你可能感兴趣的:(Python发布脚本)