Using Fabric for deployment
Fabric is a command-line tool in Python; it streamlines the use of SSH for application deployment or system-administration tasks. As it allows the execution of shell commands on remote servers, the overall process of deployment is simplified, as the whole process can now be condensed into a Python file, which can be run whenever needed. Therefore, it saves the pain of logging in to the server and manually running commands every time an update has to be made.
Getting ready
Installing Fabric can be simply done using pip
:
$ pip install fabric
We will use the application from the Deploying with Gunicorn and Supervisor recipe. We will create a Fabric file to perform the same process to the remote server.
For simplicity, let's assume that the remote server setup has been already done and all the required packages have also been installed with a virtualenv
environment, which has also been created.
How to do it…
First, we need to create a file called fabfile.py
in our application...