def nginx(template=None, output=None, link_name=None, engine='django', **vars): """ Install nginx, configure it to proxy a WSGI site and serve static images. """ link_name = link_name or (env.project_name + '.conf') require.nginx.server() template = template or (env.local_deploy_dir / 'templates' / 'nginx_wsgi.conf') output = output or (env.etc_dir / 'nginx_wsgi.conf') if not vars: vars = env render(template, output, engine='django', use_sudo=True, **vars) link = path('/etc/nginx/sites-enabled') / link_name with settings(warn_only=True, hide=('warnings', 'running', 'stdout', 'stderr')): sudo("rm %s" % link) sudo("ln -s %(output)s %(link)s" % locals()) require.service.restarted('nginx')
def get(self): self.write(render('main', {}))