software.cfg 7.45 KB
Newer Older
1
[buildout]
2 3 4
extensions =
  buildout-versions
  
5
extends =
6
  ../../component/gzip/buildout.cfg
7
  ../../component/dcron/buildout.cfg
8
  ../../component/logrotate/buildout.cfg
9
  ../../component/git/buildout.cfg
10
  ../../component/gnutls/buildout.cfg
11
  ../../component/libpng/buildout.cfg
12 13 14
  ../../component/libuuid/buildout.cfg
  ../../component/noVNC/buildout.cfg
  ../../component/openssl/buildout.cfg
15 16
  ../../component/dash/buildout.cfg
  ../../stack/nodejs.cfg
17
  ../../stack/shacache-client.cfg
18

19 20
develop =
  ${:parts-directory}/websockify
21
  /opt/slapdev
22

Cédric de Saint Martin's avatar
Cédric de Saint Martin committed
23 24
parts =
  template
25
  dash
Cédric de Saint Martin's avatar
Cédric de Saint Martin committed
26 27
  kvm
  eggs
28
  check-local-eggs
29 30 31 32 33 34 35 36 37
  check-local-eggs2
  nodejs
  npm
  http-proxy
  proxy-by-url
  npm-modules
  dcron
  logrotate
  fail
38

39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
find-links +=
  http://www.nexedi.org/static/packages/source/slapos.buildout/

versions = versions

# Use only quite well working sites.
allow-hosts =
  *.nexedi.org
  *.python.org
  *.sourceforge.net
  alastairs-place.net
  dist.repoze.org
  effbot.org
  github.com
  peak.telecommunity.com
  psutil.googlecode.com
  www.dabeaz.com
  www.owlfish.com
57 58 59 60 61 62
  launchpad.net

# XXX: Workaround of SlapOS limitation
# Unzippig of eggs is required, as SlapOS do not yet provide nicely working
# development / fast switching environment for whole software
unzip = true
63

64 65 66 67 68 69 70 71 72 73 74 75 76
#XXX-Cedric : Currently, one can only access to KVM using noVNC.
#             Ideally one should be able to access KVM by using either NoVNC or VNC.
#             Problem is : no native crypto support in web browsers. So we have to disable ssl
#             In qemu builtin vnc server, and make it available only for localhost 
#             so that only novnc can listen to it.

#XXX-Cedric: Check status of https://github.com/kanaka/noVNC/issues/13 to see
#            When qemu has builtin support for websockets in vnc server to get rid of 
#            Websockify (socket <-> websocket proxy server) when it is ready.
#            May solve previous XXX depending on the implementation.

#XXX-Cedric: Check status of 
#            https://www.tiolive.com/nexedi/bug_module/20110819-11F4F70 for
77
#            Chrome >= 14 and Firefox >=7 can access to noVNC. (should be solved)
78

79 80 81 82
#XXX-Cedric : add list of keyboard layouts (azerty/us querty/...) parameter to qemu

[kvm]
recipe = hexagonit.recipe.cmmi
83 84 85 86 87
url = http://downloads.sourceforge.net/project/kvm/qemu-kvm/0.15.1/qemu-kvm-0.15.1.tar.gz
# XXX-Cedric : Upgrade to 1.0
# url = http://downloads.sourceforge.net/project/kvm/qemu-kvm/1.0/qemu-kvm-1.0.tar.gz
# md5sum = 00a825db46a70ba8ef9fc95da9cc7c1e
md5sum = 8800a7d6b3aa4a168ea7f78dc66c0320
88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104
configure-options =
  --disable-sdl
  --disable-xen
  --enable-vnc-tls
  --disable-vnc-sasl
  --disable-curses
  --disable-curl
  --enable-kvm
  --disable-docs
  --enable-vnc-png
  --disable-vnc-jpeg
  --extra-cflags="-I${gnutls:location}/include -I${libuuid:location}/include -I${zlib:location}/include -I${libpng:location}/include"
  --extra-ldflags="-Wl,-rpath -Wl,${glib:location}/lib -L${glib:location}/lib -Wl,-rpath -Wl,${gnutls:location}/lib -L${gnutls:location}/lib -L${gettext:location}/lib -Wl,-rpath -Wl,${gettext:location}/lib -Wl,-rpath -Wl,${libpng:location}/lib -L${libpng:location}/lib -L${libuuid:location}/lib -Wl,-rpath -Wl,${libuuid:location}/lib -L${zlib:location}/lib -Wl,-rpath -Wl,${zlib:location}/lib -lpng -lz -lgnutls"
  --disable-werror
environment =
  PATH=${pkgconfig:location}/bin:%(PATH)s
  PKG_CONFIG_PATH=${gnutls:location}/lib/pkgconfig:${glib:location}/lib/pkgconfig
105 106

[websockify]
Cédric de Saint Martin's avatar
Cédric de Saint Martin committed
107
# XXX-Cedric : use official egg from pypi when it is released
108 109
recipe = plone.recipe.command
stop-on-error = true
Cédric de Saint Martin's avatar
Cédric de Saint Martin committed
110 111
commit = e7363f43443deb9982bdb5c3db50eec475584b06
repository = https://github.com/desaintmartin/websockify.git
112
location = ${buildout:parts-directory}/${:_buildout_section_name_}
Cédric de Saint Martin's avatar
Cédric de Saint Martin committed
113
git-binary = ${git:location}/bin/git
114
command = export GIT_SSL_NO_VERIFY=true; (${:git-binary} clone --quiet ${:repository} ${:location} && cd ${:location} && ${:git-binary} reset --hard ${:commit}) || (rm -fr ${:location}; exit 1)
Cédric de Saint Martin's avatar
Cédric de Saint Martin committed
115
update-command =
116 117 118 119 120 121 122 123

