software.cfg 8.73 KB
Newer Older
1 2 3 4 5
[buildout]

extends =
  ../../component/bcrypt/buildout.cfg
  ../../component/curl/buildout.cfg
6
  ../../component/openssl/buildout.cfg
7
  ../../component/git/buildout.cfg
8
  ../../component/faketime/buildout.cfg
9 10
  ../../component/pillow/buildout.cfg
  ../../component/python-cryptography/buildout.cfg
11
  ../../component/python-mysqlclient/buildout.cfg
12
  ../../component/python-pynacl/buildout.cfg
13
  ../../component/python-backports-lzma/buildout.cfg
14 15

  ../../stack/slapos.cfg
16
  ../../stack/nxdtest.cfg
17 18 19 20

  ./buildout.hash.cfg

parts =
21
  eggs/scripts
22
  slapos-cookbook
23 24
  template

25 26
shared-part-list =

27 28 29
[setup-develop-egg]
recipe = zc.recipe.egg:develop

30 31
[slapos.cookbook-setup]
<= setup-develop-egg
32
egg = slapos.cookbook[test]
33 34
setup = ${slapos-repository:location}/

35 36 37 38 39
[slapos.test.backupserver-setup]
<= setup-develop-egg
egg = slapos.test.backupserver
setup = ${slapos-repository:location}/software/backupserver/test/

40 41 42 43 44 45 46 47 48 49
[slapos.test.caddy-frontend-setup]
<= setup-develop-egg
egg = slapos.test.caddy-frontend
setup = ${slapos-repository:location}/software/caddy-frontend/test/

[slapos.test.erp5-setup]
<= setup-develop-egg
egg = slapos.test.erp5
setup = ${slapos-repository:location}/software/erp5/test/

50 51 52 53 54
[slapos.test.htmlvalidatorserver-setup]
<= setup-develop-egg
egg = slapos.test.htmlvalidatorserver
setup = ${slapos-repository:location}/software/htmlvalidatorserver/test/

55 56 57 58 59
[slapos.test.slapos-master-setup]
<= setup-develop-egg
egg = slapos.test.slapos-master
setup = ${slapos-repository:location}/software/slapos-master/test/

60 61 62 63 64
[slapos.test.jstestnode-setup]
<= setup-develop-egg
egg = slapos.test.jstestnode
setup = ${slapos-repository:location}/software/jstestnode/test/

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
[slapos.test.kvm-setup]
<= setup-develop-egg
egg = slapos.test.kvm
setup = ${slapos-repository:location}/software/kvm/test/

[slapos.test.monitor-setup]
<= setup-develop-egg
egg = slapos.test.monitor
setup = ${slapos-repository:location}/software/monitor/test/

[slapos.test.plantuml-setup]
<= setup-develop-egg
egg = slapos.test.plantuml
setup = ${slapos-repository:location}/software/plantuml/test/

[slapos.test.powerdns-setup]
<= setup-develop-egg
egg = slapos.test.powerdns
setup = ${slapos-repository:location}/software/powerdns/test/

[slapos.test.proftpd-setup]
<= setup-develop-egg
egg = slapos.test.proftpd
setup = ${slapos-repository:location}/software/proftpd/test/

[slapos.test.re6stnet-setup]
<= setup-develop-egg
egg = slapos.test.re6stnet
setup = ${slapos-repository:location}/software/re6stnet/test/

[slapos.test.seleniumserver-setup]
<= setup-develop-egg
egg = slapos.test.seleniumserver
setup = ${slapos-repository:location}/software/seleniumserver/test/

[slapos.test.slaprunner-setup]
<= setup-develop-egg
egg = slapos.test.slaprunner
setup = ${slapos-repository:location}/software/slaprunner/test/

105 106 107 108 109
[slapos.test.metabase-setup]
<= setup-develop-egg
egg = slapos.test.metabase
setup = ${slapos-repository:location}/software/metabase/test/

110 111 112 113 114
[slapos.test.helloworld-setup]
<= setup-develop-egg
egg = slapos.test.helloworld
setup = ${slapos-repository:location}/software/helloworld/test/

115 116 117 118 119
[slapos.test.jupyter-setup]
<= setup-develop-egg
egg = slapos.test.jupyter
setup = ${slapos-repository:location}/software/jupyter/test/

