env.python = '/usr/bin/python'
env.virtualenv = '/usr/bin/virtualenv'
env.pip = '/usr/bin/pip'
-
+
def production():
"""Use production server"""
env.hosts = ['wolnelektury.pl:22123']
def deploy():
"""
- Deploy the latest version of the site to the servers,
- install any required third party modules,
+ Deploy the latest version of the site to the servers,
+ install any required third party modules,
install the virtual host and then restart the webserver
"""
require('hosts', 'path', provided_by=[staging, production])
# = Helpers. These are called by other functions rather than directly =
# =====================================================================
def upload_tar_from_git():
- "Create an archive from the current Git master branch and upload it"
+ "Create an archive from the current Git branch and upload it"
print '>>> upload tar from git'
require('release', provided_by=[deploy])
- local('git archive --format=tar master | gzip > %(release)s.tar.gz' % env)
+ local('git-archive-all.sh --format tar %(release)s.tar' % env)
+ local('gzip %(release)s.tar' % env)
run('mkdir -p %(path)s/releases/%(release)s' % env, pty=True)
run('mkdir -p %(path)s/packages' % env, pty=True)
put('%(release)s.tar.gz' % env, '%(path)s/packages/' % env)
def restart_webserver():
"Restart the web server"
print '>>> restart webserver'
- run('touch %(path)s/releases/current/%(project_name)s/%(project_name)s.wsgi' % env)
+ run('touch %(path)s/%(project_name)s.wsgi' % env)