-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathbuildout.cfg
More file actions
142 lines (128 loc) · 3.69 KB
/
buildout.cfg
File metadata and controls
142 lines (128 loc) · 3.69 KB
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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
[buildout]
dump-picked-versions-file = missing_versions.cfg
#develop = .
versions = versions
parts =
nodejs
create_symlinks
npm
npm-bin
templates
supervisor
instance
npm-packages
coffee-bin
tar-this-helper
extensions = lovely.buildouthttp
buildout.dumppickedversions
hooks-directory = ${buildout:directory}/hooks
[config]
supervisord-port=9090
[nodejs]
recipe = hexagonit.recipe.cmmi
# need to use 0.5.0 for now due to ``express`` dependency
url=http://nodejs.org/dist/node-v${versions:nodejs}.tar.gz
# url = http://nodejs.org/dist/v${versions:nodejs}/node-v${versions:nodejs}.tar.gz
strip-top-level-dir = true
make-options=-j4
[npm]
recipe = collective.recipe.cmd
location=${buildout:parts-directory}/npm
on_install = true
on_update = false
cmds =
mkdir -p ${buildout:parts-directory}/npm/bin
cd ${buildout:parts-directory}/npm/bin/
ln -sf ${nodejs:location}/bin/node .
mkdir -p ${buildout:parts-directory}/npm/lib
cd ${buildout:parts-directory}/npm/lib/
ln -sf ${nodejs:location}/lib/* .
mkdir -p ${buildout:parts-directory}/npm/share
cd ${buildout:parts-directory}/npm/share/
ln -sf ${nodejs:location}/share/* .
cd ${buildout:parts-directory}/npm/
_PATH=$PATH
PATH=${buildout:parts-directory}/npm/bin:$PATH
NPM_INSTALLER=$(pwd)/install-npm.sh
[ -f $NPM_INSTALLER ] || /usr/bin/curl http://npmjs.org/install.sh -o $NPM_INSTALLER
chmod 0755 $NPM_INSTALLER
echo "yes\n"|$NPM_INSTALLER
PATH=$_PATH
[create_symlinks]
recipe = collective.recipe.cmd
on_install = true
on_update = true
dependency=${npm:recipe}
cmds =
cd ${buildout:directory}/bin
ln -sf ${nodejs:location}/bin/node .
ln -sf ${nodejs:location}/bin/node-waf .
[instance]
recipe = lovely.recipe:mkfile
path = ${buildout:bin-directory}/instance
mode = 0755
content = #!/bin/sh
${nodejs:location}/bin/node ${buildout:directory}/src/app/app.js $@
[npm-bin]
recipe = lovely.recipe:mkfile
path = ${buildout:bin-directory}/npm
mode = 0755
content = #!/bin/sh
PATH=${nodejs:location}/bin:$PATH
${npm:location}/bin/npm $@
[npm-packages]
recipe = collective.recipe.cmd
dependency=${npm-bin:recipe}
on_install = true
on_update = false
cmds =
${buildout:directory}/bin/npm install express
${buildout:directory}/bin/npm install coffee-script
${buildout:directory}/bin/npm install mustache
[coffee-bin]
recipe = lovely.recipe:mkfile
path = ${buildout:bin-directory}/coffee
mode = 0755
content = #!/bin/sh
PATH=${nodejs:location}/bin:$PATH
${nodejs:location}/bin/coffee $@
[tar-this-helper]
recipe = lovely.recipe:mkfile
path = ${buildout:bin-directory}/tar-this
mode = 0755
content = #!/bin/sh
foldername=`basename $(pwd)`
tar -czvf /tmp/$foldername.tgz \
--exclude="../$foldername/parts" \
--exclude="../$foldername/node_modules" \
--exclude="../$foldername/downloads" \
--exclude="../$foldername/var" \
--exclude="../$foldername/.installed.cfg" \
--exclude="../$foldername/bin" \
../$foldername
[supervisor]
recipe = zc.recipe.egg:script
relative-paths=true
scripts=supervisord
supervisorctl
eggs = supervisor
port = ${config:supervisord-port}
initialization = import sys
sys.argv[1:1] = ['-c', '${buildout:directory}/parts/supervisor/supervisor.conf']
[templates]
recipe = z3c.recipe.filetemplate
source-directory = template
force-overwrite = true
interpreted-options = hostname
hostname = os.uname()[1].lstrip('wlan.').split('.')[0]
[versions]
nodejs = 0.4.9
collective.recipe.cmd = 0.5
hexagonit.recipe.cmmi = 1.4.0
lovely.recipe = 1.0.0
hexagonit.recipe.download = 1.4.1
zc.recipe.egg = 1.3.2
setuptools = 0.6c12dev-r88846
supervisor = 3.0a9
z3c.recipe.filetemplate = 2.1.
meld3 = 0.6.7