diff --git a/fabfile.py b/fabfile.py new file mode 100644 index 0000000..0885576 --- /dev/null +++ b/fabfile.py @@ -0,0 +1,23 @@ +import os + +from fabric import Connection +from invoke import task + + +@task() +def deploy(c): + """Make sure proxy_user is set to your neuf username.""" + project_path = '/opt/mdb' + proxy_user = os.getenv('DEPLOY_USER', os.getenv('USER')) + + c = Connection(host='gitdeploy@sega.neuf.no', gateway=Connection('login.neuf.no', user=proxy_user)) + + with c.cd(project_path), c.prefix('source {}/venv/bin/activate'.format(project_path)): + c.run('git pull') # Get source + c.run('pip install -U pip') + c.run('pip install -r requirements.txt') # install deps in virtualenv + c.run('python manage.py collectstatic --noinput') # Collect static + c.run('python manage.py migrate') # Run DB migrations + + # Reload gunicorn + c.sudo('/usr/bin/supervisorctl pid mdb.neuf.no | xargs kill -HUP', shell=False)