README and settings, celery

remotes/origin/pm_task_31703
Alexander Zolotarev 9 years ago
parent d499116de1
commit c10cf257ef
  1. 16
      README.md
  2. 23
      conf/nginx.conf
  3. 74
      conf/supervisor.conf
  4. 2
      fabfile.py
  5. 4
      lms/settings.py

@ -0,0 +1,16 @@
## Правила для разработчика
- Разрабока ведется в отдельном брэнче
- После комита изменений можно проверить свою работу по следующему адресу: <branch_name>.lms.test.spicycms.com
- После проверки тестового сайта по имени брэнча, брэнч помечается к мерж реквесту
- Ответсвенный инженер производит код ревью и запускает/отклоняет мерж
- Если сайт запустился на демо сайте, код в ручом режиме можно обновить на продакшен сервере
### Замечания
- Мерж реквест лучше производить в ветку develop(чтобы исключить случайного обновления кода на демо сайте)
- Внимание! Разработчик обязан проверить работоспособность тестового сайта по имени созданного брэнча <branch_name>.lms.test.spicycms.com
- Если необходимы тестовые данные разработчик их подготавливает дополнительно
- Если нет возможности добавить тестовые данные в авто режиме, разработчик добавляет инструкцию в README файл по запуску необходимых команд
(Под тестовыми данными подразумеваются фикстуры)

@ -39,3 +39,26 @@ server {
} }
} }
server {
gzip on;
gzip_disable "msie6";
gzip_vary on;
gzip_proxied any;
gzip_comp_level 6;
gzip_buffers 16 8k;
gzip_http_version 1.1;
gzip_types text/plain text/css application/json application/x-javascript text/xml applic$
listen 80;
client_max_body_size 4G;
server_name s.skillbox.ru;
#error_log /var/www/logs/codemy/flnginx-error.log;
keepalive_timeout 5;
root %(project_path)s;
location / {
proxy_pass http://localhost:5555;
}
}

@ -1,44 +1,46 @@
;[program:rabbitmq]
;command:rabbitmq-server
;tdout_logfile=/var/log/rabbitmq.log
;stderr_logfile=/var/log/rabbitmq.log
;autostart=true
;autorestart=true
;startsecs=10
;priority=999
;[group:%(project_name)s]
;programs=gunicorn,celery
[program:uwsgi] [program:uwsgi]
command = /usr/bin/uwsgi --ini %(project_path)s/uwsgi_prod.ini command = /usr/bin/uwsgi --ini %(project_path)s/uwsgi_prod.ini
stopasgroup = true stopasgroup = true
killasgroup = true killasgroup = true
#[program:gunicorn] ; ==================================
#command=%(project_path)s/env/bin/gunicorn_django -c gunicorn.conf.py -p gunicorn.pid ; celery worker supervisor example
#directory=%(project_path)s ; ==================================
#user=%(user)s
#autostart=true [program:celery_codemy]
#autorestart=true command=%(project_path)s/env/bin/celery worker -A lms --loglevel=INFO
#redirect_stderr=true directory=%(project_path)s
user=www-data
numprocs=1
;stdout_logfile=/var/www/logs/codemy/celery-worker.log
;stderr_logfile=/var/www/logs/codemy/celery-worker.log
autostart=true
autorestart=true
startsecs=10
stopwaitsecs = 600
killasgroup=true
;[program:celery] [program:celery_beat_codemy]
;command=%(project_path)s/env/bin/python manage.py celery worker -B -S djcelery.schedulers.DatabaseScheduler --loglevel=INFO command=%(project_path)s/env/bin/celery beat -A lms --schedule /var/lib/celery/beat.db --loglevel=INFO
;directory=%(project_path)s directory=%(project_path)s
;user=ubuntu user=www-data
;numprocs=1 numprocs=1
;stdout_logfile=/var/log/celeryd.log ;stdout_logfile=/var/www/logs/codemy/celery-beat.log
;stderr_logfile=/var/log/celeryd.log ;stderr_logfile=/var/www/logs/codemy/celery-beat.log
;autostart=true autostart=true
;autorestart=true autorestart=true
;startsecs=10 startsecs=10
priority=999
; Need to wait for currently executing tasks to finish at shutdown. [program:celery_flower_codemy]
; Increase this if you have very long running tasks. command=%(project_path)s/env/bin/celery -A lms flower
;stopwaitsecs = 600 directory=%(project_path)s
user=www-data
numprocs=1
;stdout_logfile=/var/www/logs/codemy/celery-flower.log
;stderr_logfile=/var/www/logs/codemy/celery-flower.log
autostart=true
autorestart=true
startsecs=10
priority=600
; if rabbitmq is supervised, set its priority higher
; so it starts first
;priority=998

2
fabfile.py vendored

@ -272,7 +272,6 @@ def create():
Stages the application on the server Stages the application on the server
""" """
sudo('rm -r %s -f' % env.project_path) sudo('rm -r %s -f' % env.project_path)
sudo('chown %s /var' % 'www-data')
with cd('/var'): with cd('/var'):
run('mkdir -p www') run('mkdir -p www')
with cd('/var/www'): with cd('/var/www'):
@ -284,6 +283,7 @@ def create():
with virtualenv(): with virtualenv():
run('pip install -r %s/requirements.txt' % env.project_path) run('pip install -r %s/requirements.txt' % env.project_path)
sudo('chown -R www-data /var/www/')
#pip('python-memcached') #pip('python-memcached')
#upload_template_and_reload('django_settings') #upload_template_and_reload('django_settings')

@ -121,8 +121,8 @@ DATABASES = {
'NAME': os.environ.get('DB_NAME', 'codemy'), 'NAME': os.environ.get('DB_NAME', 'codemy'),
'USER': os.environ.get('PG_ENV_POSTGRES_USER', 'team'), 'USER': os.environ.get('PG_ENV_POSTGRES_USER', 'team'),
'PASSWORD': os.environ.get('PG_ENV_POSTGRES_PASSWORD', 'nu5Xefise'), 'PASSWORD': os.environ.get('PG_ENV_POSTGRES_PASSWORD', 'nu5Xefise'),
'HOST': os.environ.get('PG_PORT_5432_TCP_ADDR', '192.168.0.2'), 'HOST': os.environ.get('PG_PORT_5432_TCP_ADDR', '77.244.221.176'),
'PORT': os.environ.get('PG_PORT_5432_TCP_PORT', ''), 'PORT': os.environ.get('PG_PORT_5432_TCP_PORT', '5432'),
}, },
} }

Loading…
Cancel
Save