This module implements Fabric to perform the following tasks:
-
fab refreshto sync your database with the servers and rsync your media assets. -
fab topicto create a new topic-specific branch -
fab syncto pull changes from the master branch into your local topic branch. -
fab mergeto merge the changes from your topic branch back into master, or merge the master branch into the production branch. -
fab pull_requestto submit a pull request on GitHub for your topic to be merged into the production branch -
fab deployto run a "fast" or "full" deploy to either staging or production servers
Automation requires hub to perform GitHub pull requests.
Install via pip:
$ pip install automationCreate fabfile.py in your project's root directory and tell automation about your project, then import automation:
from fabric.api import env
env.project_name = 'myproject'
env.repo_source = 'git@github.com:myname/myproject.git'
env.django_settings_module = 'myproject.settings'
env.django_test_settings_module = 'myproject.test_settings'
env.roledefs = {
'staging': ['web@12.12.12.12'],
'production': ['web@45.45.45.45']}
from automation import *Exactly as mentioned above, just enter the command in your shell. Note that you must be in your project's directory (or a sub-directory) thereof for Fabric to be able to find your fabfile.
e.g.
~/projects/myproject $ fab topicEmail any questions to dustin@dustinfarris.com or report issues on GitHub
