-
Notifications
You must be signed in to change notification settings - Fork 1
/
pavement.py
57 lines (45 loc) · 1.34 KB
/
pavement.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
import paver
from paver.easy import *
import paver.setuputils
paver.setuputils.install_distutils_tasks()
import os, sys
import subprocess
sys.path.append(os.getcwd())
# You will want to change these for your own environment in .gitignored paverconfig.py
try:
from paverconfig import master_url, master_app, minify_js
except:
print 'NOTICE: You are using default values for master_* Make your own paverconfig.py file'
master_url = 'http://127.0.0.1:8000'
master_app = 'runestone'
minify_js = False
# Save the most recent
build_info = sh("git describe --long", capture=True)
bif = open('build_info','w')
bif.write(build_info)
bif.close()
options(
sphinx = Bunch(
docroot=".",
),
)
@task
@cmdopts([('all','a','rebuild everything')])
def data_analysis(options):
# project-specific pavements have defaults set but we can override here
params = ["paver", "build", # task name
"--masterapp", master_app,
"--masterurl", master_url]
if 'all' in options.data_analysis:
params.append("-a")
os.chdir("data_analysis")
subprocess.call(params)
os.chdir("..")
@task
@cmdopts([('all','a','rebuild everything')])
def allbooks(options):
opts = Bunch()
if 'all' in options.allbooks:
opts['all'] = True
options.data_analysis = opts
data_analysis(options)