[check-local-eggs]
recipe = plone.recipe.command
stop-on-error = true
update-command = ${:command}
command = grep parts ${buildout:develop-eggs-directory}/websockify.egg-link
depends = ${eggs:dummy}

124 125 126 127 128 129 130
[check-local-eggs2]
recipe = plone.recipe.command
stop-on-error = true
update-command = ${:command}
command = grep slapdev ${buildout:develop-eggs-directory}/slapos.cookbook.egg-link
depends = ${eggs:dummy}

131 132 133 134 135
[eggs]
recipe = z3c.recipe.scripts
dummy =
  ${websockify:location}
eggs =
136
#   ${lxml-python:egg}
137
  websockify
138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162
  slapos.cookbook
  slapos.toolbox

[http-proxy]
# https://github.com/nodejitsu/node-http-proxy
recipe = slapos.recipe.build:download-unpacked
#XXX-Cedric : use upstream when merged
url = https://nodeload.github.com/desaintmartin/node-http-proxy/zipball/master
md5sum = 20204d0b29c2cef26e1c91e99eedca6b

[proxy-by-url]
# https://github.com/dominictarr/proxy-by-url
recipe = slapos.recipe.build:download-unpacked
#XXX-Cedric : use upstream when merged
url = https://nodeload.github.com/desaintmartin/proxy-by-url/zipball/master
md5sum = f6a7c4f8f01f3049086a1dbde2cd141c

[npm-modules]
recipe = plone.recipe.command
destination = ${buildout:parts-directory}/${:_buildout_section_name_}
location = ${buildout:parts-directory}/${:_buildout_section_name_}
command =
  rm -fr ${:destination} &&
  mkdir -p ${:destination} &&
  cd ${:destination} &&
Cédric de Saint Martin's avatar
Cédric de Saint Martin committed
163 164 165 166 167
  ${nodejs:location}/bin/node ${npm:location}/bin/npm install colors@0.6.0-1 &&
  ${nodejs:location}/bin/node ${npm:location}/bin/npm install socket.io@0.8.7 &&
  ${nodejs:location}/bin/node ${npm:location}/bin/npm install socket.io-client@0.8.7 &&
  ${nodejs:location}/bin/node ${npm:location}/bin/npm install optimist@0.3.1 &&
  ${nodejs:location}/bin/node ${npm:location}/bin/npm install pkginfo@0.2.3
168 169 170 171 172


[template-kvm]
recipe = slapos.recipe.template
url = ${:_profile_base_location_}/instance-kvm.cfg
173
md5sum = 351d611fc7c1b210e14e14832c21752c
174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190
output = ${buildout:directory}/template-kvm.cfg
mode = 0644

[template-nbd]
recipe = slapos.recipe.template
url = ${:_profile_base_location_}/instance-nbd.cfg
md5sum = 35bb719918248a90167b9c0c6a96ce75
output = ${buildout:directory}/template-nbd.cfg
mode = 0644

[template-frontend]
recipe = slapos.recipe.template
url = ${:_profile_base_location_}/instance-frontend.cfg
md5sum = 16a28991ce59f215f11d7cc61906d64e
output = ${buildout:directory}/template-frontend.cfg
mode = 0644

191 192 193
[template]
recipe = slapos.recipe.template
url = ${:_profile_base_location_}/instance.cfg
194
md5sum = 0a98e34aaec7097a84066c0665e3a49a
195 196
output = ${buildout:directory}/template.cfg
mode = 0644
Łukasz Nowak's avatar
Łukasz Nowak committed
197 198

[versions]
199
# Use SlapOS patched zc.buildout
200
zc.buildout = 1.6.0-dev-SlapOS-004
201 202 203 204 205 206

[fail]
recipe = plone.recipe.command
stop-on-error = true
command = touch /couscous

207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224

[networkcache]
# signature certificates of the following uploaders.
#   Romain Courteaud
signature-certificate-list =
  -----BEGIN CERTIFICATE-----
  MIIB4DCCAUkCADANBgkqhkiG9w0BAQsFADA5MQswCQYDVQQGEwJGUjEZMBcGA1UE
  CBMQRGVmYXVsdCBQcm92aW5jZTEPMA0GA1UEChMGTmV4ZWRpMB4XDTExMDkxNTA5
  MDAwMloXDTEyMDkxNTA5MDAwMlowOTELMAkGA1UEBhMCRlIxGTAXBgNVBAgTEERl
  ZmF1bHQgUHJvdmluY2UxDzANBgNVBAoTBk5leGVkaTCBnzANBgkqhkiG9w0BAQEF
  AAOBjQAwgYkCgYEApYZv6OstoqNzxG1KI6iE5U4Ts2Xx9lgLeUGAMyfJLyMmRLhw
  boKOyJ9Xke4dncoBAyNPokUR6iWOcnPHtMvNOsBFZ2f7VA28em3+E1JRYdeNUEtX
  Z0s3HjcouaNAnPfjFTXHYj4um1wOw2cURSPuU5dpzKBbV+/QCb5DLheynisCAwEA
  ATANBgkqhkiG9w0BAQsFAAOBgQBCZLbTVdrw3RZlVVMFezSHrhBYKAukTwZrNmJX
  mHqi2tN8tNo6FX+wmxUUAf3e8R2Ymbdbn2bfbPpcKQ2fG7PuKGvhwMG3BlF9paEC
  q7jdfWO18Zp/BG7tagz0jmmC4y/8akzHsVlruo2+2du2freE8dK746uoMlXlP93g
  QUUGLQ==
  -----END CERTIFICATE-----