-
Notifications
You must be signed in to change notification settings - Fork 33
/
Copy pathdjaoapp.xml
354 lines (350 loc) · 13.5 KB
/
djaoapp.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
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
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
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
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
<?xml version="1.0" ?>
<projects>
<project name="djaoapp">
<title>djaoapp webapp</title>
<description>
Deploy prerequsites and code required to run the djaoapp webapp
in a production environment.
Note:
- CentOS 7 defaults to python2.7 with multiple prerequisites missing
a native package for Python3 (3.6) even in the EPEL repo.
</description>
<maintainer>
<personname>DjaoDjin inc.</personname>
<email>[email protected]</email>
</maintainer>
<repository>
<!-- XXX If srcTop is not *siteTop*/reps, this will not fetch
resources at the expected place. -->
<dep name="Django" target="python" includes="3.2.20">
<!-- Django>=2 requires SQLite>=3.8.3 -->
<lib>.*/(django)/core/wsgi.py</lib>
</dep>
<dep name="djangorestframework" target="python">
<lib>.*/(rest_framework)/__init__.py</lib>
</dep>
<dep name="docutils" target="python" includes="0.15.2">
<!-- botocore has a constraint: docutils<0.16 -->
<lib>.*/(docutils)/__init__.py</lib>
</dep>
<dep name="drf-spectacular" target="python">
<lib>.*/(drf_spectacular)/__init__.py</lib>
</dep>
<dep name="whitenoise" target="python">
<lib>.*/(whitenoise)/__init__.py</lib>
</dep>
<!-- XXX weird semantics when we use target="python".
It will try to create a python/dws.mk, which is
correct behavior but unexpected and troublesome
in this case. -->
<dep name="djaodjin-deployutils" target="python">
<lib>.*/(deployutils)/__init__.py</lib>
</dep>
<dep name="djaodjin-extended-templates" target="python">
<lib>.*/(extended_templates)/__init__.py</lib>
</dep>
<dep name="djaodjin-multitier" target="python">
<lib>.*/(multitier)/__init__.py</lib>
</dep>
<dep name="djaodjin-rules" target="python">
<lib>.*/(rules)/__init__.py</lib>
</dep>
<dep name="djaodjin-saas" target="python">
<lib>.*/(saas)/__init__.py</lib>
</dep>
<dep name="djaodjin-signup" target="python">
<lib>.*/(signup)/__init__.py</lib>
</dep>
<dep name="googlemaps" target="python">
<lib>.*/(googlemaps)/__init__.py</lib>
</dep>
<dep name="gunicorn" target="python" excludes="19.0,20.0.2">
<!-- gunicorn 18.0 does not send accesslog to syslog.
gunicorn 19.0 is currently broken (see github issue 787)
gunicorn 20.0.2 generates an exception -->
<bin>gunicorn</bin>
</dep>
<dep name="jinja2" target="python">
<!-- Jinja2>=2.9 will serve the first index.html file it loaded
regardless of the multitier site. -->
<lib>.*/(jinja2)/__init__.py</lib>
</dep>
<dep name="MarkupSafe" target="python">
<!-- By default version 0.11 is installed on CentOS7,
which leads to an exception attempting to use jinja2 module. -->
<lib>.*/(markupsafe)/__init__.py</lib>
</dep>
<dep name="phonenumbers" target="python">
<lib>.*/(phonenumbers)/__init__.py</lib>
</dep>
<dep name="pyOpenSSL" target="python">
<!-- couldn't find a native extension.
depends on python36-cryptography -->
<lib>.*/(OpenSSL)/__init__.py</lib>
</dep>
<dep name="python-social-auth" target="python">
<lib>.*/(social_core)/__init__.py</lib>
</dep>
<dep name="social-auth-app-django" target="python">
<lib>.*/(social_django)/__init__.py</lib>
</dep>
<!-- for development -->
<dep name="django-extensions" target="python">
<lib>.*/(django_extensions)/__init__.py</lib>
</dep>
<dep name="django-debug-panel" target="python">
<lib>.*/(debug_panel)/__init__.py</lib>
</dep>
<dep name="django-debug-toolbar" target="python" excludes="1.2.2">
<!-- XXX with 1.2.2 clicking makes the menu disappear instead
of showing information pane. -->
<lib>.*/(debug_toolbar)/__init__.py</lib>
</dep>
<dep name="sqlparse" target="python">
<!-- required by django-debug-toolbar without being a prerequisite -->
<lib>.*/(sqlparse)/__init__.py</lib>
</dep>
<dep name="drop">
<bin>dws</bin>
<share>(dws)/prefix.mk</share>
</dep>
<!-- end of for development -->
<alternates>
<alternate name="RedHat">
<!-- We rely on the `wheel` module to install pre-compiled versions
here. Since lxml is required by premailer, cryptography is
required by pyOpenSSL, they will be included transitively. -->
<dep name="billiard" target="python">
<lib>.*/(billiard)/__init__.py</lib>
</dep>
<dep name="coverage" target="python">
<bin>(coverage)3</bin>
</dep>
<dep name="openldap">
<lib>openldap.so</lib>
</dep>
<dep name="openldap-devel">
<!-- There is no version of `python-ldap` pre-compiled for Py37
so we need to include the headers. -->
<include>lber.h</include>
</dep>
<dep name="python3-devel">
<!-- `python-ldap` requires to compile a native module.
XXX We found `yum search ldap | grep python`
python36-ldap3.noarch
"Strictly RFC 4511 conforming LDAP V3 pure Python client".
to investigate.
-->
<include>.*/(python3.7m)/Python.h</include>
</dep>
<dep name="python-ldap" target="python">
<lib>.*/(ldap)/__init__.py</lib>
</dep>
<dep name="psycopg2-binary" target="python">
<!-- because we connect to postgresql and it is not automatically
pulled from Django.
There is apparently no wheel of `psycopg2` but installing
`psycopg2-binary` works.
Django2.2 is incompatible with psycopg2 2.9, use 2.8.6 then.
2.8 because Django2.2 is incompatible with psycopg2 2.9.
-->
<lib>.*/(psycopg2)/__init__.py</lib>
</dep>
<dep name="setproctitle" target="python">
<lib>.*/setproctitle.cpython-37m-x86_64-linux-gnu.so</lib>
</dep>
<!-- djaodjin-extended-templates native dependencies -->
<!-- We rely on the `wheel` module to install pre-compiled versions
here. Since pillow is required by WeasyPrint, it will be included
transitively. -->
<dep name="WeasyPrint" target="python" includes="52.5">
<!-- WeasyPrint==0.42.3 is the last version supporting Python2.
WeasyPrint>=53 requires Pango 1.44
(https://github.com/Kozea/WeasyPrint/issues/1384)
but Amazon Linux 2 comes with Pango 1.42.
-->
<lib>.*/(weasyprint)/__init__.py</lib>
</dep>
<dep name="cairocffi" target="python">
<!-- marked as a .noarch package yet will try to run gcc when
installed through pip.
CentOS7 (python-cairocffi) installs version 0.5.4 while
WeasyPrint>=0.42.3 requires cairocffi>=0.9.0. WeasyPrint
is though incompatible with cairocffi>=1.0.0 -->
<lib>.*/(cairocffi)/_generated/ffi.py</lib>
</dep>
<dep name="cairo">
<lib>cairo.so</lib>
</dep>
<dep name="pango">
<lib>pango-1.0.so</lib>
</dep>
<!-- We need to install the xmlsec1 include headers such
that the Python native module xmlsec can be built. -->
<dep name="libtool-ltdl-devel">
<!-- also required to build xmlsec python bindinds. -->
<include>ltdl.h</include>
<lib>ltdl.so</lib>
</dep>
<dep name="xmlsec1-devel">
<include>(xmlsec1)/xmlsec/version.h</include>
<!-- adds lib prefix and .* so we don't pick libxmlsec1-gcrypt.so
as a candidate -->
<lib>libxmlsec1.so.*</lib>
</dep>
<dep name="xmlsec1-openssl">
<lib>xmlsec1-openssl.so</lib>
</dep>
</alternate>
<alternate name="Darwin">
<!-- XXX impossible to find setproctitle in MacPorts -->
<dep name="py36-cryptography">
<!-- Native code (used by python-social-auth) -->
<lib>.*/(cryptography)/__init__.py</lib>
</dep>
<dep name="py36-openssl">
<lib>.*/(OpenSSL)/__init__.py</lib>
</dep>
<dep name="py36-coverage">
<bin>(coverage).*</bin>
</dep>
<dep name="py36-billiard">
<lib>.*/(billiard)/__init__.py</lib>
</dep>
<dep name="py36-lxml">
<lib>.*/(lxml)/etree.*</lib>
</dep>
<dep name="py36-psycopg2">
<!-- because we connect to postgresql and it is not automatically
pulled from Django. -->
<lib>.*/(psycopg2)/__init__.py</lib>
</dep>
<dep name="setproctitle" target="python">
<lib>.*/setproctitle.*.so</lib>
</dep>
<dep name="xmlsec1">
<lib>xmlsec1.so</lib>
</dep>
</alternate>
</alternates>
</repository>
</project>
<project name="podofo-flatform">
<title>Generates PDF from a template and key/value pairs</title>
<description>
Generates PDF from a template and key/value pairs
</description>
<maintainer>
<personname>The DjaoDjin Team</personname>
<email>[email protected]</email>
</maintainer>
<repository>
<dep name="freetype">
<lib>freetype.so</lib>
</dep>
<dep name="fontconfig">
<lib>fontconfig.so</lib>
</dep>
<dep name="libjpeg-turbo">
<!-- Fedora 21 seems to have abandonned the original JPEG library.
"libjpeg-turbo is a derivative of libjpeg that uses SIMD
instructions" as stated by macports. -->
<lib>jpeg.so</lib>
</dep>
<dep name="libidn">
<lib>idn.so</lib>
</dep>
<dep name="zlib">
<lib>z.so</lib>
</dep>
<dep name="drop">
<bin>dws</bin>
<share>(dws)/prefix.mk</share>
</dep>
<alternates>
<alternate name="RedHat">
<dep name="freetype-devel">
<!-- freetype-devel is required to compile podofo-flatfrom
on CentOS 7. Apparently it is not required or pulled through
other prerequisites on Fedora. -->
<include>(freetype)/freetype.h</include>
<lib>freetype.so</lib>
</dep>
<dep name="gcc-c++">
<bin>g++</bin>
</dep>
<dep name="openssl">
<lib>crypto.so</lib>
</dep>
<dep name="podofo-devel" excludes="0.9.1">
<!-- 0.9.1. will link but the text is not substituted in
the PDF template. Unfortunately 0.9.1. is the version
available by default on CentOS7. -->
<!-- look for PODOFO_VERSION_MAJOR, PODOFO_VERSION_MINOR
and PODOFO_VERSION_PATCH
in /usr/include/podofo/base/podofo_config.h -->
<include>(podofo)/podofo.h</include>
<lib>podofo.so</lib>
</dep>
</alternate>
<alternate name="Darwin">
<dep name="gcc">
<bin>g++</bin>
</dep>
<dep name="openssl">
<lib>crypto.so</lib>
</dep>
<dep name="podofo">
<include>(podofo)/podofo.h</include>
<lib>podofo.so</lib>
</dep>
</alternate>
</alternates>
</repository>
<package name="Amazon">
<fetch>
<url>https://www.djaodjin.com/pub/amzn2/x86_64/podofo-flatform-0.2-0.x86_64.rpm</url>
<sha1>84421a4934f4a1adb0e1226812ea01802f21c588</sha1>
</fetch>
<fetch>
<url>https://www.djaodjin.com/pub/amzn2/x86_64/podofo-libs-0.9.7-18.amzn2.x86_64.rpm</url>
<sha1>671b94d1feb08fd408b43fecfaf7a8b3eff06d6c</sha1>
</fetch>
</package>
<package name="Fedora">
<fetch>
<url>https://www.djaodjin.com/pub/fedora/linux/updates/fc25/x86_64/podofo-flatform-0.1-0.x86_64.rpm</url>
<sha1>bf9953c2bde1950c29f10fb70f1fff856f2592c1</sha1>
</fetch>
<fetch>
<url>https://www.djaodjin.com/pub/fedora/linux/updates/fc25/x86_64/podofo-libs-0.9.4-18.fc25.x86_64.rpm</url>
<sha1>e71493ebceda2d9833cb18b84d11256ee232afeb</sha1>
</fetch>
</package>
</project>
<project name="drop">
<title>inter-project dependencies tool</title>
<description>
Drop is an inter-project dependencies tool that binds functionality of source
control systems, autoconf scripts, make and package managers. Its efficiency
is measured by the time it takes to setup a random machine for code development
first and subsequently the time spent in rebuilding the source base after any
change.
</description>
<maintainer>
<personname>The DjaoDjin Team</personname>
<email>[email protected]</email>
</maintainer>
<repository>
<dep name="make">
<!-- For some reason the Python XML parser throws up a not well-formed
exception on "<3.81" -->
<bin excludes="[[0,3.81]]">make</bin>
</dep>
<dep name="git-all">
<bin>git</bin>
<share>(git-core)/templates</share>
</dep>
</repository>
</project>
</projects>