X-Git-Url: https://git.mdrn.pl/wolnelektury.git/blobdiff_plain/6d7b11e4a01b2314c0527d94d91f3159c0bd34ce..ff98e9508e1505e4330b1167697f7dd514b4ee37:/fabfile.py diff --git a/fabfile.py b/fabfile.py index e37881a97..87954e834 100644 --- a/fabfile.py +++ b/fabfile.py @@ -1,17 +1,67 @@ -from fnpdjango.deploy import * +# -*- coding: utf-8 -*- +from fnpdeploy import * + +try: + from fabfile_local import * +except ImportError: + pass env.project_name = 'wolnelektury' +def update_counters(): + print '>>> updating counters' + require('app_path', 'project_name') + with cd(get_django_root_path('current')): + run('%(ve)s/bin/python manage.py update_counters' % env, pty=True) + + +def compile_messages(): + print '>>> compiling messages' + require('app_path', 'project_name') + with cd(get_django_root_path('current')): + run('source %(ve)s/bin/activate && python manage.py localepack -c' % env, pty=True) + + +class Memcached(Service): + def run(self): + print '>>> memcached: restart' + sudo('service memcached restart', shell=False) + + @task def production(): env.hosts = ['giewont.icm.edu.pl'] env.user = 'lektury' env.app_path = '/srv/wolnelektury.pl' + env.django_root_path = 'src' + env.requirements_file = 'requirements/requirements.txt' + env.pre_collectstatic = [ + update_counters, + compile_messages, + ] env.services = [ - DebianGunicorn('wolnelektury'), - Supervisord('celery.wolnelektury:'), + Supervisord('wolnelektury'), + Supervisord('wolnelektury.celery'), + Memcached(), + ] + + +@task +def beta(): + env.hosts = ['giewont.icm.edu.pl'] + env.user = 'lektury' + env.app_path = '/srv/wolnelektury.pl/beta' + env.ve = '/srv/wolnelektury.pl/ve' + env.django_root_path = 'src' + env.requirements_file = 'requirements/requirements.txt' + env.pre_collectstatic = [ + update_counters, + compile_messages, + ] + env.services = [ + Supervisord('beta'), ]