kvm: install cns.recipe.symlink
[slapos.git] / software / kvm / common.cfg
1 [buildout]
2
3 extends =
4   ../../component/6tunnel/buildout.cfg
5   ../../component/curl/buildout.cfg
6   ../../component/dash/buildout.cfg
7   ../../component/dcron/buildout.cfg
8   ../../component/gzip/buildout.cfg
9   ../../component/qemu-kvm/buildout.cfg
10   ../../component/logrotate/buildout.cfg
11   ../../component/noVNC/buildout.cfg
12   ../../component/openssl/buildout.cfg
13   ../../component/dcron/buildout.cfg
14   ../../stack/nodejs.cfg
15   ../../stack/resilient/buildout.cfg
16   ../../stack/slapos.cfg
17
18 parts =
19   template
20   eggs
21
22 # XXX: we have to manually add this for resilience
23   rdiff-backup
24   collective.recipe.template-egg
25
26 #XXX-Cedric : Currently, one can only access to KVM using noVNC.
27 #             Ideally one should be able to access KVM by using either NoVNC or VNC.
28 #             Problem is : no native crypto support in web browsers. So we have to disable ssl
29 #             In qemu builtin vnc server, and make it available only for localhost
30 #             so that only novnc can listen to it.
31
32 #XXX-Cedric: Check status of https://github.com/kanaka/noVNC/issues/13 to see
33 #            When qemu has builtin support for websockets in vnc server to get rid of
34 #            Websockify (socket <-> websocket proxy server) when it is ready.
35 #            May solve previous XXX depending on the implementation.
36
37 #XXX-Cedric : add list of keyboard layouts (azerty/us querty/...) parameter to qemu
38
39 [eggs]
40 recipe = z3c.recipe.scripts
41 eggs =
42   ${lxml-python:egg}
43   websockify
44   slapos.cookbook
45   slapos.toolbox
46   erp5.util
47   cns.recipe.symlink
48
49 [http-proxy]
50 # https://github.com/nodejitsu/node-http-proxy
51 recipe = slapos.recipe.build:download-unpacked
52 #XXX-Cedric : use upstream when merged
53 url = https://nodeload.github.com/desaintmartin/node-http-proxy/zipball/20120621
54 md5sum = 20204d0b29c2cef26e1c91e99eedca6b
55
56 [proxy-by-url]
57 # https://github.com/dominictarr/proxy-by-url
58 recipe = slapos.recipe.build:download-unpacked
59 #XXX-Cedric : use upstream when merged
60 url = https://nodeload.github.com/desaintmartin/proxy-by-url/zipball/20120621
61 md5sum = c2609948aa708581f93b981b23880314
62
63 [npm-modules]
64 recipe = plone.recipe.command
65 destination = ${buildout:parts-directory}/${:_buildout_section_name_}
66 location = ${buildout:parts-directory}/${:_buildout_section_name_}
67 command =
68   export HOME=${:location};
69   rm -fr ${:destination} &&
70   mkdir -p ${:destination} &&
71   cd ${:destination} &&
72   ${nodejs:location}/bin/node ${nodejs:location}/bin/npm install colors@0.6.0-1 &&
73   ${nodejs:location}/bin/node ${nodejs:location}/bin/npm install socket.io@0.8.7 &&
74   ${nodejs:location}/bin/node ${nodejs:location}/bin/npm install socket.io-client@0.8.7 &&
75   ${nodejs:location}/bin/node ${nodejs:location}/bin/npm install optimist@0.3.1 &&
76   ${nodejs:location}/bin/node ${nodejs:location}/bin/npm install pkginfo@0.2.3
77
78
79 # Create all templates that will be used to deploy instances
80
81 [template]
82 recipe = slapos.recipe.template
83 url = ${:_profile_base_location_}/instance.cfg.in
84 md5sum = bc5a986c7208d02d3284a897ea90b39d
85 output = ${buildout:directory}/template.cfg
86 mode = 0644
87
88 [template-kvm]
89 recipe = hexagonit.recipe.download
90 url = ${:_profile_base_location_}/instance-kvm.cfg.jinja2
91 mode = 644
92 md5sum = e16c15f72fdeb92ce1854bc25daf5ad7
93 download-only = true
94 on-update = true
95
96 [template-kvm-resilient]
97 recipe = hexagonit.recipe.download
98 url = ${:_profile_base_location_}/instance-kvm-resilient.cfg.jinja2
99 mode = 644
100 md5sum = a07c96b53fe9145278cd64a3b27a459a
101 download-only = true
102 on-update = true
103
104 [template-kvm-resilient-test]
105 recipe = hexagonit.recipe.download
106 url = ${:_profile_base_location_}/instance-kvm-resilient-test.cfg.jinja2
107 md5sum = b4894680283d3912df4e9740f3e7848b
108 mode = 0644
109 download-only = true
110 on-update = true
111
112 [template-kvm-import]
113 recipe = slapos.recipe.template
114 url = ${:_profile_base_location_}/instance-kvm-import.cfg.in
115 md5sum = 7b36d6c61154b7ec3113a1bfaa25a904
116 output = ${buildout:directory}/template-kvm-import.cfg
117 mode = 0644
118
119 [template-kvm-import-script]
120 recipe = hexagonit.recipe.download
121 url = ${:_profile_base_location_}/template/kvm-import.sh.in
122 filename = kvm-import.sh.in
123 md5sum = e03ed049cddd8d157228b09e1ebc071a
124 download-only = true
125 mode = 0755
126
127 [template-kvm-export]
128 recipe = hexagonit.recipe.download
129 url = ${:_profile_base_location_}/instance-kvm-export.cfg.jinja2
130 mode = 644
131 md5sum = 900f416956903fa4858e67e93b5169a1
132 download-only = true
133 on-update = true
134
135 [template-kvm-export-script]
136 recipe = hexagonit.recipe.download
137 url = ${:_profile_base_location_}/template/kvm-export.sh.in
138 filename = kvm-export.sh.in
139 md5sum = 95fde96f35cbf90d677c44d18b60fafb
140 download-only = true
141 mode = 0755
142
143 [template-nbd]
144 recipe = slapos.recipe.template
145 url = ${:_profile_base_location_}/instance-nbd.cfg.in
146 md5sum = f634a5249b773658b7a7bc9fa9bb0368
147 output = ${buildout:directory}/template-nbd.cfg
148 mode = 0644
149
150 [template-frontend]
151 recipe = slapos.recipe.template
152 url = ${:_profile_base_location_}/instance-frontend.cfg.in
153 md5sum = cdb690495e9eb007d2b7d2f8e12f5c59
154 output = ${buildout:directory}/template-frontend.cfg
155 mode = 0644