snipt/fabfile.py

60 lines
1.9 KiB
Python

import os
from fabric.api import local
def staticfiles():
BASE_PATH = os.path.dirname(__file__)
# CSS
local('sass %s/media/css/style.scss %s/media/css/style.css' % (BASE_PATH, BASE_PATH))
local('sed -i -e \'s/\/media\//https:\/\/snipt.s3.amazonaws.com\//g\' %s/media/css/style.css' % BASE_PATH)
local('rm %s/media/css/style.css-e' % BASE_PATH)
css = [
'%s/media/css/bootstrap.css' % BASE_PATH,
'%s/media/css/style.css' % BASE_PATH,
'%s/media/css/themes.css' % BASE_PATH,
]
local('cat %s > %s/media/cache/snipt.css' % (' '.join(css), BASE_PATH))
# JS
js = [
'%s/media/js/libs/underscore.js' % BASE_PATH,
'%s/media/js/libs/jquery.js' % BASE_PATH,
'%s/media/js/libs/json2.js' % BASE_PATH,
'%s/media/js/libs/backbone.js' % BASE_PATH,
'%s/media/js/libs/bootstrap.js' % BASE_PATH,
'%s/media/js/plugins/jquery.hotkeys.js' % BASE_PATH,
'%s/media/js/plugins/jquery.infieldlabel.js' % BASE_PATH,
'%s/media/js/plugins/jquery.ui.js' % BASE_PATH,
'%s/media/js/src/application.js' % BASE_PATH,
'%s/media/js/src/modules/site.js' % BASE_PATH,
'%s/media/js/src/modules/snipt.js' % BASE_PATH,
]
local('cat %s > %s/media/cache/snipt.js' % (' '.join(js), BASE_PATH))
local('/Users/Nick/.virtualenvs/snipt/bin/python %s/manage.py collectstatic --ignore grappelli --ignore admin --ignore ace --noinput' % BASE_PATH)
def deployapp(m):
try:
local('hg commit -m \'%s\'' % m)
except:
pass
try:
local('git add .')
local('git commit -m \'%s\'' % m)
except:
pass
local('hg push')
local('git push -f heroku')
local('heroku restart')
def deploy(m):
staticfiles()
deployapp(m)
def deployall(m):
deploy(m)
local('heroku run bin/python snipt/manage.py syncdb')
local('heroku run bin/python snipt/manage.py migrate')