120 121 122 123 124
[slapos.test.nextcloud-setup]
<= setup-develop-egg
egg = slapos.test.nextcloud
setup = ${slapos-repository:location}/software/nextcloud/test/

125 126
[slapos.test.turnserver-setup]
<= setup-develop-egg
127
egg = slapos.test.turnserver
128 129
setup = ${slapos-repository:location}/software/turnserver/test/

130 131 132 133 134
[slapos.test.theia-setup]
<= setup-develop-egg
egg = slapos.test.theia
setup = ${slapos-repository:location}/software/theia/test/

135 136 137 138 139
[slapos.test.grafana-setup]
<= setup-develop-egg
egg = slapos.test.grafana
setup = ${slapos-repository:location}/software/grafana/test/

140 141 142 143 144
[slapos.test.gitlab-setup]
<= setup-develop-egg
egg = slapos.test.gitlab
setup = ${slapos-repository:location}/software/gitlab/test/

145 146 147 148 149
[slapos.test.cloudooo-setup]
<= setup-develop-egg
egg = slapos.test.cloudooo
setup = ${slapos-repository:location}/software/cloudooo/test/

150 151 152 153 154
[slapos.test.dream-setup]
<= setup-develop-egg
egg = slapos.test.dream
setup = ${slapos-repository:location}/software/dream/test/

155 156 157 158 159
[slapos.test.repman-setup]
<= setup-develop-egg
egg = slapos.test.repman
setup = ${slapos-repository:location}/software/repman/test/

160 161
[slapos.core-repository]
<= git-clone-repository
162
repository = https://lab.nexedi.com/nexedi/slapos.core.git
163 164 165 166 167 168 169
branch = master

[slapos.core-setup]
<= setup-develop-egg
egg = slapos.core
setup = ${slapos.core-repository:location}

170 171 172
[python-interpreter]
eggs += ${:extra-eggs}
extra-eggs =
173 174
  ${lxml-python:egg}
  ${slapos.core-setup:egg}
175
  ${pillow-python:egg}
176
  erp5.util
177 178
  ${python-pynacl:egg}
  ${python-cryptography:egg}
179
  ${python-mysqlclient:egg}
180
  ${backports.lzma:egg}
181
  ${bcrypt:egg}
182
  slapos.libnetworkcache
183
  supervisor
184
  ${slapos.cookbook-setup:egg}
185
  ${slapos.test.backupserver-setup:egg}
186 187
  ${slapos.test.caddy-frontend-setup:egg}
  ${slapos.test.erp5-setup:egg}
188
  ${slapos.test.htmlvalidatorserver-setup:egg}
189
  ${slapos.test.slapos-master-setup:egg}
190
  ${slapos.test.jstestnode-setup:egg}
191 192 193 194 195 196 197
  ${slapos.test.kvm-setup:egg}
  ${slapos.test.monitor-setup:egg}
  ${slapos.test.powerdns-setup:egg}
  ${slapos.test.proftpd-setup:egg}
  ${slapos.test.re6stnet-setup:egg}
  ${slapos.test.seleniumserver-setup:egg}
  ${slapos.test.slaprunner-setup:egg}
198
  ${slapos.test.jupyter-setup:egg}
199
  ${slapos.test.nextcloud-setup:egg}
200
  ${slapos.test.turnserver-setup:egg}
201
  ${slapos.test.theia-setup:egg}
202
  ${slapos.test.cloudooo-setup:egg}
203
  ${slapos.test.dream-setup:egg}
204
  ${slapos.test.metabase-setup:egg}
205
  ${slapos.test.repman-setup:egg}
206 207 208 209 210

# We don't name this interpreter `python`, so that when we run slapos node
# software, installation scripts running `python` use a python without any
# custom eggs pre-installed, not our special python interpreter.
interpreter = python_for_test
211

Gabriel Monnerat's avatar
Gabriel Monnerat committed
212 213 214 215 216
# patches for eggs
patch-binary = ${patch:location}/bin/patch
PyPDF2-patches = ${:_profile_base_location_}/../../component/egg-patch/PyPDF2/0001-Custom-implementation-of-warnings.formatwarning-remo.patch#d25bb0f5dde7f3337a0a50c2f986f5c8
PyPDF2-patch-options = -p1

