KVM SR: export: use new slapos.toolbox qemu qmp wrapper.
[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
48 [http-proxy]
49 # https://github.com/nodejitsu/node-http-proxy
50 recipe = slapos.recipe.build:download-unpacked
51 #XXX-Cedric : use upstream when merged
52 url = https://nodeload.github.com/desaintmartin/node-http-proxy/zipball/20120621
53 md5sum = 20204d0b29c2cef26e1c91e99eedca6b
54
55 [proxy-by-url]
56 # https://github.com/dominictarr/proxy-by-url
57 recipe = slapos.recipe.build:download-unpacked
58 #XXX-Cedric : use upstream when merged
59 url = https://nodeload.github.com/desaintmartin/proxy-by-url/zipball/20120621
60 md5sum = c2609948aa708581f93b981b23880314
61
62 [npm-modules]
63 recipe = plone.recipe.command
64 destination = ${buildout:parts-directory}/${:_buildout_section_name_}
65 location = ${buildout:parts-directory}/${:_buildout_section_name_}
66 command =
67   export HOME=${:location};
68   rm -fr ${:destination} &&
69   mkdir -p ${:destination} &&
70   cd ${:destination} &&
71   ${nodejs:location}/bin/node ${nodejs:location}/bin/npm install colors@0.6.0-1 &&
72   ${nodejs:location}/bin/node ${nodejs:location}/bin/npm install socket.io@0.8.7 &&
73   ${nodejs:location}/bin/node ${nodejs:location}/bin/npm install socket.io-client@0.8.7 &&
74   ${nodejs:location}/bin/node ${nodejs:location}/bin/npm install optimist@0.3.1 &&
75   ${nodejs:location}/bin/node ${nodejs:location}/bin/npm install pkginfo@0.2.3
76
77
78 # Create all templates that will be used to deploy instances
79
80 [template]
81 recipe = slapos.recipe.template
82 url = ${:_profile_base_location_}/instance.cfg.in
83 #md5sum = bdd0495ef729e7272ec9c97aca919c09
84 output = ${buildout:directory}/template.cfg
85 mode = 0644
86
87 [template-kvm]
88 recipe = slapos.recipe.template
89 url = ${:_profile_base_location_}/instance-kvm.cfg.in
90 #md5sum = c3c888c78bbff334135be9e8ad5885a9
91 output = ${buildout:directory}/template-kvm.cfg
92 mode = 0644
93
94 [template-kvm-resilient]
95 recipe = hexagonit.recipe.download
96 url = ${:_profile_base_location_}/instance-kvm-resilient.cfg.jinja2
97 mode = 644
98 md5sum = 0f53856c6f981b34bbe03f6604ccdecb
99 download-only = true
100 on-update = true
101
102 [template-kvm-resilient-test]
103 recipe = hexagonit.recipe.download
104 url = ${:_profile_base_location_}/instance-kvm-resilient-test.cfg.jinja2
105 md5sum = f3ab367fb57fe3ce22b234f7b9d69b5e
106 mode = 0644
107 download-only = true
108 on-update = true
109
110 [template-kvm-import]
111 recipe = slapos.recipe.template
112 url = ${:_profile_base_location_}/instance-kvm-import.cfg.in
113 md5sum = 7b36d6c61154b7ec3113a1bfaa25a904
114 output = ${buildout:directory}/template-kvm-import.cfg
115 mode = 0644
116
117 [template-kvm-import-script]
118 recipe = hexagonit.recipe.download
119 url = ${:_profile_base_location_}/template/kvm-import.sh.in
120 filename = kvm-import.sh.in
121 md5sum = e03ed049cddd8d157228b09e1ebc071a
122 download-only = true
123 mode = 0755
124
125 [template-kvm-export]
126 recipe = slapos.recipe.template
127 url = ${:_profile_base_location_}/instance-kvm-export.cfg.in
128 md5sum = 64a1a505aff9fde52afac46240811047
129 output = ${buildout:directory}/template-kvm-export.cfg
130 mode = 0644
131
132 [template-kvm-export-script]
133 recipe = hexagonit.recipe.download
134 url = ${:_profile_base_location_}/template/kvm-export.sh.in
135 filename = kvm-export.sh.in
136 md5sum = bf03a90f6960b37cba812ee936a13342
137 download-only = true
138 mode = 0755
139
140 [template-nbd]
141 recipe = slapos.recipe.template
142 url = ${:_profile_base_location_}/instance-nbd.cfg.in
143 md5sum = f634a5249b773658b7a7bc9fa9bb0368
144 output = ${buildout:directory}/template-nbd.cfg
145 mode = 0644
146
147 [template-frontend]
148 recipe = slapos.recipe.template
149 url = ${:_profile_base_location_}/instance-frontend.cfg.in
150 md5sum = cdb690495e9eb007d2b7d2f8e12f5c59
151 output = ${buildout:directory}/template-frontend.cfg
152 mode = 0644
153