removed docservers-path support
[slapos.git] / stack / lapp / buildout.cfg
1 [buildout]
2
3 ignore-existing = true
4
5 parts =
6   slapos-cookbook
7   apache-php-postgres
8   rdiff-backup
9   dropbear
10   eggs
11   instance
12   psycopg2
13
14   instance-apache-php
15   instance-postgres
16
17 #Contains the importer and exporter recipes for postgres
18   instance-postgres-import
19   instance-postgres-export
20
21 #Contains the importer and exporter recipes for apache
22   instance-apache-import
23   instance-apache-export
24
25
26 extends =
27   ../../component/apache-php/buildout.cfg
28   ../../component/apache/buildout.cfg
29   ../../component/dash/buildout.cfg
30   ../../component/dcron/buildout.cfg
31   ../../component/gzip/buildout.cfg
32   ../../component/logrotate/buildout.cfg
33   ../../component/lxml-python/buildout.cfg
34   ../../component/postgresql/buildout.cfg
35   ../../component/rdiff-backup/buildout.cfg
36   ../../component/stunnel/buildout.cfg
37   ../../component/dropbear/buildout.cfg
38   ../resilient/buildout.cfg
39   ../slapos.cfg
40
41
42 #----------------
43 #-- Application-specific part (maarch, etc.)
44
45 [application]
46 recipe = hexagonit.recipe.download
47 # If the provided tarball does not contain top directory, this option should be changed to false
48 strip-top-level-dir = true
49
50
51 #----------------
52 #-- Instance-level buildout profiles.
53
54 [instance]
55 recipe = slapos.recipe.template
56 url = ${:_profile_base_location_}/instance.cfg.in
57 output = ${buildout:directory}/instance.cfg
58 md5sum = 25d07b5101d5f566398686642ada4cee
59 mode = 0644
60
61 [instance-apache-php]
62 recipe = slapos.recipe.template
63 url = ${:_profile_base_location_}/apache/instance-apache-php.cfg.in
64 output = ${buildout:directory}/instance-apache-php.cfg
65 md5sum = 823257dda6f3068a38c6b69c771cf307
66 mode = 0644
67
68 [instance-apache-import]
69 recipe = slapos.recipe.template
70 url = ${:_profile_base_location_}/apache/instance-apache-import.cfg.in
71 output = ${buildout:directory}/instance-apache-import.cfg
72 md5sum = f1dc2a71d362b5d2d36481ffefdd2293
73 mode = 0644
74
75 [instance-apache-export]
76 recipe = slapos.recipe.template:jinja2
77 template = ${:_profile_base_location_}/apache/instance-apache-export.cfg.jinja2
78 rendered = ${buildout:directory}/instance-apache-export.cfg
79
80 context = key templateapache instance-apache-php:output
81           key templatepbsreadyexport pbsready-export:output
82
83 import-list = file parts template-parts:destination
84               file replicated template-replicated:destination
85
86 md5sum = bdc7e126567ece6bf93a9bb493e29fac
87 mode = 0644
88
89 [instance-resilient]
90 recipe = slapos.recipe.template:jinja2
91 template = ${:_profile_base_location_}/instance-resilient.cfg.jinja2
92 rendered = ${buildout:directory}/instance-resilient.cfg
93
94 context = key buildout buildout:bin-directory
95           key develop_eggs_directory buildout:develop-eggs-directory
96           key eggs_directory buildout:eggs-directory
97
98 import-list = file parts template-parts:destination
99               file replicated template-replicated:destination
100
101 md5sum = ef38aa9810ce20960382261f235abfcd
102 mode = 0644
103
104 [instance-postgres]
105 recipe = slapos.recipe.template
106 url = ${:_profile_base_location_}/postgres/instance-postgres.cfg.in
107 output = ${buildout:directory}/instance-postgres.cfg
108 md5sum = a2370d9a23e436166b20203f66412608
109 mode = 0644
110
111 [instance-postgres-import]
112 recipe = slapos.recipe.template
113 url = ${:_profile_base_location_}/postgres/instance-postgres-import.cfg.in
114 output = ${buildout:directory}/instance-postgres-import.cfg
115 md5sum = 7edfa157ddccc27e99bf128fc1c2b9ee
116 mode = 0644
117
118 [instance-postgres-export]
119 recipe = slapos.recipe.template
120 url = ${:_profile_base_location_}/postgres/instance-postgres-export.cfg.in
121 output = ${buildout:directory}/instance-postgres-export.cfg
122 md5sum = d95205a5fc2825e9709ed6db295111e2
123 mode = 0644
124
125
126 #----------------
127 #-- Postgres driver for Python recipes.
128
129 [psycopg2-env]
130 PATH = ${postgresql:location}/bin:%(PATH)s
131
132
133 [psycopg2]
134 recipe = zc.recipe.egg:custom
135 egg = psycopg2
136 define = PSYCOPG_EXTENSIONS,PSYCOPG_DISPLAY_SIZE,PSYCOPG_NEW_BOOLEAN,HAVE_PQFREEMEM,HAVE_PQPROTOCOL3
137 environment = psycopg2-env
138 include-dirs =
139     ${postgresql:location}/include
140 library-dirs =
141     ${postgresql:location}/lib
142 rpath = 
143     ${postgresql:location}/lib
144
145
146 #----------------
147 #--
148 #-- Optional part allowing applications using this stack to run a custom
149 #-- instance.cfg at the end of Apache/PHP instance deployment.
150 #-- To use it in your application, just override those two parameters, like:
151
152 [custom-application-deployment]
153 # path = /path/to/instance-custom.cfg
154 # part-list = part1 part2
155 # See software/maarch/software.cfg for an example.
156 path =
157 part-list =
158
159 #----------------
160 #-- Dummy parts in case no application configuration file is needed
161
162 [application-template]
163 filename =
164 location =
165
166 [application-configuration]
167 location =
168
169 #----------------
170
171 [eggs]
172 recipe = zc.recipe.egg
173 eggs =
174   ${lxml-python:egg}
175   ${psycopg2:egg}
176   slapos.toolbox
177
178 [networkcache]
179 # Romain Courteaud + Sebastien Robin + Alain Takoudjou
180 # + Cedric de Saint Martin signature certificate
181 # List of signatures of uploaders we trust:
182 #   Romain Courteaud
183 #   Sebastien Robin
184 #   Kazuhiko Shiozaki
185 #   Cedric de Saint Martin
186 #   Yingjie Xu
187 #   Gabriel Monnerat
188 #   Ćukasz Nowak
189 #   Test Agent Signature
190 #   Alain Takoudjou
191 signature-certificate-list =
192   -----BEGIN CERTIFICATE-----
193   MIIB4DCCAUkCADANBgkqhkiG9w0BAQsFADA5MQswCQYDVQQGEwJGUjEZMBcGA1UE
194   CBMQRGVmYXVsdCBQcm92aW5jZTEPMA0GA1UEChMGTmV4ZWRpMB4XDTExMDkxNTA5
195   MDAwMloXDTEyMDkxNTA5MDAwMlowOTELMAkGA1UEBhMCRlIxGTAXBgNVBAgTEERl
196   ZmF1bHQgUHJvdmluY2UxDzANBgNVBAoTBk5leGVkaTCBnzANBgkqhkiG9w0BAQEF
197   AAOBjQAwgYkCgYEApYZv6OstoqNzxG1KI6iE5U4Ts2Xx9lgLeUGAMyfJLyMmRLhw
198   boKOyJ9Xke4dncoBAyNPokUR6iWOcnPHtMvNOsBFZ2f7VA28em3+E1JRYdeNUEtX
199   Z0s3HjcouaNAnPfjFTXHYj4um1wOw2cURSPuU5dpzKBbV+/QCb5DLheynisCAwEA
200   ATANBgkqhkiG9w0BAQsFAAOBgQBCZLbTVdrw3RZlVVMFezSHrhBYKAukTwZrNmJX
201   mHqi2tN8tNo6FX+wmxUUAf3e8R2Ymbdbn2bfbPpcKQ2fG7PuKGvhwMG3BlF9paEC
202   q7jdfWO18Zp/BG7tagz0jmmC4y/8akzHsVlruo2+2du2freE8dK746uoMlXlP93g
203   QUUGLQ==
204   -----END CERTIFICATE-----
205   -----BEGIN CERTIFICATE-----
206   MIIB8jCCAVugAwIBAgIJAPu2zchZ2BxoMA0GCSqGSIb3DQEBBQUAMBIxEDAOBgNV
207   BAMMB3RzeGRldjMwHhcNMTExMDE0MTIxNjIzWhcNMTIxMDEzMTIxNjIzWjASMRAw
208   DgYDVQQDDAd0c3hkZXYzMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCrPbh+
209   YGmo6mWmhVb1vTqX0BbeU0jCTB8TK3i6ep3tzSw2rkUGSx3niXn9LNTFNcIn3MZN
210   XHqbb4AS2Zxyk/2tr3939qqOrS4YRCtXBwTCuFY6r+a7pZsjiTNddPsEhuj4lEnR
211   L8Ax5mmzoi9nE+hiPSwqjRwWRU1+182rzXmN4QIDAQABo1AwTjAdBgNVHQ4EFgQU
212   /4XXREzqBbBNJvX5gU8tLWxZaeQwHwYDVR0jBBgwFoAU/4XXREzqBbBNJvX5gU8t
213   LWxZaeQwDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0BAQUFAAOBgQA07q/rKoE7fAda
214   FED57/SR00OvY9wLlFEF2QJ5OLu+O33YUXDDbGpfUSF9R8l0g9dix1JbWK9nQ6Yd
215   R/KCo6D0sw0ZgeQv1aUXbl/xJ9k4jlTxmWbPeiiPZEqU1W9wN5lkGuLxV4CEGTKU
216   hJA/yXa1wbwIPGvX3tVKdOEWPRXZLg==
217   -----END CERTIFICATE-----
218   -----BEGIN CERTIFICATE-----
219   MIIB7jCCAVegAwIBAgIJAJWA0jQ4o9DGMA0GCSqGSIb3DQEBBQUAMA8xDTALBgNV
220   BAMMBHg2MXMwIBcNMTExMTI0MTAyNDQzWhgPMjExMTEwMzExMDI0NDNaMA8xDTAL
221   BgNVBAMMBHg2MXMwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBANdJNiFsRlkH
222   vq2kHP2zdxEyzPAWZH3CQ3Myb3F8hERXTIFSUqntPXDKXDb7Y/laqjMXdj+vptKk
223   3Q36J+8VnJbSwjGwmEG6tym9qMSGIPPNw1JXY1R29eF3o4aj21o7DHAkhuNc5Tso
224   67fUSKgvyVnyH4G6ShQUAtghPaAwS0KvAgMBAAGjUDBOMB0GA1UdDgQWBBSjxFUE
225   RfnTvABRLAa34Ytkhz5vPzAfBgNVHSMEGDAWgBSjxFUERfnTvABRLAa34Ytkhz5v
226   PzAMBgNVHRMEBTADAQH/MA0GCSqGSIb3DQEBBQUAA4GBAFLDS7zNhlrQYSQO5KIj
227   z2RJe3fj4rLPklo3TmP5KLvendG+LErE2cbKPqnhQ2oVoj6u9tWVwo/g03PMrrnL
228   KrDm39slYD/1KoE5kB4l/p6KVOdeJ4I6xcgu9rnkqqHzDwI4v7e8/D3WZbpiFUsY
229   vaZhjNYKWQf79l6zXfOvphzJ
230   -----END CERTIFICATE-----
231   -----BEGIN CERTIFICATE-----
232   MIIB9jCCAV+gAwIBAgIJAO4V/jiMoICoMA0GCSqGSIb3DQEBBQUAMBMxETAPBgNV
233   BAMMCENPTVAtMjMyMCAXDTEyMDIxNjExMTAyM1oYDzIxMTIwMTIzMTExMDIzWjAT
234   MREwDwYDVQQDDAhDT01QLTIzMjCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA
235   wi/3Z8W9pUiegUXIk/AiFDQ0UJ4JFAwjqr+HSRUirlUsHHT+8DzH/hfcTDX1I5BB
236   D1ADk+ydXjMm3OZrQcXjn29OUfM5C+g+oqeMnYQImN0DDQIOcUyr7AJc4xhvuXQ1
237   P2pJ5NOd3tbd0kexETa1LVhR6EgBC25LyRBRae76qosCAwEAAaNQME4wHQYDVR0O
238   BBYEFMDmW9aFy1sKTfCpcRkYnP6zUd1cMB8GA1UdIwQYMBaAFMDmW9aFy1sKTfCp
239   cRkYnP6zUd1cMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADgYEAskbFizHr
240   b6d3iIyN+wffxz/V9epbKIZVEGJd/6LrTdLiUfJPec7FaxVCWNyKBlCpINBM7cEV
241   Gn9t8mdVQflNqOlAMkOlUv1ZugCt9rXYQOV7rrEYJBWirn43BOMn9Flp2nibblby
242   If1a2ZoqHRxoNo2yTmm7TSYRORWVS+vvfjY=
243   -----END CERTIFICATE-----
244   -----BEGIN CERTIFICATE-----
245   MIIB9jCCAV+gAwIBAgIJAIlBksrZVkK8MA0GCSqGSIb3DQEBBQUAMBMxETAPBgNV
246   BAMMCENPTVAtMzU3MCAXDTEyMDEyNjEwNTUyOFoYDzIxMTIwMTAyMTA1NTI4WjAT
247   MREwDwYDVQQDDAhDT01QLTM1NzCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA
248   ts+iGUwi44vtIfwXR8DCnLtHV4ydl0YTK2joJflj0/Ws7mz5BYkxIU4fea/6+VF3
249   i11nwBgYgxQyjNztgc9u9O71k1W5tU95yO7U7bFdYd5uxYA9/22fjObaTQoC4Nc9
250   mTu6r/VHyJ1yRsunBZXvnk/XaKp7gGE9vNEyJvPn2bkCAwEAAaNQME4wHQYDVR0O
251   BBYEFKuGIYu8+6aEkTVg62BRYaD11PILMB8GA1UdIwQYMBaAFKuGIYu8+6aEkTVg
252   62BRYaD11PILMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADgYEAMoTRpBxK
253   YLEZJbofF7gSrRIcrlUJYXfTfw1QUBOKkGFFDsiJpEg4y5pUk1s5Jq9K3SDzNq/W
254   it1oYjOhuGg3al8OOeKFrU6nvNTF1BAvJCl0tr3POai5yXyN5jlK/zPfypmQYxE+
255   TaqQSGBJPVXYt6lrq/PRD9ciZgKLOwEqK8w=
256   -----END CERTIFICATE-----
257   -----BEGIN CERTIFICATE-----
258   MIIB9jCCAV+gAwIBAgIJAPHoWu90gbsgMA0GCSqGSIb3DQEBBQUAMBQxEjAQBgNV
259   BAMMCXZpZmlibm9kZTAeFw0xMjAzMTkyMzIwNTVaFw0xMzAzMTkyMzIwNTVaMBQx
260   EjAQBgNVBAMMCXZpZmlibm9kZTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA
261   ozBijpO8PS5RTeKTzA90vi9ezvv4vVjNaguqT4UwP9+O1+i6yq1Y2W5zZxw/Klbn
262   oudyNzie3/wqs9VfPmcyU9ajFzBv/Tobm3obmOqBN0GSYs5fyGw+O9G3//6ZEhf0
263   NinwdKmrRX+d0P5bHewadZWIvlmOupcnVJmkks852BECAwEAAaNQME4wHQYDVR0O
264   BBYEFF9EtgfZZs8L2ZxBJxSiY6eTsTEwMB8GA1UdIwQYMBaAFF9EtgfZZs8L2ZxB
265   JxSiY6eTsTEwMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADgYEAc43YTfc6
266   baSemaMAc/jz8LNLhRE5dLfLOcRSoHda8y0lOrfe4lHT6yP5l8uyWAzLW+g6s3DA
267   Yme/bhX0g51BmI6gjKJo5DoPtiXk/Y9lxwD3p7PWi+RhN+AZQ5rpo8UfwnnN059n
268   yDuimQfvJjBFMVrdn9iP6SfMjxKaGk6gVmI=
269   -----END CERTIFICATE-----
270   -----BEGIN CERTIFICATE-----
271   MIIB9jCCAV+gAwIBAgIJAMNZBmoIOXPBMA0GCSqGSIb3DQEBBQUAMBMxETAPBgNV
272   BAMMCENPTVAtMTMyMCAXDTEyMDUwMjEyMDQyNloYDzIxMTIwNDA4MTIwNDI2WjAT
273   MREwDwYDVQQDDAhDT01QLTEzMjCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA
274   6peZQt1sAmMAmSG9BVxxcXm8x15kE9iAplmANYNQ7z2YO57c10jDtlYlwVfi/rct
275   xNUOKQtc8UQtV/fJWP0QT0GITdRz5X/TkWiojiFgkopza9/b1hXs5rltYByUGLhg
276   7JZ9dZGBihzPfn6U8ESAKiJzQP8Hyz/o81FPfuHCftsCAwEAAaNQME4wHQYDVR0O
277   BBYEFNuxsc77Z6/JSKPoyloHNm9zF9yqMB8GA1UdIwQYMBaAFNuxsc77Z6/JSKPo
278   yloHNm9zF9yqMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADgYEAl4hBaJy1
279   cgiNV2+Z5oNTrHgmzWvSY4duECOTBxeuIOnhql3vLlaQmo0p8Z4c13kTZq2s3nhd
280   Loe5mIHsjRVKvzB6SvIaFUYq/EzmHnqNdpIGkT/Mj7r/iUs61btTcGUCLsUiUeci
281   Vd0Ozh79JSRpkrdI8R/NRQ2XPHAo+29TT70=
282   -----END CERTIFICATE-----
283   -----BEGIN CERTIFICATE-----
284   MIIB9jCCAV+gAwIBAgIJAKRvzcy7OH0UMA0GCSqGSIb3DQEBBQUAMBMxETAPBgNV
285   BAMMCENPTVAtNzcyMCAXDTEyMDgxMDE1NDI1MVoYDzIxMTIwNzE3MTU0MjUxWjAT
286   MREwDwYDVQQDDAhDT01QLTc3MjCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA
287   o7aipd6MbnuGDeR1UJUjuMLQUariAyQ2l2ZDS6TfOwjHiPw/mhzkielgk73kqN7A
288   sUREx41eTcYCXzTq3WP3xCLE4LxLg1eIhd4nwNHj8H18xR9aP0AGjo4UFl5BOMa1
289   mwoyBt3VtfGtUmb8whpeJgHhqrPPxLoON+i6fIbXDaUCAwEAAaNQME4wHQYDVR0O
290   BBYEFEfjy3OopT2lOksKmKBNHTJE2hFlMB8GA1UdIwQYMBaAFEfjy3OopT2lOksK
291   mKBNHTJE2hFlMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADgYEAaNRx6YN2
292   M/p3R8/xS6zvH1EqJ3FFD7XeAQ52WuQnKSREzuw0dsw12ClxjcHiQEFioyTiTtjs
293   5pW18Ry5Ie7iFK4cQMerZwWPxBodEbAteYlRsI6kePV7Gf735Y1RpuN8qZ2sYL6e
294   x2IMeSwJ82BpdEI5niXxB+iT0HxhmR+XaMI=
295   -----END CERTIFICATE-----
296   -----BEGIN CERTIFICATE-----
297   MIIB9DCCAV2gAwIBAgIJAL392bEdqpFQMA0GCSqGSIb3DQEBBQUAMBMxETAPBgNV
298   BAMMCENPTVAtMjM0MB4XDTExMTEwOTE1MzA0M1oXDTEyMTEwODE1MzA0M1owEzER
299   MA8GA1UEAwwIQ09NUC0yMzQwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAMRR
300   T0cacZKztie/DaRRjq3mgcqfPKoGXu6zXmeRQI+6Y4bnzjf8h/jAuPzR552P0xK5
301   psxhavXA8hOGRLFDtvDMQLepVHWfwqtFtcp5vNf2+KWqOYy0OxHfVIlnatvCqTZN
302   NG1vRsSOAQ+v7QNFHh6NBbiSrjBBfg4vkfzqnsUvAgMBAAGjUDBOMB0GA1UdDgQW
303   BBTGGw+ASoDi9kqPElDkC0Q5RtAfRjAfBgNVHSMEGDAWgBTGGw+ASoDi9kqPElDk
304   C0Q5RtAfRjAMBgNVHRMEBTADAQH/MA0GCSqGSIb3DQEBBQUAA4GBAIOuR1OqXLke
305   LLzH0kRnlIOe60dYJvRya53wDx5x2g4/qkXZPLx2RcbaUrX/SCbL70vfr+apUPss
306   dOSJ86sf/PQHW3/1fhTTE+Vck1MiiAq0aIx6WnKnz4+ZcQctB7b0DCsTcQnmbpi2
307   n9MuhWaT21VOYhIGzJFPw5XW47/RrwhR
308   -----END CERTIFICATE-----
309
310
311 [versions]
312 Jinja2 = 2.6
313 Werkzeug = 0.8.3
314 apache-libcloud = 0.11.4
315 async = 0.6.1
316 buildout-versions = 1.7
317 gitdb = 0.5.4
318 hexagonit.recipe.cmmi = 1.6
319 inotifyx = 0.2.0
320 lxml = 3.0.2
321 meld3 = 0.6.10
322 netaddr = 0.7.10
323 psycopg2 = 2.4.6
324 pycrypto = 2.6
325 pytz = 2012h
326 rdiff-backup = 1.0.5
327 slapos.cookbook = 0.72.0
328 slapos.recipe.download = 1.0.dev-r4053
329 slapos.recipe.template = 2.4.2
330 smmap = 0.8.2
331
332 # Required by:
333 # slapos.core==0.33.2-dev
334 # slapos.toolbox==0.32.1-dev
335 Flask = 0.9
336
337 # Required by:
338 # slapos.toolbox==0.32.1-dev
339 GitPython = 0.3.2.RC1
340
341 # Required by:
342 # slapos.toolbox==0.32.1-dev
343 atomize = 0.1.1
344
345 # Required by:
346 # slapos.toolbox==0.32.1-dev
347 feedparser = 5.1.3
348
349 # Required by:
350 # hexagonit.recipe.cmmi==1.6
351 hexagonit.recipe.download = 1.6nxd002
352
353 # Required by:
354 # slapos.core==0.33.2-dev
355 netifaces = 0.8
356
357 # Required by:
358 # slapos.toolbox==0.32.1-dev
359 paramiko = 1.9.0
360
361 # Required by:
362 # slapos.toolbox==0.32.1-dev
363 psutil = 0.6.1
364
365 # Required by:
366 # slapos.core==0.33.2-dev
367 pyflakes = 0.5.0
368
369 # Required by:
370 # slapos.cookbook==0.70.1-dev
371 # slapos.core==0.33.2-dev
372 # slapos.toolbox==0.32.1-dev
373 # supervisor==3.0b1
374 # zc.buildout==1.6.0-dev-SlapOS-010
375 # zope.interface==4.0.2
376 setuptools = 0.6c12dev-r88846
377
378 # Required by:
379 # slapos.core==0.33.2-dev
380 supervisor = 3.0b1
381
382 # Required by:
383 # slapos.toolbox==0.32.1-dev
384 xml-marshaller = 0.9.7
385
386 # Required by:
387 # slapos.core==0.33.2-dev
388 zope.interface = 4.0.2
389
390 cp.recipe.cmd = 0.4
391 plone.recipe.command = 1.1
392 slapos.recipe.build = 0.11.5
393 slapos.toolbox = 0.33
394
395 # Required by:
396 # slapos.toolbox==0.33
397 slapos.core = 0.35
398
399 # Required by:
400 # slapos.core==0.35
401 unittest2 = 0.5.1
402
403 # Required by:
404 # zope.testing==4.1.1
405 zope.exceptions = 4.0.5
406
407 # Required by:
408 # cp.recipe.cmd==0.4
409 zope.testing = 4.1.1
410