snipt/snipt/fabfile.py

56 lines
1.7 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/a_underscore.js' % BASE_PATH,
'%s/media/js/libs/b_jquery.js' % BASE_PATH,
'%s/media/js/libs/c_json2.js' % BASE_PATH,
'%s/media/js/libs/d_backbone.js' % BASE_PATH,
'%s/media/js/plugins/*.js' % BASE_PATH,
'%s/media/js/src/*.js' % BASE_PATH,
'%s/media/js/src/modules/*.js' % BASE_PATH,
'%s/media/js/libs/e_bootstrap.js' % BASE_PATH,
'%s/media/js/libs/ace/ace.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 --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')