217 218
[eggs/scripts]
recipe = zc.recipe.egg
219
eggs = ${python-interpreter:eggs}
220 221 222 223
scripts =
  slapos
  supervisord

224 225 226 227 228 229 230 231 232 233 234
[git-clone-repository]
recipe = slapos.recipe.build:gitclone
git-executable = ${git:location}/bin/git
forbid-download-cache = true

[slapos-repository]
<= git-clone-repository
repository = https://lab.nexedi.com/nexedi/slapos.git
branch = master

[template]
235 236
recipe = slapos.recipe.template:jinja2
template = ${:_profile_base_location_}/${:filename}
237
extensions = jinja2.ext.do
238
rendered = ${buildout:directory}/template.cfg
239
mode = 640
240 241
context =
  section buildout buildout
242
  import os os
243
  key nxdtest_instance nxdtest-instance.cfg:rendered
244 245
  key git_location git:location
  key slapos_location slapos-repository:location
246
  key interpreter python-interpreter:interpreter
247
  key curl_location curl:location
248
  key openssl_location openssl-output:bin
249
  key faketime_location faketime:location
250
  key tests :tests
251

252
tests =
253 254 255 256
  json-schemas ${slapos.cookbook-setup:setup}
  kvm ${slapos.test.kvm-setup:setup}
  slaprunner ${slapos.test.slaprunner-setup:setup}
  metabase ${slapos.test.metabase-setup:setup}
257 258
  ${:extra}
extra =
259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274
  backupserver ${slapos.test.backupserver-setup:setup}
  caddy-frontend ${slapos.test.caddy-frontend-setup:setup}
  erp5 ${slapos.test.erp5-setup:setup}
  htmlvalidatorserver ${slapos.test.htmlvalidatorserver-setup:setup}
  slapos-master ${slapos.test.slapos-master-setup:setup}
  re6stnet ${slapos.test.re6stnet-setup:setup}
  seleniumserver ${slapos.test.seleniumserver-setup:setup}
  jstestnode ${slapos.test.jstestnode-setup:setup}
  jupyter ${slapos.test.jupyter-setup:setup}
  nextcloud ${slapos.test.nextcloud-setup:setup}
  turnserver ${slapos.test.turnserver-setup:setup}
  theia ${slapos.test.theia-setup:setup}
  grafana ${slapos.test.grafana-setup:setup}
  gitlab ${slapos.test.gitlab-setup:setup}
  cloudooo ${slapos.test.cloudooo-setup:setup}
  dream ${slapos.test.dream-setup:setup}
275 276

[versions]
277 278
# slapos.core is used from the clone always
slapos.core =
279 280 281 282 283 284 285 286
# Various needed versions
Pillow = 5.3.0
PyNaCl = 1.3.0
bcrypt = 3.1.4
forcediphttpsadapter = 1.0.1
httplib2 = 0.11.3
image = 1.5.25
paramiko = 2.4.2
287
plantuml = 0.3.0
288 289 290
pysftp = 0.2.9
requests-toolbelt = 0.8.0
selenium = 3.141.0
291
slapos.recipe.template = 4.4
292

Gabriel Monnerat's avatar
Gabriel Monnerat committed
293 294 295
# Patched eggs
PyPDF2 = 1.26.0+SlapOSPatched001

296 297 298 299 300 301 302 303 304 305 306 307 308 309
# modern versions for SSL fixed support
requests = 2.20.0
certifi = 2018.10.15
idna = 2.7
chardet = 3.0.4

# ipaddress is patching IPAddress so IPv6 match works
ipaddress = 1.0.22

# cacuase and its dependencies
caucase = 0.9.4
pem = 18.2.0
PyJWT = 1.6.4

310 311 312 313 314 315
# Django 1.11 is python 2 compatible
Django = 1.11

# Required by:
# selenium==3.141.0
urllib3 = 1.24.1
316

317 318
mock = 2.0.0
testfixtures = 6.11
319
funcsigs = 1.0.2
320 321 322
mysqlclient = 1.3.12
pexpect = 4.8.0
ptyprocess = 0.6.0
323
typing = 3.7.4.3